r3 (Recall)
r3
Persistent memory for MCP clients (Claude Desktop, Claude Code, Cursor) that runs entirely on your machine, with no accounts, no API keys, and no cloud service required to start.

Quick start
npx @n3wth/r3That single command starts an MCP server backed by an embedded Redis instance and a local vector index. There is no separate database to install and no signup step.
How it works
MCP client (Claude Desktop / Claude Code / Cursor)
|
v
r3 MCP server (stdio)
|
+----+-----------------------+
| |
embedded Redis vectra local index
(redis-memory-server, (on-disk vector store
auto-downloaded binary, for semantic search,
no external service) no external service)
|
+--- optional ---> Mem0 cloud API (MEM0_API_KEY)
cross-device sync, off by defaultEmbedded Redis —
redis-memory-serverdownloads and manages a local Redis binary for you. It stores memory content and metadata. If it cannot start, r3 falls back to an in-process store.vectra — a local, file-backed vector index used for semantic search. No network calls, no external vector database.
Mem0 (optional) — if
MEM0_API_KEYis set, r3 also syncs to Mem0's cloud API so memories can follow you across machines. Without a key, nothing leaves your machine.
MCP client configuration
Claude Desktop
Edit claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"r3": {
"command": "npx",
"args": ["@n3wth/r3"]
}
}
}Claude Code
claude mcp add r3 "npx @n3wth/r3"Cursor
Add to .cursor/mcp.json in your project (or the global Cursor MCP config):
{
"mcpServers": {
"r3": {
"command": "npx",
"args": ["@n3wth/r3"]
}
}
}Restart the client after editing config. In a new conversation:
You: Remember that I prefer TypeScript and dark mode.
AI: I'll remember that.
[new conversation]
You: What are my preferences?
AI: You prefer TypeScript and dark mode.Tools
Tool | Description |
| Store content with optional metadata and priority |
| Query memories using semantic or keyword search |
| List stored memories with pagination |
| Retrieve a specific memory by ID |
| Modify existing memory content or metadata |
| Remove a memory |
| Find and merge duplicate memories |
| Report cache hit rate and storage stats |
| Report Mem0 cloud sync status |
| Run cache maintenance |
| Bulk import memories |
Enhanced mode (default, INTELLIGENCE_MODE=enhanced) adds:
Tool | Description |
| Extract named entities from text |
| Return the entity/relationship graph |
| Find entities connected to a given entity |
Configuration
Environment variables, all optional:
Variable | Description | Default |
| Use an external Redis instead of the embedded one | embedded server |
| Enables Mem0 cloud sync | unset (local only) |
| Namespace for memories |
|
|
|
|
Example with cloud sync enabled:
{
"mcpServers": {
"r3": {
"command": "npx",
"args": ["@n3wth/r3"],
"env": {
"MEM0_API_KEY": "mem0_..."
}
}
}
}Comparison
r3 | mem0 (OSS) | zep | |
Runs fully local with zero config | yes (embedded Redis + vectra) | requires a Postgres/vector DB you configure | requires a Postgres instance you configure |
Needs an API key to try it | no | no (self-hosted) / yes (cloud) | yes (cloud), or self-hosted setup |
Optional cloud sync | yes, via Mem0 | n/a (is the cloud option) | yes |
This table only reflects setup requirements observed in each project's own documentation, not benchmark performance or feature completeness. Verify against current upstream docs before relying on it.
Known issues
See LAUNCH_AUDIT.md for current limitations, including a native module build failure on some macOS setups.
Documentation
Full documentation at r3.n3wth.com.
License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/n3wth/r3'
If you have feedback or need assistance with the MCP directory API, please join our Discord server