Memory MCP Server logo

Memory MCP Server

by evangstav

The Memory MCP Server is a Model Context Protocol server that provides knowledge graph functionality. It manages entities, relations, and observations in memory while enforcing strict validation rules to ensure data consistency.

View on GitHub

Last updated: N/A

What is Memory MCP Server?

The Memory MCP Server is a Python-based server that implements the Model Context Protocol (MCP) for managing a knowledge graph in memory. It allows users to create, retrieve, update, and delete entities, relations, and observations, while ensuring data integrity through strict validation rules.

How to use Memory MCP Server?

The server can be installed using the provided mcp install command. Once installed, you can interact with the server using the provided API calls, such as get_entity, get_graph, create_entities, add_observation, create_relation, search_memory, delete_entities, delete_relation, and flush_memory. Each call requires specific parameters, as shown in the code examples.

Key features of Memory MCP Server

  • In-memory knowledge graph management

  • Strict data validation rules for entities, relations, and observations

  • Support for various entity types and relation types

  • Search functionality with temporal and activity queries

  • API for creating, retrieving, updating, and deleting graph elements

Use cases of Memory MCP Server

  • Managing personal knowledge and notes

  • Building context-aware applications

  • Creating and maintaining product catalogs

  • Developing recommendation systems

FAQ from Memory MCP Server

What entity names are valid?

Entity names must start with a lowercase letter, can contain lowercase letters, numbers, and hyphens, have a maximum length of 100 characters, and must be unique within the graph.

What entity types are supported?

The supported entity types are: person, concept, project, document, tool, organization, location, and event.

What relation types are supported?

The supported relation types are: knows, contains, uses, created, belongs-to, depends-on, and related-to.

What error types does the server use?

The server uses the following error types: NOT_FOUND, VALIDATION_ERROR, INTERNAL_ERROR, ALREADY_EXISTS, and INVALID_RELATION.

How do I run the tests?

You can run the tests using the command pytest tests/.