首页
学习
活动
专区
圈层
工具
发布
MCP广场 >详情页
Neo4j连接器云托管2026-02-10407分享添加福利群:解决AI开发者的「MCP实战痛点」
该服务器启用了Neo4j数据库和Claude Desktop之间的交互,允许用户执行Cypher查询、创建节点以及在数据库中建立关系。
By da-okazaki
2026-02-10407
github
详情内容
工具描述

MCP Neo4j 服务器

smithery 徽章

一个 MCP 服务器,提供 Neo4j 图数据库与 Claude 桌面应用程序之间的集成,支持通过自然语言交互进行图数据库操作。

Neo4j Server MCP 服务器

快速开始

你可以直接使用 npx 运行这个 MCP 服务器:

npx @alanse/mcp-neo4j

或者将其添加到你的 Claude 桌面应用程序配置中:

{
  "mcpServers": {
    "neo4j": {
      "command": "npx",
      "args": ["@alanse/mcp-neo4j-server"],
      "env": {
        "NEO4J_URI": "bolt://localhost:7687",
        "NEO4J_USERNAME": "neo4j",
        "NEO4J_PASSWORD": "your-password",
        "NEO4J_DATABASE": "neo4j"
      }
    }
  }
}

功能

该服务器提供了与 Neo4j 数据库交互的工具:

Neo4j 企业版支持

该服务器现在支持连接到 Neo4j 企业版中的特定数据库。默认情况下,它连接到 "neo4j" 数据库,但你可以使用 NEO4J_DATABASE 环境变量指定不同的数据库。

工具

  • execute_query:在 Neo4j 数据库上执行 Cypher 查询

    • 支持所有类型的 Cypher 查询(读取、创建、更新、删除)
    • 以结构化格式返回查询结果
    • 可以传递参数以防止注入攻击
  • create_node:在图数据库中创建新节点

    • 指定节点标签和属性
    • 返回创建的节点及其内部 ID
    • 支持所有 Neo4j 数据类型的属性
  • create_relationship:在两个现有节点之间创建关系

    • 定义关系类型和方向
    • 为关系添加属性
    • 需要源节点和目标节点的 ID

安装

通过 Smithery 安装

要通过 Smithery 自动为 Claude 桌面应用程序安装 MCP Neo4j 服务器:

npx -y @smithery/cli install @alanse/mcp-neo4j-server --client claude

开发环境

  1. 克隆仓库:
git clone https://github.com/da-okazaki/mcp-neo4j-server.git
cd mcp-neo4j-server
  1. 安装依赖:
npm install
  1. 构建项目:
npm run build

配置

服务器需要以下环境变量:

  • NEO4J_URI:Neo4j 数据库 URI(默认:bolt://localhost:7687)
  • NEO4J_USERNAME:Neo4j 用户名(默认:neo4j)
  • NEO4J_PASSWORD:Neo4j 密码(必需)
  • NEO4J_DATABASE:Neo4j 数据库名称(默认:neo4j)- 用于连接到 Neo4j 企业版中的特定数据库

使用示例

以下是如何使用自然语言与 Neo4j 数据库交互的示例:

连接到特定数据库

对于拥有多个数据库的 Neo4j 企业版用户,你可以指定要连接的数据库:

{
  "env": {
    "NEO4J_URI": "bolt://localhost:7687",
    "NEO4J_USERNAME": "neo4j",
    "NEO4J_PASSWORD": "your-password",
    "NEO4J_DATABASE": "myCustomDatabase"
  }
}

这将连接到 "myCustomDatabase" 而不是默认的 "neo4j" 数据库。

查询数据

你可以提出如下问题:

  • “显示销售部门的所有员工”
  • “找出最年长的 5 位客户”
  • “谁在上个月购买了超过 3 种产品?”

示例:

用户:“显示销售部门的所有员工”

Claude:让我查询销售部门的员工。

[内部执行查询:MATCH (e:Employee)-[:WORKS_IN]->(d:Department {name: 'Sales'}) RETURN e.name, e.position]

结果:
- John Smith(销售经理)
- Sarah Johnson(销售代表)
- Mike Brown(客户经理)

创建数据

你可以给出如下指令:

  • “添加一个名为 John Doe 的新人,年龄 30 岁”
  • “创建一个名为 'Premium Coffee' 的产品,价格为 $24.99”
  • “添加一个名为 '研究与开发' 的新部门”

示例:

用户:“添加一个名为 John Doe 的新人,年龄 30 岁”

Claude:我将创建一个具有提供信息的新 Person 节点。

[内部创建节点,标签为 'Person',属性为 {name: 'John Doe', age: 30}]

结果:创建了 ID 为 123 的新人节点

创建关系

你可以请求如下关系:

  • “让 John Doe 与 Jane Smith 成为朋友”
  • “将产品 A 设置为产品 B 的组件”
  • “将 John Doe 分配到销售部门”

示例:

用户:“让 John Doe 与 Jane Smith 成为朋友”

Claude:我将在这两个人之间创建一个朋友关系。

[内部创建关系:MATCH (a:Person {name: 'John Doe'}), (b:Person {name: 'Jane Smith'})
CREATE (a)-[:FRIENDS_WITH {since: '2024-01-05'}]->(b)]

结果:在 John Doe 和 Jane Smith 之间创建了朋友关系

复杂操作

你可以通过自然语言执行更复杂的操作:

  • “找出所有居住在纽约的客户购买的产品”
  • “显示 John Doe 的朋友的朋友”
  • “计算每个部门员工的平均年龄”

示例:

用户:“找出所有居住在纽约的客户购买的产品”

Claude:我将查询数据库以获取此信息。

[内部执行查询:
MATCH (c:Customer {city: 'New York'})-[:PURCHASED]->(p:Product)
RETURN c.name, collect(p.name) as products]

结果:
- Alice Wilson: [Premium Coffee, Tea Set, Cookies]
- Bob Miller: [Premium Coffee, Water Bottle]

测试

运行测试套件:

npm test

许可证

MIT

连接服务
Server已在腾讯云托管,可在连接后免费调用和在线进行工具测试~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档