Neo4j MCP Server - 图数据库自然语言接口
简介
Neo4j MCP Server 是 Neo4j 官方推出的 Model Context Protocol 服务器实现,为领先的图数据库 Neo4j 提供了强大的自然语言查询和管理接口。这个服务器使用 Go 语言开发,提供了 Schema 内省、Cypher 查询执行等核心功能,让 AI 助手能够直接与图数据库进行交互。无论是探索复杂的关系网络、执行图遍历查询,还是创建和修改图结构,都可以通过自然语言指令轻松完成。该项目目前处于 Beta 阶段,支持 Neo4j Aura、Desktop 和 Self-managed 等多种部署方式,并与 VS Code 和 Claude Desktop 完美兼容。
核心特性
- Schema 内省 - 自动发现和展示图数据库的标签、关系类型和属性键
- 只读 Cypher 查询 - 安全地执行图遍历和模式匹配查询,无修改风险
- 写入 Cypher 查询 - 支持创建、更新和删除节点与关系的完整写入能力
- APOC 插件集成 - 需要 APOC 插件支持,提供扩展的图算法和工具函数
- 多部署支持 - 兼容 Neo4j Aura、Desktop 和 Self-managed 实例
- IDE 集成 - 与 VS Code 和 Claude Desktop 无缝集成,提供流畅开发体验
- Go 语言实现 - 100% Go 语言编写,性能优异且易于部署
- 安全性优先 - 建议使用受限权限账户,特别是使用写入功能时
工具列表
Schema 管理工具
get-schema
描述: 内省图数据库的完整 Schema,获取所有节点标签、关系类型和属性键的详细信息
参数: 无需参数
功能说明:
- 列出所有节点标签(Labels)及其属性
- 列出所有关系类型(Relationship Types)及其属性
- 显示属性键(Property Keys)的数据类型
- 为 AI 提供图结构上下文,帮助生成准确的 Cypher 查询
查询工具
read-cypher
描述: 执行只读的 Cypher 查询,安全地检索图数据,不会修改数据库
参数:
query(string): Cypher 查询语句(只读操作,如 MATCH、RETURN)[必需]
功能说明:
- 执行 MATCH、RETURN、WHERE 等只读操作
- 支持复杂的图遍历和模式匹配
- 使用聚合函数统计图数据
- 安全模式,不会对数据库造成任何修改
write-cypher
描述: 执行具有写入能力的 Cypher 查询,可以创建、更新或删除图数据
参数:
query(string): Cypher 查询语句(可包含 CREATE、MERGE、SET、DELETE 等修改操作)[必需]
安全警告:
- 此工具具有修改数据库的能力,使用需谨慎
- 强烈建议使用只读或受限权限的数据库用户
- 在生产环境中应限制此工具的使用
- 执行前建议先在测试环境验证查询
Prompts 示例
Neo4j MCP Server 提供了一些自然语言提示示例,帮助用户快速上手:
- “我的 Neo4j 实例包含什么?列出所有节点标签、关系类型和属性键。” - 探索数据库 Schema
- “在我的 Neo4j 实例中查找所有 Person 节点及其关系。” - 查询特定类型的节点和关系
- “在我的 Neo4j 实例中创建一个名为 ‘John’ 的新 User 节点。” - 创建新节点
配置方式
VS Code 配置
1 | { |
Claude Desktop 配置
1 | { |
环境变量说明
- NEO4J_URI: Neo4j 实例的连接 URI(通常使用 bolt:// 协议)
- NEO4J_USERNAME: Neo4j 数据库用户名
- NEO4J_PASSWORD: Neo4j 数据库密码
- NEO4J_DATABASE: 要连接的数据库名称(默认为 “neo4j”)
Neo4j Aura 配置
1 | # Aura 实例使用 neo4j+s:// 协议 |
使用示例
1 | # 安装(从 GitHub Releases 下载二进制文件) |
自然语言查询示例
1 | # 探索 Schema |
实际应用场景
社交网络分析 - 分析用户关系、发现社区、识别影响力节点,优化社交推荐算法
知识图谱查询 - 探索实体之间的复杂关系,回答多跳推理问题,构建智能问答系统
欺诈检测 - 识别异常交易模式、发现欺诈环路、追踪可疑关系链
推荐系统 - 基于用户和物品的关系图,生成个性化推荐,提高推荐准确度
供应链管理 - 可视化和分析供应链网络,识别瓶颈和风险节点
网络安全 - 追踪攻击路径、分析依赖关系、识别安全漏洞传播链
组织架构分析 - 分析企业组织结构、发现关键人物、优化沟通路径
技术实现
Neo4j MCP Server 使用 Go 语言实现,体现了对性能和部署便捷性的重视:
- Go 语言高性能 - 100% Go 语言实现,编译成单一二进制文件,部署简单
- 并发处理能力 - 利用 Go 的 goroutine 实现高效的并发查询处理
- 内存安全 - Go 的垃圾回收和类型系统确保运行时安全
- 官方 Neo4j 驱动 - 使用 Neo4j 官方 Go 驱动,确保协议兼容性和稳定性
- APOC 集成 - 需要 APOC 插件支持,提供扩展的图算法和实用函数
- 安全性设计 - 提供只读和写入两个独立工具,便于权限控制
- 多环境支持 - 统一接口支持 Aura、Desktop 和 Self-managed 部署
- 轻量级部署 - 单一可执行文件,无需额外依赖,容器友好
该服务器的设计哲学是提供简单但强大的图数据库访问能力,让 AI 能够理解和操作复杂的图结构。
Beta 阶段注意事项
⚠️ 重要: 此项目目前处于 BETA 阶段,正在积极开发中
- 非生产环境 - 不建议在生产环境中使用,功能和 API 可能会变化
- 谨慎使用写入功能 - write-cypher 工具具有修改数据库的能力,使用需谨慎
- 建议使用只读账户 - 在探索和测试阶段,建议使用只读权限的数据库用户
- APOC 依赖 - 确保 Neo4j 实例已安装 APOC 插件
- 反馈欢迎 - 欢迎通过 GitHub Issues 报告问题和提供反馈
获取方式
- GitHub: https://github.com/neo4j/mcp
- GitHub Releases: 下载预编译的二进制文件
- 安装方式:
- 从 Releases 页面下载对应平台的二进制文件
- 赋予执行权限:
chmod +x neo4j-mcp - 移动到系统路径:
sudo mv neo4j-mcp /usr/local/bin/ - 验证安装:
neo4j-mcp --version
- 系统要求:
- Neo4j 数据库实例(Aura/Desktop/Self-managed)
- APOC 插件已安装和启用
- 有效的数据库访问凭据
相关资源
- GitHub Releases: github.com/neo4j/mcp/releases
- 贡献指南: github.com/neo4j/mcp/CONTRIBUTING.md
- Neo4j 文档: neo4j.com/docs
- Cypher 查询语言: 学习 Cypher 语法和最佳实践
- APOC 文档: neo4j.com/labs/apoc
- Neo4j 社区: 加入 Neo4j 社区论坛和 Discord 频道
- 图算法库: 探索 Neo4j 图数据科学库