资讯详情

资讯详情

如何将 Graphiti MCP 服务器以 stdio 方式接入 Claude Desktop?

如何将 Graphiti MCP 服务器以 stdio 方式接入 Claude Desktop【免费下载链接】graphitiBuild Real-Time Knowledge Graphs for AI Agents项目地址: https://gitcode.com/GitHub_Trending/grap/graphitiClaude Desktop 只支持 stdio 传输而 Graphiti MCP 服务器默认使用 HTTP 传输http://localhost:8000/mcp/无法直接填一个 URL 连进去。本文的目标是把仓库mcp_server/目录下的 Graphiti MCP 服务器作为本地进程启动通过uv run main.py --transport stdio的方式接入 Claude Desktop使其能够调用 Graphiti 的知识图谱工具add_memory、search_nodes、get_status等。适用前提机器上已安装 Python 3.10独立运行 MCP 服务器时需要、uv有一个可用的 LLM API Key如 OpenAI以及一个图数据库默认 FalkorDB或 Neo4j 5.26 及以上。准备环境按 mcp_server/README.md 的 Quick Start 与 Setup 小节stdio 客户端需要三步准备克隆仓库并记下mcp_server所在目录的完整路径git clone https://github.com/getzep/graphiti.git cd graphiti pwd安装uv如未安装并在mcp_server目录创建虚拟环境、安装依赖# Install uv if you dont have it already curl -LsSf https://astral.sh/uv/install.sh | sh # Create a virtual environment and install dependencies in one step uv sync # Optional: Install additional LLM providers (anthropic, gemini, groq, voyage, sentence-transformers) uv sync --extra providersuv sync需要在graphiti/mcp_server目录下执行。如果之后还要用 Anthropic、Gemini 等 LLM 或 Voyage 等嵌入服务再执行带--extra providers的安装。准备好 API Key 和图数据库LLM默认配置使用 OpenAI模型gpt-5.5需要准备OPENAI_API_KEY也可以换用anthropic、gemini、groq、azure_openai等 provider。数据库README 中 CLI 参数说明--database-provider的默认值是falkordb连接redis://localhost:6379。要改用本地已有的 Neo4j则按 README「Direct Execution with Existing Neo4j」一节准备 Neo4j 并设置NEO4J_URI、NEO4J_USER、NEO4J_PASSWORD环境变量。配置 Claude Desktop 的 stdio 接入仓库提供了现成的 stdio 接入配置示例 mcp_server/config/mcp_config_stdio_example.json核心内容如下{ mcpServers: { graphiti: { transport: stdio, command: uv, args: [ run, /ABSOLUTE/PATH/TO/main.py, --transport, stdio ], env: { NEO4J_URI: bolt://localhost:7687, NEO4J_USER: neo4j, NEO4J_PASSWORD: demodemo, OPENAI_API_KEY: ${OPENAI_API_KEY}, MODEL_NAME: gpt-5.5 } } } }按 README「For Claude Desktop and otherstdioonly clients」与「Integrating with MCP Clients」两节的说明把它写进 Claude Desktop 的配置文件README 称该文件通常为claude_desktop_config.json若已有mcpServers条目把graphiti作为新 key 加进去。两处占位符需要替换为你机器上的真实值/ABSOLUTE/PATH/TO/main.py替换为仓库中mcp_server/main.py的绝对路径即上面pwd得到的graphiti目录下再进入mcp_server/main.py。README 特别强调「Ensure that you set the full path to theuvbinary and your Graphiti project folder」所以command建议写成uv的完整路径README 示例为/Users/user/.local/bin/uv请替换成你机器上uv的实际路径例如用which uv查询。${OPENAI_API_KEY}替换为你的 OpenAI API Key 字面值。env中的NEO4J_URI、NEO4J_USER、NEO4J_PASSWORD是官方示例给出的 Neo4j 连接值bolt://localhost:7687、neo4j、demodemo为示例默认值如果你的 Neo4j 密码不同请一并修改MODEL_NAME: gpt-5.5对应默认配置 mcp_server/config/config.yaml 中的llm.model可换成你的模型名。两点边界说明上述 env 指向 Neo4j而服务器默认 provider 是 FalkorDB。如果你的后端确实是 Neo4j参照 README 的直接执行方式在args中追加--database-provider、neo4j该参数在 README「Available Command-Line Arguments」中有列出默认值为falkordb如果就用默认 FalkorDB则保证本地redis://localhost:6379可达即可。README 的「Other MCP Clients」小节还给出了另一种等价写法在args中使用run --isolated --directory mcp_server 目录 --project . main.py --transport stdio适用于不想写main.py绝对路径的场景。配置完成后重启 Claude DesktopREADME 明确说明需要重启才会生效。验证接入是否成功方式一通过get_status工具验证推荐。在 Claude Desktop 中让助手调用get_status工具。该工具的定义见 src 入口会执行一次数据库查询并返回成功时返回statusok消息形如Graphiti MCP server is running and connected to provider databaseprovider 为falkordb或neo4j服务未初始化时返回statuserror消息为Graphiti service not initialized数据库不通时返回statuserror消息为Graphiti MCP server is running but database connection failed: 错误信息。看到ok即说明 stdio 进程、LLM 配置与数据库连接都已打通。方式二运行仓库自带的 stdio 测试脚本可选。mcp_server/tests/test_stdio_simple.py 就是一个用 MCP SDK 的stdio_client以 stdio 方式拉起服务器的完整客户端它启动uv run ../main.py --transport stdio初始化会话、列出工具、调用add_memorygroup_id为test_group和search_memory_nodes。该脚本依赖当前环境变量中的NEO4J_URI/NEO4J_USER/NEO4J_PASSWORD/OPENAI_API_KEY有默认值Neo4j 密码默认为graphiti因此需要先有一个可用的 Neo4j 实例。全部通过时脚本打印✅ All tests completed successfully!此为脚本自身的输出文本失败则打印❌ Test failed: 异常信息并退出码为 1。已知限制与排查Claude Desktop 不支持 HTTP 传输README 指出「Claude Desktop does not natively support HTTP transport」。所以即使你用docker compose up跑好了默认 HTTP 服务器也不能把http://localhost:8000/mcp/直接填给 Claude Desktop必须走本文的 stdio 本地进程方式HTTP 端点适合 Cursor、VS Code 等支持 HTTP 的客户端。429 限流每个 episode 的入库会触发多次 LLM 调用并发由环境变量SEMAPHORE_LIMIT控制默认10README 称适合 OpenAI Tier 3、中档 Anthropic 配额。若 Claude Desktop 里添加记忆时出现 429 限流错误按 README 的 provider 分档建议调低该值例如 OpenAI Tier 1 设为 1–2Anthropic 默认档设为 5–8写进mcp_server目录的.env文件。遥测MCP 服务器初始化时会上报匿名使用统计不含个人数据、API Key 或图内容。不需要时设置GRAPHITI_TELEMETRY_ENABLEDfalse可写入.env。数据库连接失败的自查README 测试文档给出了两个检查命令——Neo4j 用curl http://localhost:7474确认服务在线FalkorDB 用redis-cli ping。若get_status返回database connection failed先确认对应数据库进程确实在运行、env里的 URI/账号与之一致。完成以上步骤后Claude Desktop 会话中的 Graphiti 服务器就处于可用状态get_status返回ok是接入成功的直接判据日常使用时即可让 Claude Desktop 调用add_memory写入对话或文档、用search_nodes/search_memory_facts查询知识图谱。【免费下载链接】graphitiBuild Real-Time Knowledge Graphs for AI Agents项目地址: https://gitcode.com/GitHub_Trending/grap/graphiti创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
觉得有用,分享给同行:

为您的企业打造数字门面

稳重轻奢商务风格,端正雅致视觉,长效耐看不易过时。

立即咨询 →