Neo4j Data Modeling MCP Server 是一个基于模型上下文协议(MCP)的服务器应用,主要用于协助创建、验证和可视化图数据模型。MCP服务器是一种通过Docker容器运行的服务,旨在与AI应用(如Anthropic Claude Desktop)集成,提供特定领域的工具和功能。
什么是MCP服务器?
| 属性 | 详情 |
|---|---|
| Docker镜像 | mcp/neo4j-data-modeling |
| 作者 | neo4j-contrib |
| 代码仓库 | [***] |
| Dockerfile | [***] |
| 镜像构建者 | Docker Inc. |
| Docker Scout健康评分 | !Docker Scout Health Score |
| 签名验证命令 | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/neo4j-data-modeling --key [***] |
| 许可证 | MIT License |
bashdocker run -i --rm \ -e NEO4J_TRANSPORT=http \ -e NEO4J_MCP_SERVER_HOST=0.0.0.0 \ -e NEO4J_MCP_SERVER_PORT=8000 \ -e NEO4J_MCP_SERVER_PATH=/mcp/ \ mcp/neo4j-data-modeling
创建docker-compose.yml文件:
yamlversion: '3.8' services: neo4j-modeling-mcp: image: mcp/neo4j-data-modeling container_name: neo4j-modeling-mcp restart: unless-stopped ports: - "8000:8000" environment: - NEO4J_TRANSPORT=http - NEO4J_MCP_SERVER_HOST=0.0.0.0 - NEO4J_MCP_SERVER_PORT=8000 - NEO4J_MCP_SERVER_PATH=/mcp/
启动服务:
bashdocker-compose up -d
| 环境变量 | 类型 | 默认值 | 描述 |
|---|---|---|---|
NEO4J_TRANSPORT | 字符串 | http | 服务器通信协议(http/https) |
NEO4J_MCP_SERVER_HOST | 字符串 | 0.0.0.0 | 服务器绑定地址 |
NEO4J_MCP_SERVER_PORT | 整数 | 8000 | 服务器监听端口 |
NEO4J_MCP_SERVER_PATH | 字符串 | /mcp/ | MCP服务路径前缀 |
为确保镜像完整性和来源可靠性,建议使用cosign验证签名:
bashCOSIGN_REPOSITORY=mcp/signatures cosign verify mcp/neo4j-data-modeling --key [***]
| 工具名称 | 功能描述 |
|---|---|
export_to_arrows_json | 将数据模型导出为Arrows Web应用格式 |
get_constraints_cypher_queries | 生成数据模型约束创建Cypher查询 |
get_example_data_model | 获取预定义示例数据模型 |
get_mermaid_config_str | 生成数据模型的Mermaid可视化配置字符串 |
get_node_cypher_ingest_query | 生成节点数据导入Neo4j的Cypher查询 |
get_relationship_cypher_ingest_query | 生成关系数据导入Neo4j的Cypher查询 |
list_example_data_models | 列出所有可用示例数据模型及其描述 |
load_from_arrows_json | 从Arrows Web应用格式加载数据模型 |
validate_data_model | 验证整个数据模型的合法性 |
validate_node | 验证单个节点定义的合法性 |
validate_relationship | 验证单个关系定义的合法性 |
export_to_arrows_json功能:将数据模型转换为Arrows Web应用兼容的JSON格式,支持在Arrows中可视化编辑。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
data_model | string | 待导出的数据模型JSON |
返回值:Arrows格式的JSON字符串
get_constraints_cypher_queries功能:根据数据模型自动生成Neo4j约束创建Cypher语句,包括唯一性约束和存在性约束。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
data_model | string | 数据模型JSON字符串 |
返回值:约束创建Cypher查询列表
get_example_data_model功能:从内置模板库中获取指定行业的示例数据模型及对应的Mermaid配置。
支持的示例名称:
patient_journey(患者旅程)supply_chain(供应链)software_dependency(软件依赖)oil_gas_monitoring(油气监测)customer_360(客户360度视图)fraud_aml(欺诈与反洗***)health_insurance_fraud(***保险欺诈)参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
example_name | string | 示例模型名称 |
返回值:包含DataModel对象和Mermaid配置的字典
get_mermaid_config_str功能:生成数据模型的Mermaid配置字符串,可在支持Mermaid的应用(如Claude Desktop、Markdown编辑器)中渲染可视化图表。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
data_model | string | 数据模型JSON字符串 |
返回值:Mermaid配置字符串
get_node_cypher_ingest_query功能:生成参数化Cypher查询,用于将节点记录列表批量导入Neo4j数据库。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
node | string | 节点定义JSON字符串 |
返回值:参数化Cypher查询(使用$records参数接收节点数据列表)
get_relationship_cypher_ingest_query功能:生成参数化Cypher查询,用于将关系记录列表批量导入Neo4j数据库。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
data_model | string | 包含关系及节点定义的数据模型片段 |
relationship_end_node_label | string | 关系结束节点标签 |
relationship_start_node_label | string | 关系起始节点标签 |
relationship_type | string | 关系类型名称 |
返回值:参数化Cypher查询(使用$records参数接收关系数据列表,记录需包含sourceId和targetId字段)
list_example_data_models功能:列出所有内置示例数据模型的名称和详细描述。
参数:无
返回值:示例名称-描述映射字典
load_from_arrows_json功能:从Arrows Web应用导出的JSON格式加载数据模型。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
arrows_data_model_dict | object | Arrows格式的数据模型字典 |
返回值:标准化数据模型JSON字符串
validate_data_model功能:验证整个数据模型的语法和语义合法性,包括节点、关系定义及属性约束。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
data_model | string | 待验证的数据模型JSON字符串 |
return_validated | boolean | 可选(默认False),验证通过时是否返回标准化模型 |
返回值:
True(若return_validated=True则返回标准化模型)ValueError异常(包含详细错误信息)validate_node功能:验证单个节点定义的合法性,包括属性类型、约束条件等。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
node | string | 待验证的节点定义JSON字符串 |
return_validated | boolean | 可选(默认False),验证通过时是否返回标准化节点定义 |
返回值:
True(若return_validated=True则返回标准化节点定义)ValueError异常(包含详细错误信息)validate_relationship功能:验证单个关系定义的合法性,包括类型定义、属性约束及节点连接规则。
参数:
| 参数名 | 类型 | 描述 |
|---|---|---|
relationship | string | 待验证的关系定义JSON字符串 |
return_validated | boolean | 可选(默认False),验证通过时是否返回标准化关系定义 |
返回值:
True(若return_validated=True则返回标准化关系定义)ValueError异常(包含详细错误信息)为什么使用Docker运行MCP服务器更安全?

来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429