Skip to main content
Glama
Kartikk-26

Graphiti MCP Demo

by Kartikk-26

Made with Love Neo4j Docker License


πŸ“‘ Table of Contents


πŸ“– About

We are implementing an MCP server and AI agent integration to leverage Zep's Graphiti for persistent memory and context continuity across Cursor and Claude.

This setup allows AI agents to:
βœ… Connect to the MCP for dynamic tool discovery
βœ… Select the optimal tool for a query
βœ… Formulate responses with context continuity
βœ… Persist interactions in Neo4j as a knowledge graph


πŸ”„ Workflow of the Project

The workflow of this project shows how Cursor or Claude Desktop integrates with the MCP server and stores context in Graphiti memory (Neo4j):

  1. Developer sends a Query from Cursor IDE or Claude Desktop.

  2. The MCP Host connects to the MCP Server.

  3. The MCP Server makes tool calls (e.g., add_episode, search_nodes, clear_graph) to interact with Graphiti memory.

  4. Extracted context (documents, conversations, JSONs) is stored as structured data.

  5. This data flows into different layers of the Graphiti Memory Structure:

    • Level 1: Episodes β†’ Raw data like documents, conversations, JSONs

    • Level 2: Entities β†’ Nodes & relationships extracted from episodes

    • Level 3: Communities β†’ Clusters of entities with summaries

  6. The MCP Host sends the enriched context back to the developer as a response.

πŸ“½οΈ Workflow Demo

Workflow

βš™οΈ Setup

1️⃣ Clone GitHub Repository

git clone https://github.com/getzep/graphiti.git
cd graphiti/mcp_server

2️⃣ Install Dependencies

uv sync

3️⃣ Configure Environment

Create a .env file in graphiti/mcp_server:

# Neo4j Database Configuration
NEO4J_URI=bolt://localhost:7687
NEO4J_USER=neo4j
NEO4J_PASSWORD=demodemo

# OpenAI API Configuration
OPENAI_API_KEY=<your_openai_api_key>
MODEL_NAME=gpt-4.1-mini

πŸ–₯ Running MCP Server

Graphiti MCP server can be run using Docker or Python. Docker is recommended, but direct execution helps with troubleshooting.

▢️ Run with Docker

docker compose up

πŸ“Έ Docker Container Running Docker Up


▢️ Run with Python (for debugging)

uv run graphiti_mcp_server.py --model gpt-4.1-mini --transport sse

πŸ“Έ Graphiti SSE Output SSE Output


🀝 Integrating MCP Clients

πŸ”Ή Cursor

Add this to your mcp.json:

{
  "mcpServers": {
    "Graphiti": {
      "url": "http://localhost:8000/sse"
    }
  }
}

πŸ”Ή Claude

Update claude_desktop_config.json:

{
  "mcpServers": {
    "graphiti": {
      "transport": "stdio",
      "command": "/path/to/uv",
      "args": [
        "run",
        "--isolated",
        "--directory",
        "/path/to/graphiti/mcp_server",
        "--project",
        ".",
        "graphiti_mcp_server.py",
        "--transport",
        "stdio"
      ]
    }
  }
}

πŸ•Έ Verifying in Neo4j

Open the Neo4j browser β†’ http://localhost:7474/browser/

πŸ“Έ Connected Neo4j Browser Neo4j Browser

πŸ“Έ Data Stored in Neo4j Neo4j Data


πŸ”„ Final Output from Cursor β†’ Neo4j

Flow: Cursor Prompt ➝ MCP Server ➝ Neo4j Graph Storage

πŸ“Έ Final Cursor Output Sent to Neo4j Final Output


🀝 Contribution

Contributions are welcome!

  • Fork this repo

  • Create a new branch

  • Make changes & submit a PR


πŸ’‘ Connect with Me

Stay connected on LinkedIn for more projects, ideas, and collaborations:
Kartik Jain

Let’s build, learn, and grow together! πŸš€


F
license - not found
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kartikk-26/Graphiti-MCP-Demo'

If you have feedback or need assistance with the MCP directory API, please join our Discord server