optimized-memory-mcp-server logo

optimized-memory-mcp-server

by AgentWong

This is a fork of a Python Memory MCP Server that uses SQLite for a backend. It implements a basic persistent memory using a local knowledge graph, allowing Claude to remember information across chats.

View on GitHub

Last updated: N/A

What is optimized-memory-mcp-server?

A Python Memory MCP Server that implements a persistent memory system using a local knowledge graph with SQLite as the backend. It's designed to allow Claude to retain information about users across multiple chat sessions.

How to use optimized-memory-mcp-server?

The server provides an API with tools for creating entities and relations, adding/deleting observations, reading the graph, and searching nodes. It can be integrated with Claude Desktop using Docker or NPX, as shown in the provided configuration examples. A system prompt example is provided to guide Claude in using the memory effectively.

Key features of optimized-memory-mcp-server

  • Persistent memory using a knowledge graph

  • SQLite backend for data storage

  • API for managing entities, relations, and observations

  • Integration with Claude Desktop

  • Tools for searching and retrieving information from the graph

Use cases of optimized-memory-mcp-server

  • Chat personalization by remembering user preferences

  • Building user profiles based on interactions

  • Tracking relationships between entities

  • Storing and retrieving facts about users and events

FAQ from optimized-memory-mcp-server

What are entities?

Entities are the primary nodes in the knowledge graph, representing people, organizations, or events. Each entity has a unique name, an entity type, and a list of observations.

What are relations?

Relations define directed connections between entities, describing how they interact or relate to each other. They are always stored in active voice.

What are observations?

Observations are discrete pieces of information about an entity, stored as strings and attached to specific entities. They should be atomic (one fact per observation).

How do I integrate this with Claude Desktop?

You can integrate the server with Claude Desktop by adding the appropriate configuration to your claude_desktop_config.json file, using either Docker or NPX as shown in the README.

How do I build the Docker image?

You can build the Docker image using the command docker build -t mcp/memory -f src/memory/Dockerfile .