One command. Infinite memory. Perfect recall across all your AI tools.
npx @verygoodplugins/mcp-automem installYour AI assistant now remembers everything. Forever. Across every conversation.
installer-demo.mp4
The guided installer — npx @verygoodplugins/mcp-automem install walks you through local, hosted, or existing-endpoint setup.
Works with Claude Desktop, Cursor IDE, Claude Code, GitHub Copilot (coding agent), ChatGPT, ElevenLabs, OpenAI Codex, OpenClaw, Hermes, Grok Build, Google Antigravity - any MCP-compatible AI platform.
Every AI conversation starts from zero. Claude forgets your coding style. Cursor can't learn your patterns. Your assistant doesn't remember yesterday's decisions.
Until now.
AutoMem MCP connects your AI to persistent memory powered by AutoMem - a graph-vector memory service.
- AI remembers decisions, patterns, and context forever
- Works across all MCP platforms - Claude Desktop, Cursor, Claude Code, OpenAI Codex, OpenClaw, Hermes, Grok Build, Google Antigravity
- Cross-device sync - same memory on Mac, Windows, Linux
- 11 public authorable relationship types between memories (recall results may also include read-only system/internal relations that are not valid
associate_memoriesinputs) - Research-validated approach (HippoRAG 2: 7% better associative memory)
- Sub-second retrieval even with millions of memories
| Platform | Support | Setup Time |
|---|---|---|
| Claude Desktop | ✅ Full | 30 seconds |
| Cursor IDE | ✅ Full | 30 seconds |
| Claude Code | ✅ Full | 30 seconds |
| GitHub Copilot | ✅ Full | 2 minutes |
| OpenAI Codex | ✅ Full | 30 seconds |
| OpenClaw | ✅ Full | 30 seconds |
| Hermes Agent | ✅ Full | 30 seconds |
| Grok Build | ✅ Full | 30 seconds |
| Google Antigravity | ✅ Full | 30 seconds |
| Any MCP client | ✅ Full | 30 seconds |
Claude automatically recalls memories using the Personal Preferences template
Cursor uses AutoMem project rules to recall context and save durable memories during work
Session-start recall plus LLM-judged storage: Claude decides what's durable and stores it via the memory tools
More platform walkthroughs (Codex, Hermes, Antigravity, remote MCP) live in the Installation Guide.
You need a running AutoMem service (the memory backend). Choose one:
Option A: Local Development (fastest, free)
git clone https://github.com/verygoodplugins/automem.git
cd automem
make devService runs at http://localhost:8001 - perfect for single-machine use.
Option B: Railway Cloud (recommended for production)
One-click deploy with $5 free credits. Typical cost: ~$0.50-1/month after trial.
👉 AutoMem Service Installation Guide - Complete setup instructions for local, Railway, Docker, and production deployments.
Download the extension, then open Settings → Extensions → Advanced settings → Install Extension in Claude Desktop and select the file:
⬇️ Download AutoMem for Claude Desktop (.mcpb)
After installing:
- Claude Desktop will prompt you for your AutoMem API URL (
http://127.0.0.1:8001for local) - Optionally enter your API Key (required for Railway, skip for local)
- Click Enable
The bundle includes a fixed version of the MCP server. To update, download and install the latest .mcpb again; restarting Claude or updating the npm package does not upgrade an installed bundle. See updating Claude Desktop for version checks and migration from JSON configuration. The AutoMem backend runs separately.
Then add the paste-ready Personal Preferences starter from templates/CLAUDE_DESKTOP_INSTRUCTIONS.md. That's it: Claude now has persistent memory and knows when to use it.
Connect your AI tools to the AutoMem service you just started.
# Guided install - pick where AutoMem runs, verify it, write .env, and
# configure your agents (Codex, Claude Code, Cursor, OpenClaw, Hermes)
npx @verygoodplugins/mcp-automem installEvery change is shown in a review plan before anything is written, and each
modified file keeps a .bak backup. Add --dry-run to preview, --yes to
apply non-interactively. See the Installation Guide
for all flags.
setup is an alias of install. To print config snippets again later, use npx @verygoodplugins/mcp-automem config.
For Claude Code (plugin — recommended):
# In Claude Code:
/plugin marketplace add verygoodplugins/mcp-automem
/plugin install automem@verygoodplugins-mcp-automem
Claude Code prompts for your AutoMem URL and API key at enable time, bundles the MCP server and silent recall/store-tracking hooks, and auto-updates. Prefer hooks and permissions written directly into ~/.claude/ instead? Run npx @verygoodplugins/mcp-automem claude-code.
On Windows, the hook payload assumes a POSIX shell environment such as Git Bash, MSYS2, or WSL — only bash is required (the hooks are pure bash+sed).
For Cursor IDE:
Run the guided installer from your project and select Cursor:
npx @verygoodplugins/mcp-automem installBy default this installs the AutoMem Cursor plugin into ~/.cursor/plugins/local/automem (MCP server, session-start recall hook, and always-on rule); then open Cursor → Customize → Automem → Configure and enter your endpoint and key. --cursor-mode files instead writes ~/.cursor/mcp.json plus project memory rules and a session-start hook. Already have an endpoint? Use npx @verygoodplugins/mcp-automem cursor --endpoint https://your-automem.example.
The one-click button configures only the MCP server for a local AutoMem instance. Update its endpoint/key in Cursor if needed, then run the CLI above to add project rules and the hook:
Other platforms — Claude Desktop (one-click .mcpb above, plus the Personal Preferences template), OpenAI Codex, Hermes Agent, Grok Build, OpenClaw, Google Antigravity, and GitHub Copilot:
👉 Full Installation Guide for every platform's setup and verification steps
An optional sidecar service (deployable to Railway or any Docker host) connects AutoMem to platforms that support remote MCP over Streamable HTTP or SSE — ChatGPT (Developer Mode connectors), Claude.ai web and Claude Mobile, and ElevenLabs Agents.
👉 Remote MCP setup for deployment, connect URLs, and per-platform screenshots.
┌─────────────────────────────────────────────┐
│ Your AI Platforms │
│ Claude Desktop │ Cursor │ Claude Code │
└──────────────┬──────────────────────────────┘
│ MCP Protocol
▼
┌──────────────────────────────────────────────┐
│ @verygoodplugins/mcp-automem (this repo) │
│ • Translates MCP calls → AutoMem API │
│ • Platform integrations & rules │
│ • Handles authentication │
└──────────────┬───────────────────────────────┘
│ HTTP API
▼
┌──────────────────────────────────────────────┐
│ AutoMem Service (separate repo) │
│ github.com/verygoodplugins/automem │
│ ┌────────────┐ ┌────────────┐ │
│ │ FalkorDB │ │ Qdrant │ │
│ │ (Graph) │ │ (Vectors) │ │
│ └────────────┘ └────────────┘ │
└──────────────────────────────────────────────┘
This repo (mcp-automem):
- MCP client that connects AI platforms to AutoMem
- Platform-specific integrations (Cursor rules, Claude Code hooks, etc.)
- Setup wizards and configuration tools
- Backend memory service with graph + vector storage
- Deployment guides (local, Railway, Docker, production)
- API server with FalkorDB + Qdrant
store_memory— Save memories with content, tags, importance, metadata. Two modes:- Single (default): top-level
contentplus optional fields, includingembedding,t_valid,t_invalid, customid. - Batch:
memories: [...](≤500 items) for bulk ingestion. Per-itemid/embedding/t_valid/t_invalidare not supported in batch mode.
- Single (default): top-level
recall_memory— Three modes selected by which params you pass:- ID fetch:
memory_id→ fetches one memory by ID; updateslast_accessed. - Tag enumeration:
tags+exhaustive: true→ paginated exact-match listing for cleanup/audit workflows where ranked recall undercounts. Pair withlimit(≤200) andoffset; returnshas_more, plusnext_offsetfor the next page while more remain. - Ranked retrieval (default): hybrid search across vector, keyword, tags, recency/state controls, score filters, and graph expansion. Supports
state_mode,recency_bias,scope_fallback,expand_respect_tags,min_score,adaptive_floor, and diagnostics such astag_scope,score_filter,query_time_ms,vector_search, and per-resultoutside_tag_scope/state_replaces.
- ID fetch:
associate_memories— Create relationships (11 public authorable types; recall results may also include read-only system relations). Supports single-pair mode and batch mode viaassociations: [...](≤500) with relation-specific props likereason,context,resolution,observations,transformation, androle.update_memory— Modify existing memoriesdelete_memory— Two modes:- Single (default):
memory_id→ removes one memory and its embedding. - Bulk-by-tag:
tags: [...]→ bulk-delete all memories matching ANY tag (exact, case-insensitive). No dry-run; verify withrecall_memory({ tags, exhaustive: true })first.
- Single (default):
check_database_health— Monitor service health, degraded state, sync counts, vector dimensions, and enrichment diagnostics when the service provides them
Multi-hop Reasoning - Answer complex questions like "What is Amanda's sister's career?"
mcp__memory__recall_memory({
query: "What is Amanda's sister's career?",
expand_entities: true, // Finds "Amanda's sister is Rachel" → memories about Rachel
});Context-Aware Coding - Recall prioritizes language and style preferences
mcp__memory__recall_memory({
query: "error handling patterns",
language: "typescript",
context_types: ["Style", "Pattern"],
});- ✅ Guided setup configures the global MCP server with your endpoint and API key
- ✅ Project memory rules in
.cursor/rules/automem.mdc - ✅ Session-start hook prompts recall, with rules as a fallback
- ✅ Model-judged storage during work; hooks never write memories
- ✅ Auto-detects project context (package.json, git remote)
- ✅ Native plugin - MCP server, silent hooks, and skill in one
/plugin install, with enable-time config prompts and auto-updates - ✅ LLM-judged storage - session-start guidance nudges Claude to store, verify, and associate durable memories during normal work
- ✅ Memory rules in CLAUDE.md guide Claude's memory usage
- ✅ Standalone hook JSON files installed into
$COPILOT_HOME/hooks/or~/.copilot/hooks/ - ✅ Memory rules template for
copilot-instructions.md - ✅ Format flag -
--format cli(camelCase) or--format vscode(PascalCase) - ✅ Setup:
npx @verygoodplugins/mcp-automem copilot --yes
- ✅ Direct MCP integration
- ✅ Paste-ready Personal Preferences starter template
- ✅ Full memory API access
- ✅ 2 years of R&D already done
- ✅ Research-validated architecture (HippoRAG 2, MELODI, A-MEM)
- ✅ Working integrations across all MCP platforms
- ✅ Active development and community
- ✅ True graph relationships (not just vector similarity)
- ✅ Universal MCP compatibility (works with any MCP client)
- ✅ 7 memory types (Decision/Pattern/Preference/Style/Habit/Insight/Context)
- ✅ Self-hostable ($5/month vs $150+ for alternatives)
- ✅ Persistent across sessions (not just context window)
- ✅ Cross-platform (same memory in Claude, Cursor, Code)
- ✅ Structured relationships (not just RAG)
- ✅ Infinite scale (no context window limits)
- 📦 Installation Guide - MCP client setup for all platforms
- 🌐 Remote MCP via HTTP - Connect ChatGPT, Claude Web/Mobile, ElevenLabs
- 🎯 Cursor Setup - IDE integration with rules and a session-start hook
- 🤖 Claude Code Setup - Plugin install, hooks, and memory rules
⚠️ Deprecations - History of the plugin deprecation and its reversal- 🚀 OpenAI Codex Setup - Codex CLI/IDE/Cloud integration
- 🪐 Google Antigravity Setup - Raw MCP config via Antigravity's MCP Store
- 📖 MCP Tools Reference - All memory operations
- 📝 Changelog - Release history
- 🏗️ AutoMem Service - Backend repository
- 🚀 Service Installation - Local, Railway, Docker deployment
- ⚙️ API Documentation - REST API reference
- 🧪 Evaluation Lab - Exploratory recall-quality benchmarks and ruleset A/B testing
The AutoMem service implements cutting-edge 2025 research:
- HippoRAG 2 (OSU, June 2025): Graph-vector approach achieves 7% better associative memory
- A-MEM (July 2025): Dynamic memory organization with Zettelkasten principles
- MELODI (DeepMind, 2025): 8x memory compression without quality loss
- ReadAgent (DeepMind, 2024): 20x context extension through gist memories
This MCP package provides the bridge between your AI and that research-validated memory system. The backend has also been benchmarked on the neutral Agent Memory Benchmark, including BEAM large-context scaling tiers — reproducible end to end, so you can run it yourself.
- 💬 Discord - Join the community, get help, share feedback
- 🐦 X Community - Discussion and updates
- 📣 @automem_ai - Official announcements
- 📦 NPM Package - This MCP client
- 🔬 AutoMem Service - Backend repo with deployment guides
- 🐛 GitHub Issues - Bug reports and feature requests
We welcome contributions! Please:
- Fork the repository
- Create a feature branch
- Make your changes with tests
- Submit a pull request with a Conventional Commit title such as
fix:,feat:,docs:, orchore: - Do not prefix the PR title with labels like
[codex]or[wip]because the squash-merge commit is taken from the PR title
Run npm test for the local unit and mock-host suites. For real service checks, start an
isolated AutoMem test instance, then run:
AUTOMEM_TEST_API_URL=http://127.0.0.1:18011 \
AUTOMEM_TEST_API_KEY=test-token \
AUTOMEM_REQUIRE_SERVICE=1 npm run test:integrationThe integration suite creates and deletes synthetic memories, so use a disposable test
database. It probes health before collecting tests, reads vector dimensions from health
(or AUTOMEM_TEST_VECTOR_SIZE), and waits for indexing instead of using fixed sleeps.
Without AUTOMEM_REQUIRE_SERVICE=1, an unavailable service skips the optional local
suite. Required mode, also enabled by CI=true, fails on an unavailable service, zero
tests, or any skipped tests. The AutoMem service integration CI job runs required mode
against isolated FalkorDB/Qdrant services and a pinned AutoMem service checkout.
MIT - Because great memory should be free.
Ready to give your AI perfect memory?
npx @verygoodplugins/mcp-automem installBuilt with obsession. Validated by neuroscience. Powered by graph theory. Works with every MCP-enabled AI.
Designed by Jack Arturo at Very Good Plugins 🧡
Transform your AI from a tool into a teammate. Start now.