
A basic implementation of persistent memory using a local knowledge graph. This lets Claude remember
A basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.
·
A basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.
Published on npm as @modelcontextprotocol/server-memory.
Entities are the primary nodes in the knowledge graph. Each entity has:
Example:
{
"name": "John_Smith",
"entityType": "person",
"observations": ["Speaks fluent Spanish"]
}Relations define directed connections between entities. They are always stored in active voice and describe how entities interact or relate to each other.
Example:
{
"from": "John_Smith",
"to": "Anthropic",
"relationType": "works_at"
}Observations are discrete pieces of information about an entity. They are:
Example:
{
"entityName": "John_Smith",
"observations": [
"Speaks fluent Spanish",
"Graduated in 2019",
"Prefers morning meetings"
]
}create_entities
entities (array of objects)
name (string): Entity identifierentityType (string): Type classificationobservations (string[]): Associated observationsskipped, and a second text item says which were skipped (use add_observations to extend an existing entity)create_relations
relations (array of objects)
from (string): Source entity nameto (string): Target entity namerelationType (string): Relationship type in active voiceadd_observations
observations (array of objects)
entityName (string): Target entitycontents (string[]): New observations to adddelete_entities
entityNames (string[])delete_observations
deletions (array of objects)
entityName (string): Target entityobservations (string[]): Observations to removedelete_relations
relations (array of objects)
from (string): Source entity nameto (string): Target entity namerelationType (string): Relationship typeread_graph
search_nodes
query (string)open_nodes
names (string[])memory://knowledge-graph)
application/jsonread_graph (entities and relations)create_entities, create_relations, add_observations, delete_entities, delete_observations, delete_relations) emit notifications/resources/updated for this URI, so subscribed clients see live changesresourceSubscriptions of its subscriptions/listen request and gets the updates on that stream; a 2025-era client calls resources/subscribeThe server serves both protocol eras on stdio from the same process. The client's first message picks the era of the connection: a 2026-07-28 client opens with server/discover and sends its protocol version, identity and capabilities with each request, and a 2025-era client opens with the initialize handshake. The tools and the resource are the same on both.
Node.js 24 or later, when the server runs through npx or from source.
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"memory": {
"command": "docker",
"args": ["run", "-i", "-v", "claude-memory:/app/dist", "--rm", "mcp/memory"]
}
}
}{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}On Windows, use cmd /c to launch npx:
{
"mcpServers": {
"memory": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}The server can be configured using the following environment variables:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
],
"env": {
"MEMORY_FILE_PATH": "/path/to/custom/memory.jsonl"
}
}
}
}On Windows, use:
{
"mcpServers": {
"memory": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@modelcontextprotocol/server-memory"
],
"env": {
"MEMORY_FILE_PATH": "/path/to/custom/memory.jsonl"
}
}
}
}MEMORY_FILE_PATH: Path to the memory storage JSONL file (default: memory.jsonl in the server directory)Each MCP client starts its own server process, so two clients using the same MEMORY_FILE_PATH (or both using the default) are two processes writing one file. Every write tool takes an exclusive lock file, <memory file>.lock, next to the memory file while it reads, changes and saves the graph, so writes from different processes take turns and none is lost. The lock file exists only while a write is in progress, so the directory holding the memory file must be writable (it already must be, for the atomic save).
<memory file>.lock.break file.For quick installation, use one of the one-click installation buttons below:
For manual installation, you can configure the MCP server using one of these methods:
Method 1: User Configuration (Recommended)
Add the configuration to your user-level MCP configuration file. Open the Command Palette (Ctrl + Shift + P) and run MCP: Open User Configuration. This will open your user mcp.json file where you can add the server configuration.
Method 2: Workspace Configuration
Alternatively, you can add the configuration to a file called .vscode/mcp.json in your workspace. This will allow you to share the configuration with others.
For more details about MCP configuration in VS Code, see the official VS Code MCP documentation.
{
"servers": {
"memory": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}On Windows, use:
{
"servers": {
"memory": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@modelcontextprotocol/server-memory"
]
}
}
}{
"servers": {
"memory": {
"command": "docker",
"args": [
"run",
"-i",
"-v",
"claude-memory:/app/dist",
"--rm",
"mcp/memory"
]
}
}
}The prompt for utilizing memory depends on the use case. Changing the prompt will help the model determine the frequency and types of memories created.
Here is an example prompt for chat personalization. You could use this prompt in the "Custom Instructions" field of a Claude.ai Project.
Follow these steps for each interaction:
1. User Identification:
- You should assume that you are interacting with default_user
- If you have not identified default_user, proactively try to do so.
2. Memory Retrieval:
- Always begin your chat by saying only "Remembering..." and retrieve all relevant information from your knowledge graph
- Always refer to your knowledge graph as your "memory"
3. Memory
- While conversing with the user, be attentive to any new information that falls into these categories:
a) Basic Identity (age, gender, location, job title, education level, etc.)
b) Behaviors (interests, habits, etc.)
c) Preferences (communication style, preferred language, etc.)
d) Goals (goals, targets, aspirations, etc.)
e) Relationships (personal and professional relationships up to 3 degrees of separation)
4. Memory Update:
- If any new information was gathered during the interaction, update your memory as follows:
a) Create entities for recurring organizations, people, and significant events
b) Connect them to the current entities using relations
c) Store facts about them as observationsDocker:
docker build -t mcp/memory -f src/memory/Dockerfile . For Awareness: a prior mcp/memory volume contains an index.js file that could be overwritten by the new container. If you are using a docker volume for storage, delete the old docker volume's index.js file before starting the new container.
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Pick your client and paste the snippet. Each one is the same server, written the way that client expects it.
claude mcp add memory -- docker run -i -v claude-memory:/app/dist --rm mcp/memory{
"mcpServers": {
"memory": {
"args": [
"run",
"-i",
"-v",
"claude-memory:/app/dist",
"--rm",
"mcp/memory"
],
"command": "docker"
}
}
}code --add-mcp '{"name":"memory","args":["run","-i","-v","claude-memory:/app/dist","--rm","mcp/memory"],"command":"docker"}'[mcp_servers.memory]
command = "docker"
args = ["run", "-i", "-v", "claude-memory:/app/dist", "--rm", "mcp/memory"]Runs locally on your device. Your client starts the server itself, so nothing has to be hosted.
Paste this prompt into your agent. It reads this page and does the setup for you.
Read https://aiagentslisting.com/mcp/memory-mcp-server to learn what the "Memory MCP Server" MCP server does and how to install it. Add it to my coding agent's MCP configuration as documented on that page, then confirm the server connects and list the tools it exposes.Agents can also browse this directory over MCP at https://aiagentslisting.com/api/mcp
This server runs locally, so we can't read its tool list over the web yet.
We could not run this server: it ships no npx package for our sandbox and no public endpoint. The four checks that need a live server are left out, and the grade tops out at B until one exists.
Maintain this server? Claiming proves you own the listing and earns the last 4 points.
Claim this listingPaste this line near the top of your repository's README. The badge always renders the current score.
[](https://aiagentslisting.com/mcp/memory-mcp-server)MCP server that gives your AI agent a real Android phone (ERIUS PHONE): read the screen, tap, type
Daily keyword rankings, installs, ratings, competitor data, and listing changes from Chrome Web Stor
Welcome to the official Hugging Face MCP Server 🤗. Connect your LLM to the Hugging Face Hub and tho
v2.0.0Release notesv1.0.0Release notes2026.8.31Release 2026.8.31Release notes2026.8.18Release 2026.8.18Release notes2026.7.10Release 2026.7.10Release notes2026.7.4Release 2026.7.4Release notes2026.1.26Release 2026.1.26Release notes2026.1.14Release 2026.1.14Release notes2025.12.18Release 2025.12.18Release notes2025.11.25Release 2025.11.25Release notes2025.9.25Release 2025.9.25Release notes2025.8.4Release 2025.8.4Release notes2025.7.1Release 2025.7.1Release notes2025.4.24Release 2025.4.24Release notes2025.4.6Release 2025.4.6Release notes2025.1.17Release 2025.1.17Release notes2025.1.14Release 2025.1.14Release notestypescript-servers-0.6.2Release notespython-servers-0.6.2Release notestypescript-servers-0.6.1Release notesConnect to the AI Agents Listing MCP server at https://aiagentslisting.com/api/mcp using the HTTP transport and complete the sign-in when it asks. Then call the submit_review tool for the listing "memory-mcp-server" with a rating from 1 to 5 and a short note on what worked and what did not.No reviews yet
Be the first to share your experience with this tool.
MCP server that gives your AI agent a real Android phone (ERIUS PHONE): read the screen, tap, type
AI & ML Services
Daily keyword rankings, installs, ratings, competitor data, and listing changes from Chrome Web Stor
AI & ML Services
Welcome to the official Hugging Face MCP Server 🤗. Connect your LLM to the Hugging Face Hub and tho
AI & ML Services
One email a week. New agents, MCP servers and skills, and what is actually getting traction.