Best Memory MCP Servers for Claude: 6 Compared
The official memory server, Basic Memory, Mem0, Supermemory, Graphiti and Unabyss, compared on storage, setup and price.

Claude's built-in memory stays in the Claude app, and Claude Code's stays in one repo on one machine. A memory MCP server moves memory into a separate service that every Claude surface can call, and the best one depends on where you want that memory to live: a local file, a hosted service, or a graph you run yourself.
Below: six servers compared, and how to add one to claude.ai, Claude Desktop and Claude Code.
What is a Claude memory MCP server?
A memory MCP server is a program that gives Claude persistent memory: tools to save and look up facts across chat sessions, connected through the Model Context Protocol (MCP), the open standard Claude uses to reach outside tools and data. Claude decides when to call those tools: it saves coding preferences like "prefers pnpm" or a fact like "Acme's launch moved to March" with one tool, and searches for it in a later chat with another.
That makes it different from the two memory systems Claude already has. Claude's memory feature builds memory from your chats inside the Claude app, and Claude Code memory lives in Markdown files in one repository. An MCP server sits outside both, so the same memory can serve Claude Desktop, Claude Code and, for most servers, Cursor or ChatGPT.
There are plenty to choose from: the official MCP Registry listed 298 servers with "memory" in their name when checked on October 26, 2026.
How do the best memory MCP servers compare?
They differ on two axes: what they store, and whether it runs on your machine or someone else's. Prices were checked on each vendor's own pricing page or repository in October 2026.
| Server | What it stores | Local or hosted | Works in | Price |
|---|---|---|---|---|
| Unabyss | Context extracted from 26 work apps, kept current | Hosted | claude.ai, Claude Desktop, Claude Code, plus ChatGPT and Cursor | 7-day free trial; Pro 89/mo |
| Official memory server | Knowledge graph of entities, relations and observations in one JSONL file | Local | Claude Desktop, Claude Code | Free, open source |
| Basic Memory | Markdown notes linked into a knowledge graph | Local, or hosted cloud | Claude Desktop and Code locally; any client via cloud | Free locally; cloud from $15/seat/mo |
| Mem0 | Memories Mem0 extracts from what Claude sends | Hosted | claude.ai, Claude Desktop, Claude Code, Cursor | Free (10,000 adds/mo); Starter 249/mo |
| Supermemory | Documents, extracted memories and a profile, in spaces | Hosted | claude.ai, Claude Desktop, Claude Code | Free (19/mo; Max $100/mo |
| Graphiti | Temporal knowledge graph of episodes, entities and facts | Self-hosted | Claude Desktop, Claude Code | Free, open source; you pay for the LLM calls |
Unabyss
Unabyss is a personal context layer: instead of waiting for Claude to write memories, it builds structured context about you from the apps where your work happens, keeps it current as they change, and serves it over MCP. It connects to 26 apps, including Gmail, Google Calendar, Slack, Notion, GitHub and Linear, and works in 13 MCP clients, among them Claude, Claude Code, ChatGPT, Cursor and Codex. In claude.ai it's a listed connector in Claude's directory, so there's no URL to paste. Your context is encrypted at rest and in transit, read-only by design, and never used to train models.
Official MCP memory server
The reference server from the modelcontextprotocol/servers repository stores a knowledge graph: entities (people, projects, organizations), relations between them in active voice ("works_at"), and observations, atomic facts attached to an entity. Everything sits in one JSONL text file, set with the MEMORY_FILE_PATH environment variable. It runs through npx (Node.js 24 or later) or Docker. The repo calls its servers educational reference implementations, not production-ready solutions, so treat it as a solid starting point rather than a product.
Basic Memory
Basic Memory keeps a knowledge base of Markdown files in ~/basic-memory, links them with observations and wikilinks, and adds full-text and semantic search on top. You can open the same files in Obsidian. The local version is free under AGPL-3.0; the cloud version hosts the files and adds sync, mobile access and a remote endpoint from $15 per seat per month, with a 7-day trial (Basic Memory pricing).
Mem0
Mem0's hosted MCP server at https://mcp.mem0.ai/mcp runs nothing on your machine: memories live in your Mem0 account, and Claude gets tools such as add_memory, search_memories and update_memory. Sign-in opens in your browser on the first tool call, or you can pass an API key instead. Mem0 is built for teams adding memory to agents, which shows in pricing by add and retrieval requests rather than by person.
Supermemory
Supermemory's MCP server at https://mcp.supermemory.ai/mcp signs you in with OAuth, lets you choose which spaces a client may access, and exposes tools such as search_memory, add_memory and get_profile. You can also upload PDFs, Word files, images and audio. Like Mem0, it's memory infrastructure first; the detailed comparison is in Supermemory vs Unabyss.
Graphiti
Graphiti's MCP server builds a knowledge graph that tracks when facts were true, on FalkorDB or Neo4j, using an LLM to extract entities from each episode you add. It needs Docker and an OpenAI key (or another supported provider). The project labels it an experimental reference implementation with no authentication, so keep it on localhost. Zep, the company behind Graphiti, sells the managed version to enterprises.
How do you add a memory MCP server to Claude?
You add a hosted server as a connector in claude.ai, a local server through Claude Desktop's config file, and either kind to Claude Code with claude mcp add.
claude.ai and Claude Desktop: remote servers
Remote servers go in as custom connectors, per the Claude Help Center:
- Go to Customize > Connectors, click + Add, then Add custom connector.
- Enter a name and the server URL, for example
https://mcp.mem0.ai/mcp. - Choose how to sign in, then click Add.
- In a chat, turn it on from + > Connectors.
Custom connectors work on every plan, but Free users get one. They connect from Anthropic's cloud, not your device, which is why they reach claude.ai, Claude Desktop and the mobile apps, and why the server must be reachable from the public internet.
Claude Desktop: local servers
A server that runs on your machine goes in Claude Desktop's config file. Open Settings > Developer > Edit Config, which opens ~/Library/Application Support/Claude/claude_desktop_config.json on macOS or %APPDATA%\Claude\claude_desktop_config.json on Windows (MCP docs), and add the server:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"],
"env": { "MEMORY_FILE_PATH": "/Users/you/claude-memory/memory.jsonl" }
}
}
}
Quit and restart Claude Desktop. Local servers don't appear in claude.ai on the web or on your phone.
Claude Code
Claude Code can install both kinds with one command (Claude Code docs):
# Hosted server
claude mcp add --transport http mem0 https://mcp.mem0.ai/mcp
# Local server
claude mcp add memory -- npx -y @modelcontextprotocol/server-memory
Add --scope user to use the server in every project, then run /mcp to sign in. Two shortcuts: if you log into Claude Code with a claude.ai account, connectors you added in claude.ai are available automatically, and claude mcp add-from-claude-desktop imports your Desktop servers on macOS and WSL. Unabyss-specific steps for each client are in how to load personal context via MCP.
Should you use Claude's built-in memory or a memory MCP server?
Use both: built-in memory for conversations in the Claude app, and an MCP server for memory that has to reach Claude Code, Claude Desktop and other tools. Claude's memory is on by default for Free, Pro and Max (Claude Help Center) and is easy to inspect, but nothing in it reaches Cursor or ChatGPT. An MCP server is the portable layer, and Claude calls it only when a chat needs it.
What do memory MCP servers get wrong?
Most of them remember only what Claude decides to write down, so they start empty and drift out of date. That's the fundamental limitation. On day one a knowledge-graph server knows nothing about you or your new project; after a month it knows what came up in chat, phrased the way Claude phrased it, with no way to notice that a project ended or a deadline moved. Each server also adds tool definitions to the context window of every session, a cost covered in the MCP context tax.
That gap is where Unabyss is built differently. It extracts your context from the sources that change, such as your inbox, calendar, tickets and docs, so it's full before your first chat and updates when they do. In an August 2026 Unabyss benchmark of 20 tasks run 60 times in Claude Code, adding Unabyss to an assistant that already had the same tools connected cut cost by 36%, time by 38% and follow-ups by 60% (What Structured AI Context Is Worth).
Where is another server the better choice than Unabyss?
Unabyss is the wrong pick in four cases.
- You want free and offline. The official memory server or local Basic Memory cost nothing and never leave your disk.
- You want memory as files you edit by hand, or already keep notes in Obsidian. Basic Memory writes plain Markdown you own.
- You're building agents or AI assistants that remember their users. Mem0, Supermemory or Graphiti give you an API and per-user memory; Unabyss is for the person using AI tools.
- You only need memory inside Claude Code. Its built-in auto memory, or claude-mem, covers one repo well; see Claude Code memory.
Unabyss is the better choice when the facts Claude needs live in your work apps, change every week, and should reach claude.ai, Claude Code, ChatGPT and Cursor from one source. For the wider field beyond MCP, see the best AI memory tools across ChatGPT, Claude and Cursor.
→ Start a 7-day Unabyss trial and connect it to Claude