mcpField
R
r3

r3

Local
r3.n3wth.comMemory & Knowledge2Updated 5w ago

About r3

r3 is a local persistent-memory MCP server for MCP clients, using embedded Redis and a local vector index without requiring an account or API key. Optional Mem0 sync and entity-graph tools extend its capabilities.

Key features

  1. 01Local persistent memory
  2. 02Semantic and keyword search
  3. 03Import, update, and deduplicate memories
  4. 04Cache statistics and maintenance
  5. 05Entity extraction and graph queries

Use cases

  1. 01Save and retrieve preferences across conversations
  2. 02Bulk-import and organize existing memories
  3. 03Explore entity relationships in stored memories

MCP support

It exposes memory management, search, cache, and entity-relation tools to MCP clients over stdio. Optional synchronization uses Mem0 cloud.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"n3wth-r3": {
"command": "npx",
"args": [
"-y",
"@n3wth/r3"
],
"env": {
"MEM0_API_KEY": "<MEM0_API_KEY>",
"REDIS_URL": "<REDIS_URL>"
}
}
}
}
Run commandnpx -y @n3wth/r3
Environment variables to set
MEM0_API_KEYSecretOptional Mem0 API key for cloud backup (get free at mem0.ai).
REDIS_URLRedis connection URL. Uses embedded Redis if unset.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@n3wth/r31.3.2

Tools

14

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
asyncbooleanNoEnable background processing. true: returns immediately, indexes async. false: blocks until complete. Default: true.
contentstringNoPlain text content to store. Use instead of messages for simple facts. Either content or messages required, not both.
user_idstringNoUser namespace for memory isolation. Default: "oliver". Use consistent IDs to retrieve related memories.
messagesarrayNoConversation messages to store. Use instead of content for multi-turn context. Each message needs role and content fields.
metadataobjectNoKey-value pairs for categorization (e.g., {category: 'preferences', source: 'onboarding'}). Searchable via search_memory.
priorityenumNoCache priority. high: immediate L1 cache (24h TTL). medium: standard processing. low: L2 cache (7d TTL). Default: medium.high | medium | low
skip_duplicate_checkbooleanNoBypass duplicate detection. Use only when intentionally storing similar content. Default: false.

Details

From the project README

r3

npm version npm downloads License: MIT

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.

Memory persisting across two separate server processes

Quick start

npx @n3wth/r3

That 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 default
  • Embedded Redis — redis-memory-server downloads 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_KEY is 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

ToolDescription
add_memoryStore content with optional metadata and priority
search_memoryQuery memories using semantic or keyword search
get_all_memoriesList stored memories with pagination
get_memoryRetrieve a specific memory by ID
update_memoryModify existing memory content or metadata
delete_memoryRemove a memory
deduplicate_memoriesFind and merge duplicate memories
cache_statsReport cache hit rate and storage stats
sync_statusReport Mem0 cloud sync status
optimize_cacheRun cache maintenance
import_memoriesBulk import memories

Enhanced mode (default, INTELLIGENCE_MODE=enhanced) adds:

ToolDescription
extract_entitiesExtract named entities from text
get_knowledge_graphReturn the entity/relationship graph
find_connectionsFind entities connected to a given entity

Configuration

Environment variables, all optional:

VariableDescriptionDefault
REDIS_URLUse an external Redis instead of the embedded oneembedded server
MEM0_API_KEYEnables Mem0 cloud syncunset (local only)
MEM0_USER_IDNamespace for memoriesdefault
INTELLIGENCE_MODEenhanced or basicenhanced

Example with cloud sync enabled:

{
  "mcpServers": {
    "r3": {
      "command": "npx",
      "args": ["@n3wth/r3"],
      "env": {
        "MEM0_API_KEY": "mem0_..."
      }
    }
  }
}

Comparison

r3mem0 (OSS)zep
Runs fully local with zero configyes (embedded Redis + vectra)requires a Postgres/vector DB you configurerequires a Postgres instance you configure
Needs an API key to try itnono (self-hosted) / yes (cloud)yes (cloud), or self-hosted setup
Optional cloud syncyes, via Mem0n/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

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.