Reverie MCP

Reverie keeps an AI agent's memory in a Neo4j graph: entities, typed relations, hybrid search and duplicate cleanup

  • 67 ★ on the repository
  • Last commit
  • MIT
MCP serverOfficial

Extended access

Why this level

  • Writes and deletes nodes and relations in your Neo4j database, and deletion is irreversible
  • Stores everything the agent recorded about people and projects, and with an external embedding provider embeddings are computed on its side
All reasons and checks

knowall-ai/mcp-reverie

Install

Manual install

npx -y @knowall-ai/reverie

Needs a reachable Neo4j; the address and password are set through NEO4J_URI and NEO4J_PASSWORD.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Writes and deletes nodes and relations in your Neo4j database, and deletion is irreversible
  • Stores everything the agent recorded about people and projects, and with an external embedding provider embeddings are computed on its side

This is third-party code. Review the repository files before installing.

What it does

Reverie is an MCP server that stores an agent's memory as a knowledge graph in Neo4j. In the graph nodes describe people, organisations, projects, places, meetings and decisions, and typed relations connect them, so a question like who we talked to at a football association is solved by walking the graph. The tools are simple and atomic: search_memories, create_memory, create_connection, update_memory, update_connection, delete_memory, delete_connection and list_memory_labels. Search is hybrid: by keyword, by meaning and by fuzzy name match, so Ben finds Benjamin. The query_memories tool runs read-only Cypher queries. The dream tool merges duplicates, canonicalises labels, re-embeds and flags nodes that have turned into a property dump. By default embeddings are computed locally with no key, and OpenAI, Azure OpenAI, Ollama or Voyage switch on through configuration. The reverie serve command runs the same server over HTTP with a token.

Who it is for. People building long-running agents with memory of people, projects and decisions who already run Neo4j on their own server or in a container.

Good fit when

  • An agent runs meetings and must remember who is linked to whom, what was decided and in which projects
  • Names are spelled in different ways and search must find Ben Wicks when the base has Benjamin Weeks
  • The notes graph has filled with duplicates over time and needs a nightly cleanup run
  • Several agents need the same memory, for example in Claude Desktop and OpenClaw
  • Data must stay on your server, so a local Neo4j and local embeddings fit

Not a fit when

  • There is nowhere to run Neo4j and you just need file-based memory: Markdown notes will do
  • You need one simple list of facts with no relations between entities
  • You need to store long texts in nodes: the server hints that the graph is for entities and relations and not for notes

Example request

Find everyone in memory connected to the Winnie project and show the relations two steps deep

MCP

Transport
stdio, http
Authentication
API key

Environment variables

NEO4J_URI required
Neo4j address, for example bolt://localhost:7687
NEO4J_USERNAME required
Neo4j user name
NEO4J_PASSWORD required, secret
Neo4j password
NEO4J_DATABASE
Neo4j database, neo4j by default
REVERIE_SERVE_TOKEN secret
Token for the reverie serve HTTP mode

Limitations

  • A running Neo4j is required (address, user name, password and database are set through NEO4J_* variables); the server does not start one.
  • The delete_memory tool irreversibly removes a node with all its relations.
  • The first semantic search downloads a local embedding model of about 23 MB.
  • The earlier package @knowall-ai/mcp-neo4j-agent-memory is superseded; install @knowall-ai/reverie.
  • In the reverie serve HTTP mode protection rests on a single REVERIE_SERVE_TOKEN token: only the health check is open.

How to disable. Remove the server from the client configuration, for example with claude mcp remove reverie. The data stays in your Neo4j database.

FAQ

How do I connect Reverie to Claude Desktop?

Add a mcpServers entry with the npx command and the -y @knowall-ai/reverie arguments, and pass NEO4J_URI, NEO4J_USERNAME, NEO4J_PASSWORD and NEO4J_DATABASE in env. A quick start without client setup: npx -y @knowall-ai/reverie.

Does Reverie need an OpenAI key?

No. Embeddings are computed locally by default and no key is needed. OpenAI, Azure OpenAI, Ollama or Voyage switch on through configuration. The local model downloads on the first semantic search, about 23 MB.

What does the dream tool do?

It safely merges duplicates, canonicalises labels, re-embeds, counts orphan nodes and flags those that have become a property dump. It can run on a schedule, for example nightly.

How do I search names with typos?

Use the fuzzy mode or keep the default hybrid: search considers spelling, prefixes and phonetics, so Ben Wicks finds Benjamin Weeks. For an exact check before creating a node use the exact mode.

How is Reverie different from the earlier package?

It replaces @knowall-ai/mcp-neo4j-agent-memory, the repository was renamed to mcp-reverie and old links redirect. Reverie added hybrid search, the dream tool and an HTTP mode.

Discussion

No questions or reviews yet.

Self-hosted agent memory: an MCP server stores facts and preferences and searches them with a Neo4j graph and citations.

MCP serverExtended access107Repository stars

Agent memory as a graph of linked facts: decisions and errors outlive the session, with no vector database or paid API calls

MCP serverExtended access244Repository stars

Self-hosted long-term memory for agents: semantic search, a knowledge graph and autonomous consolidation over MCP and a REST API

MCP serverExtended access2.1KRepository stars

A persistent memory MCP server for agents: observations, beliefs, goals and dream consolidation across 60 tools.

MCP serverExtended access51Repository stars
Official

Long-term memory for AI agents: a skill and the mindmemos command store facts from conversations and recall them in later sessions

SkillBroad access931Repository stars

AgentDB keeps agent memory in an .rvf file and, with 41 MCP tools, recalls past solutions while learning from feedback

MCP serverExtended access97Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
Reverie (this card)yesAPI key67
MCP Knowledge Graphnonot required888a knowledge graph in local .aim files, while Reverie keeps it in Neo4j with hybrid search and duplicate cleanup
Basic Memorynonot required4,566memory in local Markdown files with a graph of links, while Reverie stores typed entities in Neo4j

README in short

The README introduces Reverie as KnowAll AI's graph memory for agents, with a quick start through npx and a Claude Desktop configuration. It describes in detail the features, the philosophy that the model decides everything, search modes, memory tools, sample dialogues, memory types and advice on relations. It ends with tests, the MCP Inspector and the HTTP mode with environment variables.

README badge

Report a problem