Graphiti MCP Demo
🚀 Build Real-Time Knowledge Graphs for AI Agents
📑 Table of Contents
- About
- Workflow
- Setup
- Running MCP Server
- Integrating MCP Clients
- Verifying in Neo4j
- Final Output
- Contribution
- License
📖 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):
- Developer sends a Query from Cursor IDE or Claude Desktop.
- The MCP Host connects to the MCP Server.
- The MCP Server makes tool calls (e.g.,
add_episode,search_nodes,clear_graph) to interact with Graphiti memory. - Extracted context (documents, conversations, JSONs) is stored as structured data.
- 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
- The MCP Host sends the enriched context back to the developer as a response.
📽️ Workflow Demo
⚙️ 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
▶️ Run with Python (for debugging)
uv run graphiti_mcp_server.py --model gpt-4.1-mini --transport sse
📸 Graphiti 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
📸 Data Stored in Neo4j
🔄 Final Output from Cursor → Neo4j
Flow: Cursor Prompt ➝ MCP Server ➝ Neo4j Graph Storage
📸 Final Cursor Output Sent to Neo4j
🤝 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! 🚀
Metadata
Release files for iflow-mcp_kartikk-26-mcp-server 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iflow_mcp_kartikk_26_mcp_server-0.4.0.tar.gz | 3.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iflow_mcp_kartikk_26_mcp_server-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 7.3 kB
Release files / iflow_mcp_kartikk_26_mcp_server-0.4.0.tar.gz
| Download URL | iflow_mcp_kartikk_26_mcp_server-0.4.0.tar.gz |
|---|---|
| Size | 3.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
463904d59fe639c31a72eb7649e049759e0b30fb1bcf57a405ade56797cfa244
|
|
BLAKE2b-256 checksum How to use checksums |
305a35e2de7a13a7fac3323ed541323f178f4b606ab11d2d128da0b4070855b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / iflow_mcp_kartikk_26_mcp_server-0.4.0-py3-none-any.whl
| Download URL | iflow_mcp_kartikk_26_mcp_server-0.4.0-py3-none-any.whl |
|---|---|
| Size | 3.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d162e65e98f3e6145f64eeb4a6cd30055b5e8f47d3293c815192fb501d14bd79
|
|
BLAKE2b-256 checksum How to use checksums |
35366119ba45b1deede16ee8e04582bd06f68bebef4b540892f6e9b4ebc890c0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|