Skip to main content
MCP server CX Codex

Reverie — Claude Code MCP server: Neo4j graph memory for agents

Keeps an agent's memory in a Neo4j graph: typed entities, links between them, and hybrid search over names, keywords and meaning.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env NEO4J_URI=<NEO4J_URI> --env NEO4J_USERNAME=<NEO4J_USERNAME> --env NEO4J_PASSWORD=<NEO4J_PASSWORD> --env NEO4J_DATABASE=<NEO4J_DATABASE> --env REVERIE_EMBEDDINGS=<REVERIE_EMBEDDINGS> --transport stdio reverie -- npx -y @knowall-ai/reverie
Open on GitHub

What Reverie does

Reverie stores what an agent knows as a graph. People, organisations, projects, places and decisions are nodes, and the links between them carry types. Asking which contacts at a given organisation were involved with a project becomes a walk through the graph instead of a similarity lookup. The server speaks MCP, so Claude, Codex, Cursor, Copilot, Windsurf, Cline and Zed can all point at the same graph.

search_memories has five modes: hybrid by default, plus keyword, semantic, fuzzy and exact. Fuzzy matching copes with names typed as they sound, so a search for “Ben Wicks” can surface “Benjamin Weeks”. Strictness is tuned with similarity_threshold (default 0.4, values outside 0–1 are rejected) and fuzzy_threshold (default 0.85).

A dream tool does maintenance: it merges duplicates, normalises labels, recomputes embeddings and marks nodes that have turned into property dumps. Nothing gets written without a reachable Neo4j instance, so NEO4J_URI, NEO4J_USERNAME and NEO4J_PASSWORD are needed before the first run. Embeddings are computed locally by default, no API key involved; OpenAI, Azure OpenAI, Ollama or Voyage are picked through REVERIE_EMBEDDINGS. Your data stays on your own machine unless you choose a remote embedding provider.

What it helps with

  • find a contact whose name was stored differently
  • trace how a project connects to people and decisions
  • clean up duplicate nodes and stray labels
  • run an exact lookup before writing a new memory
  • keep semantic search usable when embeddings fail

Example prompts for the agent

  • Search memory for everyone tied to the Winnie project and show me how they connect
  • Run an exact check for Ben Weeks before you create a new memory
  • Run dream and list the nodes that have become property dumps

How to install Reverie

Platform CLI

claude mcp add --env NEO4J_URI=<NEO4J_URI> --env NEO4J_USERNAME=<NEO4J_USERNAME> --env NEO4J_PASSWORD=<NEO4J_PASSWORD> --env NEO4J_DATABASE=<NEO4J_DATABASE> --env REVERIE_EMBEDDINGS=<REVERIE_EMBEDDINGS> --transport stdio reverie -- npx -y @knowall-ai/reverie

Replace <…> with your own values

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about Reverie

How do I install Reverie in Claude Code?

Add it as an MCP server with `claude mcp add reverie -e NEO4J_URI=<NEO4J_URI> -e NEO4J_USERNAME=<NEO4J_USERNAME> -e NEO4J_PASSWORD=<NEO4J_PASSWORD> -- npx -y @knowall-ai/reverie. The longer form adds --env variables for the database and embeddings: claude mcp add --env NEO4J_URI=<NEO4J_URI> --env NEO4J_USERNAME=<NEO4J_USERNAME> --env NEO4J_PASSWORD=<NEO4J_PASSWORD> --env NEO4J_DATABASE=<NEO4J_DATABASE> --env REVERIE_EMBEDDINGS=<REVERIE_EMBEDDINGS> --transport stdio reverie -- npx -y @knowall-ai/reverie`.

What does Reverie do?

It gives an agent a persistent graph memory in Neo4j: typed nodes, typed relationships, and hybrid search that blends keyword, semantic and fuzzy name matching. The dream tool keeps the graph tidy.

Does search require an API key?

No. Embeddings are local by default. Switching to OpenAI, Azure OpenAI, Ollama or Voyage is done through REVERIE_EMBEDDINGS.

Similar MCP servers

All MCP servers for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor