MCP 服务器

TronGrid MCP 服务器把 TRON 链上能力封装为 MCP 标准工具,供 Claude、Cursor、自定义 Agent 等 AI 客户端调用。

TronGrid MCP 服务器。把 TRON 链上能力封装为 MCP 标准工具,供 AI 客户端(Claude、Cursor、自定义 Agent 等)调用。

TronGrid MCP 服务器指南

1. 简介

TronGrid MCP 服务器是一项基于 Model Context Protocol(MCP) 的服务,它将 TRON 区块链上的查询与操作能力封装为标准化的 MCP 工具。这使 AI 客户端(如 Claude、Cursor、自定义 Agent 等)能够直接与 TRON 网络进行交互。

2. 快速入门

MCP 服务 URL

环境URL
生产环境https://mcp.trongrid.io/mcp

协议

  • MCP 协议版本:2025-11-25
  • 传输协议:Streamable HTTP

3. 客户端配置

3.1 Claude Desktop

编辑配置文件:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "trongrid": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.trongrid.io/mcp"
      ]
    }
  }
}

传入 API key:

{
  "mcpServers": {
    "trongrid": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.trongrid.io/mcp",
        "--header",
        "TRON-PRO-API-KEY:<your-api-key>"
      ]
    }
  }
}

3.2 Claude Code

方式一:CLI 命令

claude mcp add --transport http trongrid https://mcp.trongrid.io/mcp

方式二:项目配置文件

在项目根目录创建 .mcp.json

{
  "mcpServers": {
    "trongrid": {
      "type": "http",
      "url": "https://mcp.trongrid.io/mcp"
    }
  }
}

4. MCP 协议基础

MCP 使用 Streamable HTTP 进行传输,所有通信均通过 POST /mcp endpoint 完成。协议是有状态的,需要按顺序完成握手:

┌──────────┐                      ┌──────────┐
│  Client  │                      │  Server  │
└────┬─────┘                      └────┬─────┘
     │  1. initialize                  │
     │ ──────────────────────────────► │
     │ ◄── mcp-session-id ──────────── │
     │                                 │
     │  2. notifications/initialized   │
     │ ──────────────────────────────► │
     │ ◄── 202 Accepted ────────────── │
     │                                 │
     │  3. tools/list                  │
     │ ──────────────────────────────► │
     │ ◄── tool list ───────────────── │
     │                                 │
     │  4. tools/call                  │
     │ ──────────────────────────────► │
     │ ◄── tool execution result ───── │
     └                                 ┘

请求头要求如下;握手后的请求还必须携带会话 ID 和协商出的协议版本:

HeaderValue说明
Content-Typeapplication/json必填
Acceptapplication/json, text/event-stream必填
mcp-session-id<session-id>握手完成后的请求必填
MCP-Protocol-Version<protocol-version>握手完成后的请求必填,值取自初始化响应的 result.protocolVersion

5. 使用 curl 手动测试

步骤一 — 初始化(获取 Session ID)

curl -v -X POST https://mcp.trongrid.io/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2025-11-25",
      "capabilities": {},
      "clientInfo": { "name": "curl-test", "version": "1.0" }
    }
  }'

在响应中找到 mcp-session-id,并从响应 JSON 的 result.protocolVersion 读取协商版本。将两者分别保存为 <your-session-id><protocol-version>,供后续请求使用。

步骤二 — 发送 initialized 通知

curl -X POST https://mcp.trongrid.io/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: <your-session-id>" \
  -H "MCP-Protocol-Version: <protocol-version>" \
  -d '{
    "jsonrpc": "2.0",
    "method": "notifications/initialized",
    "params": {}
  }'

返回 202 Accepted 表示成功。

步骤三 — 查看可用工具

curl -X POST https://mcp.trongrid.io/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: <your-session-id>" \
  -H "MCP-Protocol-Version: <protocol-version>" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'

步骤四 — 调用工具

以查询区块统计信息为例:

curl -X POST https://mcp.trongrid.io/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "mcp-session-id: <your-session-id>" \
  -H "MCP-Protocol-Version: <protocol-version>" \
  -d '{
    "jsonrpc": "2.0",
    "id": 3,
    "method": "tools/call",
    "params": {
      "name": "getBlockStatistics",
      "arguments": { "blockNum": 68000000 }
    }
  }'

6. 可用工具分类

服务器共暴露 149 个 MCP 工具,覆盖 TRON 网络的主要查询与操作:

6.1 HTTP REST API 查询工具(18 个)

通过 TronGrid REST API 查询链上数据。

区块(1 个)

工具名说明
getBlockStatistics通过区块高度获取指定区块的统计信息

账户(6 个)

工具名说明
getAccountInfo获取 TRON 地址的账户信息
getAccountTransactions获取 TRON 账户地址的近期交易
getAccountTrc20Transactions获取 TRON 账户的 TRC-20 通证转账历史
getInternalTransactions获取 TRON 账户地址的内部交易
getInternalTransactionsByTxId获取指定交易 ID 的内部交易
getTrc20Balance获取 TRON 账户地址的 TRC-20 通证余额

资产(3 个)

工具名说明
listAllAssets列出 TRON 区块链上的所有 TRC-10 资产(通证)
getAssetByName按名称获取 TRC-10 资产
getAssetByIdentifier通过数字 ID 或发行方地址获取 TRC-10 资产

合约(3 个)

工具名说明
getContractTransactions获取智能合约地址的交易
getContractInternalTransactions获取智能合约的内部交易
getTrc20TokenHolders获取合约地址的 TRC-20 通证持有人余额

事件(4 个)

工具名说明
getEventsByTransactionId获取指定交易触发的事件
getEventsByContractAddress获取智能合约地址触发的事件
getEventsByBlockNumber获取指定区块高度的事件
getEventsByLatestBlock获取最新区块的事件

TRC-20 通证(1 个)

工具名说明
getTrc20Info获取 TRC-20/721/1155 通证的信息(名称、符号、精度)

6.2 钱包操作工具(73 个)

全节点 /wallet/* API endpoint,用于交易创建与广播、账户管理、资源质押与代理、智能合约、超级代表(SR)以及治理提案。

地址校验与交易广播(3 个)

工具名说明
validateAddress校验 TRON 地址格式
broadcastTransaction向 TRON 网络广播已签名的交易
broadcastHex向 TRON 广播已签名的十六进制编码交易

账户管理(5 个)

工具名说明
createAccount在 TRON 网络上激活账户
getAccount查询账户链上信息(TRX 余额、资产、质押情况)
updateAccount更新 TRON 账户名称
accountPermissionUpdate更新账户权限
getApprovedList获取交易的已批准签名者列表

TRX 转账(1 个)

工具名说明
createTransaction创建 TRX 转账交易

账户资源查询(2 个)

工具名说明
getAccountResource获取账户资源信息(带宽、能量)
getAccountNet获取账户带宽信息

资源质押与代理 — Stake 1.0(4 个)

工具名说明
freezeBalance[已废弃] 为带宽/能量质押 TRX(Stake 1.0)
unfreezeBalance[已废弃] 解除 TRX 质押(Stake 1.0)
getDelegatedResource查询资源代理信息
getDelegatedResourceAccountIndex查询代理索引

资源质押与代理 — Stake 2.0(11 个)

工具名说明
freezeBalanceV2为带宽/能量质押 TRX(Stake 2.0)
unfreezeBalanceV2解除 TRX 质押(Stake 2.0)
cancelAllUnfreezeV2取消 Stake 2.0 中所有待处理的解质押
delegateResource将带宽/能量代理给另一个账户
unDelegateResource取消带宽/能量代理
withdrawExpireUnfreeze提取已过期的解质押 TRX
getAvailableUnfreezeCount获取剩余解质押次数
getCanWithdrawUnfreezeAmount获取可提取的解质押 TRX 数量
getCanDelegatedMaxSize获取最大可代理资源数量
getDelegatedResourceV2查询 Stake 2.0 代理信息
getDelegatedResourceAccountIndexV2查询 Stake 2.0 代理索引

区块查询(2 个)

工具名说明
getBlock获取 TRON 区块头或完整区块
getTransactionInfoByBlockNum获取区块中所有交易信息

交易查询(5 个)

工具名说明
getTransactionById按 ID 获取交易信息
getTransactionInfoById按 ID 获取交易手续费与回执信息
getTransactionListFromPending获取待处理交易 ID 列表
getTransactionFromPending获取指定的待处理交易
getPendingSize获取待处理交易池大小

网络与链参数(5 个)

工具名说明
listNodes列出所有 TRON 网络节点
getNodeInfo获取 TRON 节点信息
getChainParameters获取 TRON 链参数
getEnergyPrices获取历史能量单价
getBandwidthPrices获取历史带宽单价

其他链上查询(1 个)

工具名说明
getBurnTrx获取 TRX 总销毁量

TRC-10 资产管理(11 个)

工具名说明
getAssetIssueByAccount获取账户发行的 TRC-10 资产
getAssetIssueById按通证 ID 获取 TRC-10 资产
getAssetIssueByName按名称获取 TRC-10 资产
getAssetIssueList获取所有 TRC-10 资产
getAssetIssueListByName按名称获取 TRC-10 资产列表
getPaginatedAssetIssueList分页获取 TRC-10 资产
createAssetIssue发行新 TRC-10 通证
participateAssetIssue参与 TRC-10 通证发行
transferAsset创建 TRC-10 通证转账交易
unfreezeAsset解冻 TRC-10 通证
updateAsset更新 TRC-10 通证参数

智能合约(9 个)

工具名说明
getContract获取智能合约字节码和 ABI
getContractInfo获取智能合约信息(含能量设置)
triggerSmartContract触发智能合约函数调用
triggerConstantContract预执行(模拟)智能合约调用
deployContract在 TRON 上部署新智能合约
updateSetting更新智能合约的 consume_user_resource_percent
updateEnergyLimit更新智能合约的 origin_energy_limit
clearAbi清除智能合约的 ABI
estimateEnergy估算合约调用所需的能量

超级代表(SR)管理(8 个)

工具名说明
createWitness申请成为超级代表(SR)候选人
updateWitness更新超级代表信息
getBrokerage获取 SR 奖励分成率
updateBrokerage更新 SR 奖励分成率
voteWitnessAccount为超级代表投票
getReward获取未领取的投票奖励
withdrawBalance提取 SR 奖励
getNextMaintenanceTime获取 TRON 下次投票维护周期时间

SR 列表(1 个)

工具名说明
getPaginatedNowWitnessList分页获取 SR 列表

治理提案(5 个)

工具名说明
listProposals列出所有 TRON 网络提案
getProposalById按 ID 获取指定提案
proposalCreate创建新的网络提案
proposalApprove批准网络提案
proposalDelete删除网络提案

6.3 WalletSolidity 只读工具(25 个)

从已固化的 Solidity 节点读取数据,确保数据的最终性。所有工具名均以 solidity 为前缀。

账户(1 个)

工具名说明
solidityGetAccount从已固化节点查询账户信息

交易查询(4 个)

工具名说明
solidityGetTransactionById按 ID 获取已固化交易
solidityGetTransactionInfoById按 ID 获取已固化交易手续费信息
solidityGetTransactionInfoByBlockNum获取已固化区块中的交易信息
solidityGetTransactionCountByBlockNum获取已固化区块的交易数量

区块查询(1 个)

工具名说明
solidityGetBlock获取已固化的区块头/完整区块

资源代理查询(7 个)

工具名说明
solidityGetDelegatedResource从已固化节点查询代理信息
solidityGetDelegatedResourceAccountIndex从已固化节点查询代理索引
solidityGetDelegatedResourceV2从已固化节点查询 Stake 2.0 代理
solidityGetDelegatedResourceAccountIndexV2从已固化节点查询 Stake 2.0 代理索引
solidityGetCanDelegatedMaxSize从已固化节点获取最大可代理数量
solidityGetCanWithdrawUnfreezeAmount从已固化节点获取可提取数量
solidityGetAvailableUnfreezeCount从已固化节点获取解质押次数

节点与链信息(2 个)

工具名说明
solidityGetNodeInfo获取 TRON 已固化节点信息
solidityGetBurnTrx从已固化节点获取 TRX 总销毁量

智能合约(2 个)

工具名说明
solidityTriggerConstantContract在已固化状态下模拟合约调用
solidityEstimateEnergy在已固化状态下估算能量

TRC-10 资产查询(5 个)

工具名说明
solidityGetAssetIssueById从已固化节点按 ID 获取 TRC-10 资产
solidityGetAssetIssueByName从已固化节点按名称获取 TRC-10 资产
solidityGetAssetIssueList从已固化节点获取所有 TRC-10 资产
solidityGetAssetIssueListByName从已固化节点按名称获取 TRC-10 资产列表
solidityGetPaginatedAssetIssueList从已固化节点分页获取 TRC-10 资产

超级代表查询(3 个)

工具名说明
solidityGetReward从已固化节点获取未领取奖励
solidityGetBrokerage从已固化节点获取 SR 分成率
solidityGetPaginatedNowWitnessList从已固化节点分页获取 SR 列表

6.4 JSON-RPC 工具(33 个)

兼容以太坊的 JSON-RPC API 方法,适用于从以太坊生态迁移的开发者。

账户与余额(1 个)

工具名说明
ethGetBalance返回 TRON 账户余额

区块操作(7 个)

工具名说明
ethBlockNumber返回最新 TRON 区块高度
ethGetBlockByHash通过哈希获取 TRON 区块
ethGetBlockByNumber通过区块高度获取 TRON 区块
ethGetBlockReceipts获取 TRON 区块的所有回执
ethGetBlockTransactionCountByHash通过哈希获取区块交易数量
ethGetBlockTransactionCountByNumber通过区块高度获取区块交易数量
ethGetWork返回当前 TRON 区块哈希

交易操作(6 个)

工具名说明
ethGetTransactionByHash通过哈希获取 TRON 交易
ethGetTransactionByBlockHashAndIndex通过区块哈希和索引获取交易
ethGetTransactionByBlockNumberAndIndex通过区块高度和索引获取交易
ethGetTransactionReceipt获取 TRON 交易回执
ethCall在 TRON 上执行只读消息调用
buildTransaction构建 TRON 交易(TRX 转账、TRC-20、合约调用)

合约与存储(4 个)

工具名说明
ethGetCode获取 TRON 地址的合约字节码
ethGetStorageAt获取 TRON 合约地址的存储值
ethEstimateGas估算 TRON 交易的能量消耗
ethGasPrice返回当前能量单价(单位:sun)

过滤器与日志(6 个)

工具名说明
ethNewFilter创建 TRON 日志过滤器
ethNewBlockFilter创建 TRON 新区块过滤器
ethGetFilterChanges轮询 TRON 过滤器变化
ethGetFilterLogs获取匹配 TRON 过滤器的日志
ethGetLogs获取 TRON 上匹配过滤条件的日志
ethUninstallFilter卸载 TRON 过滤器

链与网络信息(9 个)

工具名说明
ethChainId返回 TRON 链 ID
ethCoinbase返回节点的超级代表(SR)地址
ethProtocolVersion返回 TRON 区块版本
ethSyncing返回 TRON 同步状态
netListening检查 TRON 客户端是否在监听
netPeerCount获取连接到 TRON 的对等节点数
netVersion返回 TRON 创世区块哈希
web3ClientVersion返回 TRON 节点客户端版本
web3Sha3在 TRON 上计算 Keccak-256 哈希

7. 与 AI 客户端集成

直连模式(支持 Streamable HTTP 的客户端)

在 MCP 客户端配置文件中添加以下配置:

{
  "mcpServers": {
    "trongrid-mcp": {
      "url": "https://mcp.trongrid.io/mcp"
    }
  }
}

通过 mcp-remote 桥接(Claude Code 等)

对于不直接支持 Streamable HTTP 的客户端(如 Claude Code),可使用 mcp-remote 作为桥接:

{
  "mcpServers": {
    "mcp-server-trongrid": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.trongrid.io/mcp"]
    }
  }
}

8. 常见问题

Q:工具调用返回 405 Method Not Allowed

A:会话可能已过期或失效。请重新执行 initialize 握手流程。

Q:收到 TronGrid API 速率限制错误?

A:通过 TRON-PRO-API-KEY 请求头传入您的 API key。

Q:curl 请求没有返回数据?

A:请确保请求头包含 Accept: application/json, text/event-stream,这是 Streamable HTTP 协议的必填项。

相关资源