recall-mcp
Allows GitHub Copilot agents to store, search, and retrieve persistent context across sessions using a local SQLite database.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@recall-mcpremember that we decided to use JWT with RS256 for auth"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Recall ☁️
Persistent memory MCP server for AI coding agents.
Store, search, and retrieve context across sessions. Built on SQLite + FTS5.
Works with Claude Code, Cursor, GitHub Copilot, Gemini CLI, and any MCP-compatible agent.
Why?
AI coding agents are stateless. Every new session starts from zero. You re-explain your architecture, re-discover patterns, re-learn the same conventions.
Recall gives your agent a memory that persists. Store decisions, patterns, bug fixes, architecture notes — anything worth remembering. Next session, search and retrieve instantly.
Install
npm install -g recall-mcpOr use directly with npx:
npx recall-mcpConfigure
Claude Code
Add to your .claude/settings.json:
{
"mcpServers": {
"recall": {
"command": "npx",
"args": ["recall-mcp"]
}
}
}Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"recall": {
"command": "npx",
"args": ["recall-mcp"]
}
}
}Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"recall": {
"command": "npx",
"args": ["recall-mcp"]
}
}
}Tools
recall_store
Store or update a memory. If a memory with the same key exists, it gets updated.
key: "project.auth.decision"
content: "Using JWT with RS256. Public key rotated weekly via /keys endpoint."
tags: ["decision", "architecture", "auth"]
scope: "my-project"recall_get
Retrieve a specific memory by key.
key: "project.auth.decision"
scope: "my-project" // optionalrecall_search
Full-text search across all memories. Returns ranked results.
query: "authentication pattern"
limit: 10
scope: "my-project" // optionalrecall_list
List recent memories, optionally filtered by scope.
scope: "my-project" // optional
limit: 20recall_delete
Delete a memory by key.
key: "project.auth.decision"
scope: "my-project" // optionalrecall_stats
Show memory statistics — total count, breakdown by scope.
How It Works
Storage: SQLite with WAL mode. All data stored locally in
~/.recall/recall.db.Search: FTS5 full-text search with automatic ranking. Fast even with thousands of memories.
Scoping: Memories are scoped to
globalby default. Use project-specific scopes to keep project context separate.Auto-indexing: Every store/update/delete automatically syncs the FTS index via SQLite triggers.
Use Cases
Architecture decisions — "Why did we choose X over Y?" → stored and searchable
Bug fix patterns — "This weird null pointer was caused by..." → never debug the same thing twice
Code conventions — "In this project, we use..." → agents follow your rules automatically
Project context — Store project structure, key files, gotchas for instant onboarding
Cross-session learning — Agent remembers what it learned last session
Configuration
Env Var | Default | Description |
|
| Path to the SQLite database file |
License
MIT
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/autonsol/recall-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server