Labsco
MCP SERVER

Neo4j Knowledge Graph Memory

by JovanHsu

The knowledge-graph memory interface backed by Neo4j, so entities, relations and observations live in a real graph database with Cypher underneath.

Agent Memory
Summary
Same memory contract as the reference server, with a graph database behind it.

This is the official Knowledge Graph Memory Server's interface pointed at Neo4j, which buys two things a file-backed store cannot: multi-hop traversal in Cypher, and the ability to open the graph in Neo4j Browser and look at what the assistant has actually been remembering. The cost is that you now run a database — the bundled docker-compose is the shortest way to that.

What it is

A memory server that stores an assistant's knowledge graph in Neo4j instead of a JSON file. Entities become labelled nodes, observations hang off them as HAS_OBSERVATION relationships, and relations between entities are typed edges.

What you get
  • create_entities stores a name, an entityType and a list of observations — the example in the README creates a person with typed observations attached
  • Full create, read, update and delete over entities, relations and observations
  • Search combines Neo4j's full-text index with Fuse.js fuzzy matching, so exact and partial hits come back ranked by relevance
  • Because the store is Neo4j, the same graph is traversable with Cypher and viewable in Neo4j's own visualisation tools
  • A docker-compose file brings up Neo4j and the server together
Requirements

Node.js 22.0.0 or newer and a Neo4j database, local or remote. Install the npm package @jovanhsu/mcp-neo4j-memory-server. Connection details come from NEO4J_URI (default bolt://localhost:7687), NEO4J_USER, NEO4J_PASSWORD and NEO4J_DATABASE.