使用说明

项目简介

Token API MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在为大型语言模型(LLM)应用提供实时的 Token 数据访问能力和 SQL 查询工具。它通过标准化的 MCP 协议与客户端通信,允许 LLM 应用安全、可扩展地获取链上 Token 信息,并利用 SQL 工具进行更深入的数据分析。

主要功能点

  • 资源 (Resources): 提供预定义的 SQL 查询,例如查询 Token 持有者、余额、交易记录等,方便 LLM 客户端快速获取链上数据。
  • 工具 (Tools): 集成 ClickHouse 数据库操作工具,允许 LLM 客户端执行 SQL 查询,包括列出数据库、表、描述表结构以及运行自定义查询,增强数据探索和分析能力。
  • Prompt 模板 (Prompts): 提供查询指导 Prompt,帮助 LLM 客户端更好地组织和构建针对 Token 数据的查询请求。
  • 实时 Token 数据: 基于 The Graph Substreams 提供实时 Token 数据,确保数据的新鲜度和准确性。
  • 多链支持: 支持 EVM 链(Ethereum, Base, Arbitrum, BSC 等),未来计划支持 SVN (Solana) 和 Antelope 链。
  • SSE 传输协议: 使用 Server-Sent Events (SSE) 作为 MCP 服务器的传输协议,实现高效的实时数据推送。
  • 可配置性: 通过环境变量灵活配置 API 端口、MCP 服务器端口、数据库连接信息等。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/pinax-network/token-api.git
    cd token-api
  2. 安装依赖: 确保已安装 Bun,然后运行:

    bun install
  3. 配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',根据需要修改其中的配置项,例如数据库连接信息、端口号等。

    cp .env.example .env
    # 编辑 .env 文件
    nano .env

服务器配置 (MCP 客户端配置)

MCP 客户端需要配置以下 JSON 信息以连接到 Token API MCP Server:

{
  "serverName": "TokenAPI-MCP",
  "command": "bun",
  "args": ["dev"],
  "transport": {
    "type": "sse",
    "config": {
      "endpoint": "sse", // SSE 端点,对应 .env 文件中的 SSE_ENDPOINT 配置,默认为 sse
      "url": "http://localhost:8080" // MCP 服务器 SSE 地址,端口对应 .env 文件中的 SSE_PORT 配置,默认为 8080
    }
  }
}

参数注释:

  • 'serverName': MCP 服务器的名称,可以自定义。
  • 'command': 启动 MCP 服务器的命令,这里使用 'bun dev' 运行开发模式。生产环境可以使用 'bun start' 或者 Docker 部署。
  • 'args': 启动命令的参数,当前示例中没有参数。
  • 'transport.type': 传输协议类型,这里配置为 'sse' (Server-Sent Events)。
  • 'transport.config.endpoint': SSE 端点路径,与服务器配置的 'SSE_ENDPOINT' 一致。
  • 'transport.config.url': MCP 服务器的 SSE 基地址,协议和主机名根据实际部署情况修改,端口号需与服务器配置的 'SSE_PORT' 一致。

注意: 实际部署时,'url' 应指向 MCP 服务器的实际地址和端口,例如 'http://your-server-ip:8080'。

基本使用方法

  1. 启动 MCP 服务器: 在仓库根目录下运行以下命令启动服务器:

    bun dev

    或者使用 Docker 启动:

    docker run -it --rm --env-file .env -p 8000:8000 -p 8080:8080 ghcr.io/graphprotocol/token-api:develop
  2. 配置 MCP 客户端: 在 MCP 客户端中,根据 "服务器配置" 章节的 JSON 信息配置连接到 Token API MCP Server。

  3. 使用 MCP 客户端与服务器交互:

    • 发现能力: MCP 客户端连接服务器后,可以自动发现服务器提供的 Resources, Tools, Prompts。
    • 访问资源: 客户端可以使用 Resource URI (例如 'file:///sql/balances_for_account/evm.sql') 获取预定义的 SQL 查询。
    • 调用工具: 客户端可以调用 Tools (例如 'run_query') 执行 SQL 查询,并获取数据库操作结果。
    • 使用 Prompt 模板: 客户端可以参考 Prompt 模板 (例如 'native_token_queries') 来构建更有效的查询请求。

具体 MCP 客户端的操作方式请参考您使用的 MCP 客户端的文档。

信息

分类

网页与API