📘 应用MCP Server在Neo4j(图形数据库)中插入节点和关系
一个项目,通过MCP接受来自Claude Desktop的自然语言(NL)查询,并使用GPT-4o+LangChain提取结构化节点信息并将其存储在Neo4j数据库中。
______________________________________________________________________
🚀 特性
- Neo4j图形数据库:存储从NL输入中提取的节点。
- MCP服务器(FastMCP):提供LLM可公开工具
createNode. - LangChain+GPT‑4o:将NL解析为结构化
Neo4jNode. - Claude桌面集成:使用MCP协议以交互方式调用您的工具。
______________________________________________________________________
🛠️ 先决条件
- Python 3.10+
- Neo4j社区或企业版(本地或通过Aura)
- 已安装Claude Desktop
uvCLI(可选,但有助于运行MCP应用程序)
______________________________________________________________________
🗄️ 第一步:安装并设置Neo4j
- 下载并安装Neo4j桌面版 从 neo4j.com.
- 创建新数据库 使用Neo4j桌面UI或Neo4j浏览器:
CREATE DATABASE mydb IF NOT EXISTS;- 设置凭据 在创作过程中(
neo4j用户名和密码)。
- 获取螺栓连接URI,通常:
bolt://localhost:7687______________________________________________________________________
🧩 第二步:项目配置
- 克隆或创建此项目目录。
- 创建一个
.env项目根目录中的文件:
uri=bolt://localhost:7687
username=neo4j
pwd=your_password- 安装依赖项:
pip install neo4j neo4j_graphrag langchain langchain-core langchain-openai mcp python-dotenv______________________________________________________________________
🧱 步骤3:代码概述
这 server.py 文件包括:
- 使用LangChain的快速定义
PromptTemplate和PydanticOutputParser - 使用GPT-4o将NL转换为结构化节点的工具链
FastMCP服务器暴露createNode工具- Neo4jWriter用于持久化图节点
______________________________________________________________________
🧪 步骤4:运行MCP服务器
您可以直接使用Python运行MCP服务器:
fastmcp install server.py或可选使用 uv:
uv add mcp
uv run python server.py______________________________________________________________________
💬 步骤5:与Claude Desktop(客户端)一起使用
- 启动克劳德桌面。
- 将其连接到正在运行的MCP服务器(通过标准I/O或HTTP)。
- 发送以下消息:
Create a person node with name Alice and age 30- 该工具将:
- 生成一个 Neo4jNode 来自GPT‑4o
- 将其写入Neo4j数据库
- 回复:
✅ Node successfully added to db — Label: Person, Properties: name:Alice, age:30______________________________________________________________________
🔍 步骤6:检查Neo4j中的数据
您可以使用Neo4j浏览器或Neo4j Bloom浏览创建的节点:
MATCH (n) RETURN n;______________________________________________________________________
🔧 第7步:自定义和扩展
- 添加更多工具(例如。,
createRelationship,queryGraph) - 集成FastAPI或Gradio UI进行用户交互
- 使用Claude通过MCP进行结构化函数调用
______________________________________________________________________
📚 参考文献
______________________________________________________________________
✅ 总结
该项目汇集了:
- 💬 自然语言→ Graph GPT‑4o
- 📡 MCP工具 暴露于克劳德桌面
- 🌐 Neo4j 用于持久图形存储
- 🔁 完全可扩展的基于图的RAG架构
______________________________________________________________________
对于任何问题或想法,请随时打开问题或公关!
