项目简介

TG_MCP 是一个基于 Model Context Protocol (MCP) 的轻量级 Python 应用后端。它旨在将 TigerGraph 图数据库的操作(如查询、Schema 访问、数据插入/更新)封装成标准的 MCP 工具和资源,供支持 MCP 的 LLM 客户端(如 Claude Desktop)调用。这使得 LLM 能够通过结构化的方式与 TigerGraph 交互,从而实现基于图数据的智能问答、分析或操作。

主要功能点

  • Schema 探索: 允许 LLM 获取 TigerGraph 数据库的完整结构信息(顶点类型、边类型)。
  • 查询执行: 支持运行预安装的 GSQL 查询或执行任意 GSQL 语句,并传递参数。
  • 数据操作: 提供插入或更新顶点和边的功能。
  • 资源访问: 通过定义好的 URI(例如 'tgraph://vertex/...', 'tgraph://query/...')直接访问特定的图数据对象或查询结果。
  • 元数据获取: 列出数据库中可用的用户定义函数 (UDF) 和图算法。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/Muzain187/TG_MCP.git
    cd TG_MCP
  2. 创建并激活虚拟环境:
    python3 -m venv venv
    source venv/bin/activate
  3. 安装依赖:
    pip install .
    此步骤将安装项目及其依赖,包括必要的 'mcp' 库和 'pyTigerGraph' 库。

服务器配置

本 MCP 服务器需要连接到 TigerGraph 数据库。您需要提供 TigerGraph 的连接信息作为环境变量。在运行服务器之前,请设置以下环境变量:

export TG_HOST=https://<您的TigerGraph主机地址>
export TG_GRAPH=<您的图名称>
export TG_SECRET=<您的API Secret>

对于 MCP 客户端(如 Claude Desktop)配置该服务器,通常需要指定以下信息以便客户端启动并连接到服务器:

  • 服务器名称 (Name): 一个描述性的名称,例如 "TigerGraph MCP Server"。
  • 启动命令 (Command): 执行服务器入口脚本的命令,例如 'python'。
  • 启动参数 (Args): 传递给启动命令的参数,例如 'main.py'。
  • 环境变量 (Env): MCP 客户端应在启动服务器进程时设置上述 'TG_HOST', 'TG_GRAPH', 'TG_SECRET' 环境变量。
  • 传输协议 (Transport): 通常使用标准输入输出 ('stdio') 进行通信,这是 MCP 库的默认支持方式。

具体的配置方式取决于您使用的 MCP 客户端的用户界面或配置文件格式。

基本使用方法

  1. 完成上述安装和配置步骤。
  2. 将此 MCP 服务器添加到您的 MCP 客户端中。对于 Claude Desktop,可以使用命令 'uv run mcp install main.py'(注意这需要安装 'uv' 或确保 'mcp' CLI 可执行)。
  3. 重启 MCP 客户端。客户端应该能发现并列出由 TG_MCP 提供的 TigerGraph 相关工具(例如,在 Claude Desktop 的工具列表中)。
  4. 在与 LLM 交互时,通过自然语言或客户端提供的工具接口调用这些 TigerGraph 工具,LLM 将通过 MCP 协议请求服务器执行相应的 TigerGraph 操作并获取结果。例如,您可以要求 LLM "获取用户 'Alice' 的信息" (如果存在对应的顶点和查询工具),或者 "运行查询 'find_friends' 找出用户 'Bob' 的朋友"。

有关如何在特定客户端中使用工具的详细信息,请参考您所使用的 MCP 客户端的文档。

信息

分类

数据库与文件