项目简介
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) 和图算法。
安装步骤
- 克隆仓库:
git clone https://github.com/Muzain187/TG_MCP.git cd TG_MCP - 创建并激活虚拟环境:
python3 -m venv venv source venv/bin/activate - 安装依赖:
此步骤将安装项目及其依赖,包括必要的 'mcp' 库和 'pyTigerGraph' 库。pip install .
服务器配置
本 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 客户端的用户界面或配置文件格式。
基本使用方法
- 完成上述安装和配置步骤。
- 将此 MCP 服务器添加到您的 MCP 客户端中。对于 Claude Desktop,可以使用命令 'uv run mcp install main.py'(注意这需要安装 'uv' 或确保 'mcp' CLI 可执行)。
- 重启 MCP 客户端。客户端应该能发现并列出由 TG_MCP 提供的 TigerGraph 相关工具(例如,在 Claude Desktop 的工具列表中)。
- 在与 LLM 交互时,通过自然语言或客户端提供的工具接口调用这些 TigerGraph 工具,LLM 将通过 MCP 协议请求服务器执行相应的 TigerGraph 操作并获取结果。例如,您可以要求 LLM "获取用户 'Alice' 的信息" (如果存在对应的顶点和查询工具),或者 "运行查询 'find_friends' 找出用户 'Bob' 的朋友"。
有关如何在特定客户端中使用工具的详细信息,请参考您所使用的 MCP 客户端的文档。
信息
分类
数据库与文件