analyze_account
Comprehensive account overview: balance, resources, staking, voting, permissions, and delegations in a single call
address必填
io.github.fbsobreira由 GitHub 账号 fbsobreira 发布v0.4.2更新于 Oct 29, 2026
TRON blockchain: accounts, TRC20 tokens, staking, contracts, resources and transaction builders
GoTRON MCP 让助手读取 TRON 区块链数据(账户、TRC20 代币、区块、合约、质押与治理),并构建未签名交易。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.fbsobreira%2Fgotron-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"gotron": {
"type": "http",
"url": "https://mcp.gotron.sh/mcp"
}
}
}[Go Reference] [Go Report Card] [CI] [Coverage] [License]
MCP server for TRON blockchain — let AI agents query balances, tokens, blocks, and build transactions.
Built on the GoTRON SDK and the Model Context Protocol.
The image starts the HTTP transport. For stdio, append --transport stdio:
Published to the MCP Registry as io.github.fbsobreira/gotron-mcp on each stable release tag (vX.Y.Z), from v0.4.1, with the Docker image (stdio) and the hosted endpoint.
Connect directly to https://mcp.gotron.sh/mcp — no installation needed.
The gotron plugin bundles the hosted server with skills for USDT transfers and energy estimates. The gotron-local plugin runs the gotron-mcp binary locally and supports keystore signing.
Public marketplace installation is not available yet. To connect today, use the Claude Code MCP setup below. Plugin source and configuration details are in the directories linked above.
Choose one of the following setup options.
Project-wide local server:
User-wide local server with keystore signing:
If a project-scoped gotron entry already exists, remove it first with claude mcp remove gotron --scope project. For a local-scoped entry, use claude mcp remove gotron --scope local. Check the selected entry with claude mcp get gotron: local and project entries take precedence over user entries, and their settings are not combined. See Claude Code's scope precedence.
Save an environment-variable reference rather than the passphrase itself. Keep the single quotes so your shell does not expand the reference while registering the server:
Then launch Claude from Bash or Zsh with a hidden passphrase prompt:
The subshell limits the exported value to that Claude session. The prompt keeps the passphrase out of shell history and command-line arguments; it is still available in the environment of Claude and its MCP server. Repeat the prompt when starting a new signing session. Without a supplied passphrase, the reference expands to an empty value and wallet/signing tools stay disabled.
If you previously registered a literal passphrase with -e, it was stored in plain text in ~/.claude.json and may also remain in shell history. Remove the old user-scoped entry with claude mcp remove gotron --scope user, register it again using the reference above, and remove the old history entry. See Claude Code's environment-variable expansion documentation.
User-wide local server without keystore configuration:
Hosted server (zero install):
create_wallet(name, key_type?) accepts ecdsa (default), ml_dsa_44 or fn_dsa_512; list_wallets and signing results report key_type. sign_transaction, sign_and_broadcast, sign_and_confirm and request_limit_override accept PQ wallets with the same policy limits, Telegram approval and elicitation as ECDSA wallets.
grpc.nile.trongrid.io:50051); governance switches each scheme on or off and mainnet reports none. Use get_pq_capabilities to check the node and this build.permission_id) on the owner account. A fresh PQ address must receive TRX first.GOTRON_MCP_KEYSTORE_PASSPHRASE under <keystore-dir>/pq-keys/<name>/ (wallet-cli compatible, same layout as tronctl). Point --keystore-dir at a tronctl config root (e.g. ~/.tronctl) to reuse its keys; the passphrase must match their password. Wallet names are unique across ECDSA and PQ wallets; list_wallets flags duplicate_name: true and such a wallet cannot sign until one copy is renamed.pq_auth_sig (txid unchanged); a transaction carries at most 5 signatures, ECDSA and PQ combined. PQ transactions are about 10-22x larger than ECDSA ones (roughly 10x for FN-DSA-512, 22x for ML-DSA-44), so they use more bandwidth.-tags falcon, CGO and liboqs installed via pkg-config: CGO_ENABLED=1 go build -tags falcon ./cmd/gotron-mcp. Without it, FN-DSA create/sign returns an error pointing to the gotron-mcp-pq build; release binaries for it are planned (GOT-97).Explicit --node overrides network presets.
Contract reads require a node with vm.supportConstant = true. If a node reports that constant execution is unsupported, reads try --fallback-node when configured. TRC20 reads also use the fallback for empty results, since token reads require return data. General contract simulations can succeed without return data. The fallback must serve the same network. This fallback applies per call, independently of block health checks; contract reverts are returned as errors.
For TRX transfers to unactivated recipients, analyze_transfer_cost reads the account creation fees and bandwidth multiplier from chain parameters. Only staked or delegated bandwidth can cover account creation; free bandwidth cannot. If recipient activation or the required fee parameters cannot be determined, the tool returns an error instead of quoting zero.
Built and maintained by a CryptoChain community developer.
If you find this project useful, consider supporting TRON governance by voting for the CryptoChain Super Representative:
TKSXDA8HfE9E1y39RczVQ1ZascUEtaSToFLGPL-3.0 — same as the GoTRON SDK.
来源:README.md,提交 93f93d8
Comprehensive account overview: balance, resources, staking, voting, permissions, and delegations in a single call
address必填Estimate the cost of a TRX or TRC20 transfer: energy, bandwidth, and TRX burn options
to必填from必填amount必填contract_addressDecode ABI-encoded output hex from a contract call. Handles return values, revert reasons (Error(string)), and panic codes (Panic(uint256)).
data必填method必填contract_address必填Delegate energy or bandwidth to another address (Stake 2.0). Returns unsigned transaction hex for signing.
to必填from必填memoamount必填resource必填lock_periodpermission_idEstimate energy cost for a smart contract call. Requires a full node with vm.supportConstant=true and vm.estimateEnergy=true; falls back to secondary node if primary does not support it.
from必填method必填params必填contract_address必填Estimate energy cost for a TRC20 transfer without creating a transaction. Dry-runs the transfer to check energy requirements.
to必填from必填amount必填contract_address必填Stake TRX for energy or bandwidth (Stake 2.0). Returns unsigned transaction hex for signing.
from必填memoamount必填resource必填permission_idGet TRON account balance and details including TRX balance, bandwidth, energy, frozen resources, and account type
address必填Get the permission structure of a TRON account including owner, active, and witness permissions with multi-sig keys and thresholds
address必填Get energy and bandwidth usage and limits for a TRON account
address必填Get current and historical bandwidth prices on the TRON network
无需输入参数。
Get a TRON block by number or latest. Use include_transactions to get transaction details with decoded contract data (sender, receiver, amounts) and pagination.
limitoffsetblock_numbertransaction_typeinclude_transactionsGet TRON network node info and current energy/bandwidth prices
无需输入参数。
Get the ABI of a smart contract on TRON. Automatically resolves proxy contracts (ERC-1967). Note: many TRON contracts are deployed without on-chain ABI — if empty, check TronScan for verified source code.
contract_address必填Get decoded events emitted by a smart contract via TronGrid REST API. Returns a compact summary per event. Use a small limit and paginate with fingerprint to control response size
limitevent_namefingerprintmax_timestampmin_timestamponly_confirmedcontract_address必填Get the maximum amount of energy or bandwidth an account can still delegate
address必填resource必填Get resources delegated to and from an account (Stake 2.0 delegation info)
address必填Get current and historical energy prices on the TRON network
无需输入参数。
Get current MCP server connection info: network name, node address, and latest block
无需输入参数。
Get pending transactions for a specific address from the mempool
address必填List pending transaction IDs and pool size from the mempool
limitoffsetReport which TIP-899 post-quantum signature schemes the connected node enables and this build can sign (FN-DSA-512 needs the gotron-mcp-pq build). TIP-899 is a draft live only on Nile. can_sign reflects the node and this build; signing also needs local mode with a keystore.
无需输入参数。
Get full details of a governance proposal by ID, including the complete list of approval addresses.
proposal_id必填Get the current USD price of TRX or a TRC20 token. Uses CoinGecko with caching.
token必填Get transaction details by transaction ID
transaction_id必填Get transaction history for a TRON address via TronGrid REST API. Returns a compact summary per transaction. Use a small limit and paginate with fingerprint to control response size
limitaddress必填only_toonly_fromfingerprintmax_timestampmin_timestamponly_confirmedQuery how many tokens a spender is approved to transfer on behalf of the owner. Flags unlimited approvals as high risk.
owner必填spender必填contract_address必填Get TRC20 token balance for an account
address必填contract_address必填Get TRC20 token metadata (name, symbol, decimals, total supply)
contract_address必填Get TRC20 token transfer history for a TRON address via TronGrid REST API. Returns a compact summary per transfer with token info. Use a small limit and paginate with fingerprint to control response size
limitaddress必填only_toonly_fromfingerprintmax_timestampmin_timestamponly_confirmedCheck if a specific transaction is still in the pending pool (mempool)
transaction_id必填Get a human-readable summary of a smart contract's methods with signatures, inputs, outputs, and mutability. Auto-resolves proxy contracts.
contract_address必填List governance proposals on the TRON network with pagination support. Returns a compact summary per proposal (use get_proposal for full details including approval addresses). Newest first by default.
limitorderoffsetList super representatives (witnesses) on the TRON network with pagination support.
limitoffsetBuild unsigned transaction to revoke a TRC20 token approval (sets allowance to 0)
owner必填spender必填fee_limitpermission_idcontract_address必填Create an unsigned TRC20 token transfer transaction. Returns transaction hex for signing.
to必填from必填amount必填fee_limitpermission_idcontract_address必填Create an unsigned TRX transfer transaction. Returns transaction hex for signing.
to必填from必填memoamount必填permission_idCall a read-only (view/pure) smart contract method. No transaction created, no fees. Returns decoded result. Provide either method+params OR data (pre-packed calldata).
datafrommethodparamstoken_idcall_valuetoken_valuecontract_address必填Call a smart contract method. Returns unsigned transaction hex for signing. Provide either method+params OR data (pre-packed calldata).
datafrom必填methodparamsfee_limitcall_valuepermission_idcontract_address必填Reclaim previously delegated energy or bandwidth (Stake 2.0). Returns unsigned transaction hex for signing.
to必填from必填memoamount必填resource必填permission_idUnstake TRX (Stake 2.0). Returns unsigned transaction hex for signing. Note: unstaked TRX has a 14-day withdrawal period.
from必填memoamount必填resource必填permission_idValidate a TRON address and convert supported inputs to TRON base58/hex. Accepts base58 (T...), TRON hex (41...), or Ethereum/EVM format (0x...).
address必填Vote for super representatives. Returns unsigned transaction hex for signing. Requires staked TRX (1 TRX staked = 1 vote).
from必填memovotes必填permission_idWithdraw TRX that has completed the 14-day unstaking period (Stake 2.0). Returns unsigned transaction hex for signing.
from必填memopermission_id已满足适用检查项的 100%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
go install github.com/fbsobreira/gotron-mcp/cmd/gotron-mcp@latestbrew install fbsobreira/tap/gotron-mcpcurl -fsSL gotron.sh/install-mcp | shdocker run -p 8080:8080 ghcr.io/fbsobreira/gotron-mcpdocker run -i --rm ghcr.io/fbsobreira/gotron-mcp --transport stdio{ "mcpServers": { "gotron": { "command": "gotron-mcp", "args": ["--network", "mainnet"], "env": { "GOTRON_NODE_API_KEY": "your-trongrid-api-key" } } }}{ "mcpServers": { "gotron": { "command": "gotron-mcp", "args": ["--network", "mainnet"], "env": { "GOTRON_NODE_API_KEY": "your-trongrid-api-key", "GOTRON_MCP_KEYSTORE_PASSPHRASE": "your-keystore-passphrase" } } }}{ "mcpServers": { "gotron": { "url": "https://mcp.gotron.sh/mcp" } }}claude mcp add gotron --scope project -- gotron-mcp --network mainnetclaude mcp add gotron --scope user -e 'GOTRON_MCP_KEYSTORE_PASSPHRASE=${GOTRON_MCP_KEYSTORE_PASSPHRASE:-}' -- gotron-mcp --network mainnet( set +x printf 'Keystore passphrase: ' IFS= read -r -s GOTRON_MCP_KEYSTORE_PASSPHRASE || exit 1 printf '\n' export GOTRON_MCP_KEYSTORE_PASSPHRASE claude)claude mcp add gotron --scope user -- gotron-mcp --network mainnetclaude mcp add gotron --scope user --transport http https://mcp.gotron.sh/mcp# Buildmake build
# Format codemake fmt
# Run testsmake test
# Lintmake lint
# Run HTTP mode locallymake run-http