Dgraph Mcp Server

Dgraph Mcp Server

🚀 Dgraph MCP 服务器

这是一个借助 mcp-go 库实现的 Dgraph 图数据库的模型上下文协议(MCP)服务器,可助力大语言模型(LLM)应用程序与 Dgraph 数据库进行交互。

🚀 快速开始

此项目实现了与 Dgraph 数据库交互的 MCP 服务器,允许大语言模型(LLM)应用程序执行 DQL 查询、突变操作、修改架构以及获取当前架构等操作。

✨ 主要特性

  • 支持大语言模型(LLM)应用程序执行 DQL 查询。
  • 允许执行突变操作,对数据库数据进行修改。
  • 能够修改 Dgraph 数据库的架构。
  • 可以获取当前 Dgraph 数据库的架构。

📦 安装指南

先决条件

  • Go 1.18 或更高版本。
  • 运行中的 Dgraph 数据库(本地或远程)。

安装步骤

  1. 克隆此仓库。
  2. 安装依赖项:
go mod download

⚙️ 配置说明

服务器可以通过环境变量进行配置:

  • DGRAPH_HOST:Dgraph 服务地址(默认:localhost:9080

💻 使用示例

运行服务器

go run main.go

该服务器使用标准输入/输出与 LLM 应用程序通信。

可用工具

1. dgraph_query

对 Dgraph 执行 DQL 查询。

  • 参数
    • query(字符串,必填):要执行的 DQL 查询。
    • variables(对象,可选):查询中的变量。
  • 示例
{
"tool": "dgraph_query",
"params": {
"query": "{ me(func: has(name)) { name } }"
}
}

2. dgraph_mutate

对 Dgraph 执行突变操作。

  • 参数
    • mutation(字符串,必填):要执行的 RDF 突变。
    • commit(布尔值,可选):是否提交事务(默认:true)。
  • 示例
{
"tool": "dgraph_mutate",
"params": {
"mutation": "_:person  \"John Doe\" .",
"commit": true
}
}

3. dgraph_alter_schema

修改 Dgraph 的架构。

  • 参数
    • schema(字符串,必填):要应用的架构定义。
  • 示例
{
"tool": "dgraph_alter_schema",
"params": {
"schema": "name: string @index(exact) ."
}
}

可用资源

1. dgraph://schema

返回当前 Dgraph 架构。

集成到 LLM 应用程序中

此服务器可以与任何支持 MCP 协议的 LLM 框架集成。服务器通过标准输入/输出进行通信,使其与各种 LLM 工具框架集成变得简单易行。

示例查询

基本查询

{
people(func: has(name)) {
name
age
friends {
name
}
}
}

添加数据

_:alice  "Alice" .
_:alice  "30" .
_:bob  "Bob" .
_:bob  "32" .
_:alice  _:bob .

架构定义

name: string @index(exact) .
age: int .
friend: [uid] .

📄 许可证

本项目采用 MIT 许可证。

  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-23 15:12

相似服务问题