GoTRON MCP
Servidor MCP para a blockchain TRON — conecte agentes de IA a TRX, TRC20, contratos inteligentes, staking e governança via GoTRON SDK
Documentação
GoTRON MCP Server
Servidor MCP para a blockchain TRON — permite que agentes de IA consultem saldos, tokens, blocos e construam transações.
Construído sobre o GoTRON SDK e o Model Context Protocol.
Dois Modos
| Modo Local | Modo Hospedado | |
|---|---|---|
| Transporte | stdio | Streamable HTTP |
| Ferramentas de leitura | Todas | Todas |
| Construtores de transação | Todos (hex de tx não assinada) | Todos (hex de tx não assinada) |
| Assinar/Transmitir | Opcional via --keystore | Desabilitado |
| Instalação | Necessária | Instalação zero |
Instalação
Instalação via Go
go install github.com/fbsobreira/gotron-mcp/cmd/gotron-mcp@latest
Homebrew
brew install fbsobreira/tap/gotron-mcp
curl
curl -fsSL gotron.sh/install-mcp | sh
Docker
docker run -p 8080:8080 ghcr.io/fbsobreira/gotron-mcp
Hospedado (instalação zero)
Conecte-se diretamente a https://mcp.gotron.sh/mcp — nenhuma instalação necessária.
Configuração do Claude Desktop
Modo local
{
"mcpServers": {
"gotron": {
"command": "gotron-mcp",
"args": ["--network", "mainnet"],
"env": {
"GOTRON_NODE_API_KEY": "your-trongrid-api-key"
}
}
}
}
Modo local com assinatura via keystore
{
"mcpServers": {
"gotron": {
"command": "gotron-mcp",
"args": ["--network", "mainnet", "--keystore", "~/.tronctl/keystore"],
"env": {
"GOTRON_NODE_API_KEY": "your-trongrid-api-key"
}
}
}
}
Modo hospedado (instalação zero)
{
"mcpServers": {
"gotron": {
"url": "https://mcp.gotron.sh/mcp"
}
}
}
Claude Code
Adicione ao projeto atual:
claude mcp add gotron --scope project -- gotron-mcp --network mainnet
Com keystore:
claude mcp add gotron --scope project -- gotron-mcp --network mainnet --keystore ~/.tronctl/keystore
Adicione globalmente:
claude mcp add gotron --scope user -- gotron-mcp --network mainnet
Hospedado (instalação zero):
claude mcp add gotron --scope user --transport http https://mcp.gotron.sh/mcp
Ferramentas Disponíveis
Somente leitura (ambos os modos)
| Ferramenta | Descrição |
|---|---|
get_account | Obter saldo da conta, largura de banda, energia e detalhes |
get_account_resources | Obter uso e limites de energia/largura de banda |
get_trc20_balance | Obter saldo de token TRC20 para uma conta |
get_trc20_token_info | Obter nome, símbolo e decimais do token TRC20 |
get_block | Obter bloco por número ou o mais recente |
get_transaction | Obter detalhes da transação por ID |
list_witnesses | Listar todos os super representantes |
get_contract_abi | Obter ABI do contrato inteligente |
estimate_energy | Estimar custo de energia para uma chamada de contrato |
trigger_constant_contract | Chamar método de contrato inteligente somente leitura (view/pure) |
decode_abi_output | Decodificar saída codificada em ABI ou motivos de revert de chamadas de contrato |
list_contract_methods | Obter resumo legível por humanos dos métodos do contrato |
get_chain_parameters | Obter parâmetros de rede |
validate_address | Validar um endereço TRON |
get_energy_prices | Obter histórico de preço de energia |
get_bandwidth_prices | Obter histórico de preço de largura de banda |
list_proposals | Listar propostas de governança |
get_network | Obter informações atuais de conexão de rede |
Construtores de Transação (ambos os modos)
| Ferramenta | Descrição |
|---|---|
transfer_trx | Construir transferência TRX não assinada |
transfer_trc20 | Construir transferência de token TRC20 não assinada |
freeze_balance | Construir stake TRX não assinado para energia/largura de banda (Stake 2.0) |
unfreeze_balance | Construir unstake TRX não assinado (Stake 2.0) |
vote_witness | Construir voto não assinado para super representantes |
trigger_contract | Construir chamada de contrato inteligente não assinada |
Assinar e Transmitir (modo local + keystore)
| Ferramenta | Descrição |
|---|---|
sign_transaction | Assinar transação usando keystore local |
broadcast_transaction | Transmitir transação assinada para a rede |
Configuração
| Flag | Variável de Ambiente | Padrão | Descrição |
|---|---|---|---|
--node | GOTRON_MCP_NODE | (por rede) | Endereço do nó gRPC TRON |
--api-key | GOTRON_NODE_API_KEY | — | Chave de API TronGrid |
--network | GOTRON_MCP_NETWORK | mainnet | Rede: mainnet, nile, shasta |
--transport | — | stdio | Transporte: stdio, http |
--port | — | 8080 | Porta do servidor HTTP |
--bind | — | 127.0.0.1 | Endereço de bind do servidor HTTP |
--fallback-node | GOTRON_MCP_FALLBACK_NODE | — | Nó gRPC de fallback (failover automático) |
--keystore | — | — | Caminho para o diretório keystore do tronctl |
--tls | — | false | Usar TLS para conexão gRPC (padrão: texto puro) |
Predefinições de Rede
| Rede | Nó Padrão |
|---|---|
| mainnet | grpc.trongrid.io:50051 |
| nile | grpc.nile.trongrid.io:50051 |
| shasta | grpc.shasta.trongrid.io:50051 |
--node explícito substitui as predefinições de rede.
Segurança
- O servidor nunca armazena ou gerencia chaves privadas diretamente
- Todas as ferramentas de escrita retornam hex de transação não assinada — o usuário decide como assinar
- A assinatura via keystore é opcional através da flag
--keystore - No modo hospedado (HTTP), todas as ferramentas de escrita e assinatura são desabilitadas automaticamente
- A chave de API é opcional e só é necessária para limites de taxa do TronGrid
Desenvolvimento
# Build
make build
# Format code
make fmt
# Run tests
make test
# Lint
make lint
# Run HTTP mode locally
make run-http
Comunidade
Construído e mantido por um desenvolvedor da comunidade CryptoChain.
Se você acha este projeto útil, considere apoiar a governança da TRON votando no Super Representante da CryptoChain:
- Vote no TronScan
- Endereço do SR:
TKSXDA8HfE9E1y39RczVQ1ZascUEtaSToF
Licença
LGPL-3.0 — mesmo que o GoTRON SDK.