MCP Memory Server
Persistent knowledge-graph memory for Claude and other MCP clients
In short
This tool gives MCP-compatible clients a local, persistent memory layer using a simple entity-relation graph. It is best for developers who need a free, inspectable way to retain project context and user preferences across sessions without hosted services.
Developers and power users who already run Claude Desktop, Claude Code or another MCP client and want a free, local, hand-inspectable persistent memory layer they can wire up in five minutes.
Teams that need multi-user memory, semantic search over thousands of facts, SSO or an audited managed service - reach for a hosted memory product or a real graph/vector database instead.
MCP Memory Server (published on npm as @modelcontextprotocol/server-memory) is the reference persistent-memory server maintained inside Anthropic's official modelcontextprotocol/servers repository. It gives any MCP-compatible client - Claude Desktop, Claude Code, Cursor, Zed, Windsurf and dozens of community wrappers - a local knowledge-graph store so the model can remember facts about the user, projects and prior conversations across sessions instead of losing everything at the end of a chat.
Data is modelled as a small graph of Entities (nodes with a name, an entityType and a list of atomic Observations) and Relations (directed, active-voice edges between entities). The server exposes nine tools - create_entities, create_relations, add_observations, delete_entities, delete_observations, delete_relations, read_graph, search_nodes, open_nodes - plus a memory://knowledge-graph MCP Resource that mutation tools update via notifications/resources/updated, so subscribed clients see live changes. Storage is a plain JSONL file on disk (path configurable via MEMORY_FILE_PATH), which makes the graph trivial to inspect, back up, diff in git or edit by hand.
Typical workflows: pair the server with a system prompt that tells the assistant to recall relevant nodes at the start of a chat and to write new observations at the end; use it as long-lived project memory for coding agents so they remember stack choices, coding conventions and previously fixed bugs; build a lightweight personal CRM by capturing people, companies and preferences as entities; give research agents a scratch graph they can query with search_nodes instead of re-reading the whole context. Because it is a pure MCP server, it composes cleanly with filesystem, git, database and web-fetch servers in the same client.
This is the memory server most people should try first: it is the official reference, it installs in one npx line, and the entity/relation/observation shape maps cleanly to how assistants actually accumulate knowledge. Treat it as durable notes for one user on one machine - not as a scalable backend - and pair it with a system prompt that reminds the model to read and write the graph.
— The AI Tool Bible editorial team
Pros
- ✅ Official, Anthropic-maintained reference implementation - the canonical way to add persistent memory to an MCP client
- ✅ Zero-config install via npx or a one-line Docker command; works out of the box with Claude Desktop's claude_desktop_config.json
- ✅ Simple, inspectable JSONL storage on disk that you can grep, diff, back up and edit by hand
- ✅ Structured entity/relation/observation model is more queryable than a raw text scratchpad and cheaper than a vector DB
- ✅ Nine well-scoped tools plus a live-updating knowledge-graph Resource, so agents can both read and mutate memory
- ✅ Fully open source (MIT) and vendor-neutral - runs against any MCP-speaking model, not just Claude
- ✅ Trivial to fork or wrap for team-specific schemas since the codebase is a single small TypeScript file
Cons
- ⚠️ Reference-quality, not production-grade: single-file JSONL storage with no concurrency control, indexing or replication
- ⚠️ search_nodes is a plain substring match with no embeddings or semantic ranking - large graphs degrade quickly
- ⚠️ No built-in multi-user, auth or per-project isolation; a shared install mixes memories from every session
- ⚠️ The model still has to be prompted to actually call the memory tools - forgetful assistants forget to remember
- ⚠️ No web UI, visualisation or admin surface; you inspect and clean the graph by editing the JSONL yourself
- ⚠️ Only a local filesystem backend - no Postgres, SQLite or cloud sync option is shipped
Use cases
Frequently asked
- How is data stored in MCP Memory Server?
- Data is stored in a plain JSONL file on disk, which allows users to easily inspect, back up, diff, or edit the memory graph by hand.
- Which clients are compatible with this server?
- It works with any MCP-compatible client, including Claude Desktop, Claude Code, Cursor, Zed, and Windsurf, as well as community wrappers.
- What is the cost to use MCP Memory Server?
- The server is free and open source under the MIT license, with no vendor charges since it is self-hosted and runs locally via npx or Docker.
- Is this tool suitable for multi-user teams?
- No, it is not designed for multi-user memory, SSO, or audited managed services, as it lacks built-in auth and per-project isolation.
- How does the search functionality work?
- The search_nodes tool uses a plain substring match rather than embeddings or semantic ranking, which may degrade performance on large graphs.
Explore related
Compare with similar tools
All in MCP Servers →Airtable MCP Server
Model Context Protocol server that gives LLMs full read/write access to your Airtable bases.
Apple Notes MCP
Let Claude read your local Apple Notes over the Model Context Protocol.
AWS MCP Servers
Official AWS Labs collection of Model Context Protocol servers for connecting AI coding assistants and agents to AWS services and documentation.
Azure MCP Server
Official Microsoft MCP server that exposes 40+ Azure services to AI agents under the developer's own Entra ID credentials.
Blender MCP
Give Claude hands inside Blender — an MCP server for natural-language 3D modeling.
Brave Search MCP
Give any MCP client web and local search powered by the Brave Search API.