Knowledge Graph Memory Server logo

Knowledge Graph Memory Server

by edobez

This is a Python implementation of a persistent memory server using a local knowledge graph. It allows Claude to remember information about users across chats by storing entities, relations, and observations.

View on GitHub

Last updated: N/A

What is Knowledge Graph Memory Server?

This server is a Python port of a reference server that implements persistent memory using a local knowledge graph. It allows large language models like Claude to retain information about users and their interactions over time.

How to use Knowledge Graph Memory Server?

To use this server, you need to configure it within your Claude Desktop environment by adding it to the claude_desktop_config.json file. You can then interact with the server using the provided API tools to create entities, relations, and observations. The system prompt can be adjusted to influence the frequency and types of memories created.

Key features of Knowledge Graph Memory Server

  • Persistent memory storage using a knowledge graph

  • Entities, relations, and observations for structured data storage

  • API for creating, reading, updating, and deleting knowledge graph elements

  • Integration with Claude Desktop

  • Python implementation

Use cases of Knowledge Graph Memory Server

  • Personalized chat experiences

  • Remembering user preferences and behaviors

  • Tracking relationships between entities

  • Storing and retrieving information about events and organizations

FAQ from Knowledge Graph Memory Server

What is an entity?

Entities are the primary nodes in the knowledge graph, representing objects or concepts with a unique name, type, and list of observations.

What are relations?

Relations define directed connections between entities, describing how they interact or relate to each other.

What are observations?

Observations are discrete pieces of information about an entity, stored as strings and attached to specific entities.

How do I configure the server with Claude Desktop?

You need to add the server configuration to your claude_desktop_config.json file, specifying the command, arguments, and environment variables.

How do I test the server?

You can run unit tests using the command uv run pytest.