mcp-server-tron
This MCP server lets AI agents interact with the TRON blockchain for data queries, token transfers, smart contracts, staking, governance, and wallet operations across Mainnet, Nile, and Shasta.
Manage wallets and addresses: get/list/select wallets, sign messages, convert/validate addresses, generate accounts.
Query network and chain data: chain info, parameters, energy/bandwidth prices, burn stats, nodes, mempool.
Read blocks and transactions: fetch blocks, transaction details/receipts, events, approval lists, historical balances.
Check balances and transfer assets: TRX and TRC20 balances/transfers, create/broadcast transactions.
Interact with smart contracts: read/write calls, deploy contracts, estimate energy, multicall, fetch/clear ABI, update contract settings.
Stake and delegate resources: freeze/unfreeze TRX, withdraw unfreezes, delegate/undelegate bandwidth or energy.
Participate in governance: list/vote for SRs, manage brokerage/rewards, create/approve/delete proposals.
Query indexed account/contract history via TronGrid: transactions, TRC20 transfers/balances/holders, internal transactions.
Run read-only or write-enabled modes, with wallet-dependent write tools failing safely when no wallet is configured.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server-tron what's the TRX balance of TXYZ1234?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Server Tron
A comprehensive Model Context Protocol (MCP) server that provides blockchain services for the TRON network. This server enables AI agents to interact with TRON blockchain with a unified interface through tools and AI-guided prompts for TRX, TRC20 tokens and smart contracts.
Contents
Related MCP server: tron_mcp_server
Overview
The MCP TRON Server leverages the Model Context Protocol to provide blockchain services to AI agents. It fully supports the TRON ecosystem using tronweb.
Key capabilities:
Blockchain Data: Read blocks, transactions, and chain parameters (Energy/Bandwidth costs).
Smart Contracts: Interact with any TRON smart contract (Read/Write).
Tokens: Transfer TRX and TRC20 tokens; check balances.
Address Management: Convert between Hex (0x...) and Base58 (T...) formats.
Wallet Integration: Agent-wallet-managed file-backed wallets.
Multi-Network: Seamless support for Mainnet, Nile, and Shasta.
Dynamic Access Control: Write-capable tools stay registered;
--readonlyhides them, and wallet-dependent handlers fail at execution time if no wallet is available.
Features
Blockchain Data Access
TRON network support: Mainnet, Nile, Shasta.
Chain information: Block number, Chain ID, RPC endpoints.
Block data: Access by number or hash.
Transaction details: Detailed info including resource usage (Energy/Bandwidth).
Resource Costs: Query current chain parameters for Energy and Bandwidth prices.
Token Services
Native TRX: Check balance and transfer.
TRC20 Tokens:
Check balances.
Transfer tokens.
Get token metadata (name, symbol, decimals).
Address Services
Format Conversion: Convert between Hex (
41...or0x...) and Base58 (T...) formats.Validation: Verify if an address is valid on TRON.
Smart Contract Interactions
Read Contract: Call
viewandpurefunctions.Write Contract: Execute state-changing functions.
ABI Fetching: Automatically fetches ABI from the blockchain for verified contracts.
Governance & Proposals
Super Representatives: List, vote, create/update witnesses, manage brokerage.
Proposals: List, view, create, approve, and delete governance proposals.
Rewards: Query and withdraw SR voting rewards.
Events & Data Queries
Contract Events: Query events by transaction, contract address, or block number.
Account Data: Transaction history, TRC20 transfers, internal transactions, token balances (via TronGrid).
Contract Data: Contract transaction history, internal transactions, token holder lists.
Mempool: View pending transactions and pool size.
Node Info: List connected nodes and query node details.
Staking & Resource Delegation (Stake 2.0)
Staking: Freeze/unfreeze TRX for Energy or Bandwidth.
Delegation: Delegate and undelegate resources to other accounts.
Queries: Available unfreeze count, withdrawable amounts, delegation details.
Wallet & Security
Agent Wallet: File-backed wallet storage via
agent-walletSDK.HD Wallet: Supports BIP-44 derivation path
m/44'/195'/0'/0/{index}.Signing: Sign arbitrary messages and transactions.
Supported Networks
Mainnet:
mainnet(Default)Nile Testnet:
nileShasta Testnet:
shasta
Prerequisites
Node.js 22.23.4+ or 24.22.1+
Optional: TronGrid API key to avoid rate limiting on Mainnet.
Node.js 20 and earlier 22.x/24.x releases are unsupported because they do not contain the October 2026 security fixes. Other major versions are unsupported until they pass the CI matrix.
Installation
# Clone the repository
git clone https://github.com/BofAI/mcp-server-tron.git
cd mcp-server-tron
# Install dependencies
npm installConfiguration
Environment Variables
CRITICAL SECURITY NOTE: For your security, NEVER save your private keys or mnemonics directly in the MCP configuration JSON files (like claude_desktop_config.json or mcp.json). For wallet setup, follow agent-wallet's file-backed configuration and the SDK-supported AGENT_WALLET_* settings; use environment variables only for non-secret operational settings like TRONGRID_API_KEY.
Network Configuration
TRONGRID_API_KEY: (Optional) Your TronGrid API key.Why: TRON mainnet RPCs have strict rate limits. When
TRONGRID_API_KEYis set (and non-empty), the server useshttps://api.trongrid.ioas the default RPC hosts.Fallback: When
TRONGRID_API_KEYis not set, the server useshttps://tg.ops.sunpump.xyzas the default RPC hosts formainnet.Usage:
export TRONGRID_API_KEY="<YOUR_TRONGRID_API_KEY_HERE>"
Wallet Configuration
Wallets are managed through agent-wallet file-backed configuration. This repository no longer reads or maps legacy TRON_PRIVATE_KEY / TRON_MNEMONIC / TRON_ACCOUNT_INDEX wallet variables.
Prerequisites: Install and configure agent-wallet
See
agent-walletfor wallet file formats, local setup, and the SDK-supportedAGENT_WALLET_*settings.
Server Configuration
The server runs on port 3001 by default in HTTP mode.
Usage
Running Locally
# Start in stdio mode (for MCP clients like Claude Desktop/Cursor)
npm start
# Start in readonly mode (disables write tools)
npm start -- --readonly
# Start in stateless HTTP mode (Streamable HTTP)
npm run start:httpHTTP requests accept uncompressed JSON up to 1 MiB. Tool arguments are limited to 10,000 array elements and object keys in total, checked before schema validation. Compressed request bodies return HTTP 415; oversized bodies return HTTP 413.
Security dependency overrides keep TronWeb's Axios on the patched 1.x release, agent-wallet's configuration parser on the same patched Zod 4 used by this server, and typescript-estree's minimatch on the patched release. These overrides cross upstream version constraints; wallet configuration and lint compatibility are covered by validation and must be rechecked when updating the parent packages.
Docker
Build the image:
docker build -t mcp-server-tron:test .Run the container with local logs mounted:
The container runs as node (UID/GID 1000:1000). Application files are owned by
root; only /app/logs is writable by the service within /app. When bind-mounting
logs, prepare the host directory with permissions that allow UID 1000 to write.
Do not mount host credential directories or the Docker socket. Host log collectors
must restrict file access and avoid following links from service-writable log files
to host credential files; container file ownership alone cannot enforce that boundary.
docker run -d \
--name mcp-tron \
-p 3001:3001 \
-e MCP_HOST=0.0.0.0 \
-e MCP_PORT=3001 \
-e MCP_LOG_DIR=/app/logs \
-v "$(pwd)/logs:/app/logs" \
mcp-server-tron:testDocker logs are written to the mounted logs/ directory and are named by date, for example:
logs/mcp-server-tron-2026-03-18-combined.loglogs/mcp-server-tron-2026-03-18-error.log
Testing
The project includes a comprehensive test suite with unit tests and integration tests (using the Nile testnet).
# Run all tests
npm test
# Unit tests (mocked services, no network)
npx vitest tests/core/tools.test.ts # All MCP tools registration & handlers
npx vitest tests/core/services/contracts.test.ts # Contract services
npx vitest tests/core/services/account-resource.test.ts # Account resource services
npx vitest tests/core/services/staking.test.ts # Staking services
# Integration tests (real Nile RPC; write-operation coverage is skipped unless wallet support is explicitly enabled)
npx vitest tests/core/tools_integration.test.ts # Full tool flow on Nile
npx vitest tests/core/services/multicall.test.ts # Multicall integration
npx vitest tests/core/services/services.test.ts # Services integrationUnit tests use mocks and do not need network or wallet.
Integration tests (
tools_integration.test.ts) call Nile RPC; most cases are read-only. Wallet-dependent handlers are exercised as runtime failures by default, while write-success paths require an explicit wallet fixture or equivalent setup.
Client Configuration
Option A: Quick Start (Recommended)
Runs the latest version directly from npm via stdio transport.
Claude Code:
claude mcp add mcp-server-tron -- npx -y @bankofai/mcp-server-tronCursor (.cursor/mcp.json):
{
"mcpServers": {
"mcp-server-tron": {
"command": "npx",
"args": ["-y", "@bankofai/mcp-server-tron"],
"env": {
"TRONGRID_API_KEY": "YOUR_KEY_HERE"
}
}
}
}Option B: Official Hosted Server (Remote)
Connect to the official hosted server at https://tron-mcp-server.bankofai.io. No installation required, readonly mode, stateless HTTP.
Claude Code:
claude mcp add -transport http mcp-server-tron https://tron-mcp-server.bankofai.io/mcpCursor (.cursor/mcp.json):
{
"mcpServers": {
"mcp-server-tron": {
"url": "https://tron-mcp-server.bankofai.io/mcp"
}
}
}API Reference
Tools
Wallet & Address
Tool Name | Description | Key Parameters |
| Get the configured wallet's address (Base58 & Hex). | - |
| List all available wallets with IDs and addresses. | - |
| Switch the active wallet at runtime (agent-wallet mode). |
|
| Convert between Hex and Base58 formats. |
|
Network & Resources
Tool Name | Description | Key Parameters |
| Get current block and chain ID. |
|
| Get current Energy and Bandwidth costs. |
|
| Query historical energy unit price. |
|
| Query historical bandwidth unit price. |
|
| Query total TRX burned from fees. |
|
| List available networks. | - |
Blocks & Transactions
Tool Name | Description | Key Parameters |
| Fetch block by number or hash. |
|
| Get the latest block. |
|
| Get transaction details by hash. |
|
| Get receipt/info including resource usage. |
|
| Query block by block height. |
|
| Query block by block ID (hash). |
|
| Get latest N blocks (solidified). |
|
| Get blocks in range [startNum, endNum). |
|
| Get the current latest block info. |
|
| Query transaction status/content by txID. |
|
| Query transaction receipt by txID. |
|
| Get receipts for all txs in a block. |
|
| Query the list of accounts that signed a transaction. |
|
| Get all balance change operations in a block. |
|
Broadcast & Transaction Building (Write)
Tool Name | Description | Key Parameters |
| Create an unsigned TRX transfer transaction. |
|
| Broadcast a signed transaction JSON object to the TRON network. |
|
| Broadcast a signed protobuf-encoded transaction hex string. |
|
Balances
Tool Name | Description | Key Parameters |
| Get TRX balance for an address. |
|
| Get TRC20 token balance for an address. |
|
Transfers (Write)
Tool Name | Description | Key Parameters |
| Send TRX (Native) to an address. |
|
| Send TRC20 tokens to an address. |
|
Smart Contracts
Tool Name | Description | Key Parameters |
| Call read-only ( |
|
| Get raw contract metadata (ABI, bytecode) from chain. |
|
| Get ABI, function list and raw metadata. |
|
| Fetch ABI entry array for verified contracts. |
|
| Execute multiple read calls in one batch. |
|
| Execute state-changing contract functions. |
|
| Deploy a smart contract with ABI and bytecode. |
|
| Estimate energy consumption for a contract call. |
|
| Update consume_user_resource_percent (creator only). |
|
| Update originEnergyLimit (creator only). |
|
| Clear on-chain ABI metadata (creator only). |
|
Account Management
Tool Name | Description | Key Parameters |
| Get full account info (balance, resources, permissions, etc.). |
|
| Get TRX balance at a specific block height. |
|
| Generate a new TRON keypair offline. | - |
| Validate a TRON address and detect format. |
|
| Get bandwidth information for an account. |
|
| Get energy, bandwidth, and delegation details. |
|
| Query delegated resources between two accounts (Stake 2.0). |
|
| Query delegation index (who delegated to/from this account). |
|
| Activate a new account on-chain (costs bandwidth). |
|
| Set account name (can only be set once). |
|
| Update multi-signature permissions. |
|
Staking (Stake 2.0)
Tool Name | Description | Key Parameters |
| Freeze TRX to get resources (BANDWIDTH/ENERGY). |
|
| Unfreeze TRX to release resources. |
|
| Withdraw expired unfrozen balance back to available. |
|
| Re-stake pending unfreezes; withdraw expired ones. |
|
| Get remaining unstake operation quota (max 32). |
|
| Get withdrawable TRX from unfreeze at a timestamp. |
|
Account resource (Stake 2.0 delegation)
Tool Name | Description | Key Parameters |
| Delegate BANDWIDTH/ENERGY to another address. |
|
| Revoke delegated resources. |
|
| Get max delegatable amount for an address. |
|
| Get delegation details between two addresses. |
|
| Get who delegated to/from an address. |
|
Governance (Super Representatives)
Tool Name | Description | Key Parameters |
| Get the full list of all Super Representatives on the network. |
|
| Get a paginated list of current active Super Representatives. |
|
| Get the next SR maintenance (vote tally) time. |
|
| Get unclaimed SR voting reward for an address. |
|
| Get SR brokerage ratio (reward split with voters). |
|
| Apply to become a Super Representative candidate. |
|
| Update Super Representative URL. |
|
| Vote for Super Representatives with frozen TRX. |
|
| Withdraw accumulated SR block rewards. |
|
| Update SR brokerage ratio. |
|
Proposals
Tool Name | Description | Key Parameters |
| List all network governance proposals. |
|
| Get details of a specific proposal by ID. |
|
| Create a new governance proposal (SR only). |
|
| Approve or revoke a proposal (SR only). |
|
| Delete a proposal (creator only). |
|
Events
Tool Name | Description | Key Parameters |
| Get all events emitted by a specific transaction. |
|
| Get events emitted by a specific contract. |
|
| Get all events emitted in a specific block. |
|
| Get all events from the latest block. |
|
Account Data (TronGrid)
Tool Name | Description | Key Parameters |
| Get account summary from TronGrid. |
|
| Get transaction history for an account. |
|
| Get TRC20 transfer history for an account. |
|
| Get internal transaction history for an account. |
|
| Get all TRC20 token balances for an account. |
|
Contract Data (TronGrid)
Tool Name | Description | Key Parameters |
| Get transaction history for a contract. |
|
| Get internal transactions for a contract. |
|
| Get holder list for a TRC20 token. |
|
Mempool
Tool Name | Description | Key Parameters |
| Get transaction IDs in the pending pool (mempool). |
|
| Get a specific transaction from the pending pool. |
|
| Get the current size of the pending transaction pool. |
|
Node
Tool Name | Description | Key Parameters |
| List all connected node addresses on the network. |
|
| Get detailed info about the connected full node. |
|
Signing & Security
Tool Name | Description | Key Parameters |
| Sign a message with the configured wallet. |
|
Prompts
prepare_transfer: Interactive guide to prepare TRX/TRC20 transfers.interact_with_contract: Step-by-step guide to interact with a smart contract.diagnose_transaction: Analyze a transaction hash for status and errors.explain_tron_concept: Explain a TRON blockchain concept with examples.analyze_wallet: Comprehensive report of wallet assets.check_network_status: Report on network health and resource costs.
Security Considerations
Private Keys & Mnemonics: Keep wallet material inside
agent-walletfile-backed configuration instead of plain text MCP config files. This repository no longer maps legacyTRON_*wallet variables; useAGENT_WALLET_*only when following theagent-walletSDK documentation.Shared Machines: Be aware that plain environment variables can be visible to other users via
/procor system monitoring tools.Testnets: Always test on Nile or Shasta before performing operations on Mainnet.
Approvals: Be cautious when approving token allowances via
write_contract. Only approve what is necessary.
Project Structure
mcp-server-tron/
├── src/
│ ├── core/
│ │ ├── chains.ts # Network definitions
│ │ ├── tools/ # MCP Tool definitions (split by category)
│ │ ├── prompts.ts # MCP Prompt definitions
│ │ └── services/ # Business logic (TronWeb integration)
│ │ ├── wallet.ts # Wallet management
│ │ ├── transfer.ts # Transfer logic
│ │ ├── contracts.ts # Contract logic
│ │ ├── address.ts # Address conversion
│ │ └── ...
│ ├── server/ # HTTP/Stdio server setup
│ └── index.ts # Entry point
├── tests/ # Unit tests
└── package.jsonLicense
MIT
Available Tools
97 toolsaccount_permission_updateBDestructive
Update account permissions for multi-signature configuration. Set owner, active, and optional witness permissions.
Inputs: ownerPermission (required), activePermissions (required), network, witnessPermission.
approve_proposalA
Vote to approve or disapprove a governance proposal (SR only).
Inputs: approve (required), proposalId (required), network.
broadcast_hexADestructive
Broadcast a signed, protocol buffer-encoded transaction hex string to the TRON network.
Inputs: transaction (required), network.
broadcast_transactionADestructive
Broadcast a signed transaction to the TRON network. Accepts the full signed transaction JSON object.
Inputs: transaction (required), network.
cancel_all_unfreeze_v2BDestructive
Cancel unstakings, all unstaked funds still in the waiting period will be re-staked, all unstaked funds that exceeded the 14-day waiting period will be automatically withdrawn to the owner’s account.
Inputs: network.
clear_abiADestructive
Clear the on-chain ABI metadata of a contract (ClearABIContract). Requires the contract creator's wallet.
Inputs: contractAddress (required), network.
convert_addressBRead-onlyIdempotent
Convert addresses between Hex and Base58 formats
Inputs: address (required).
create_accountADestructive
Activate a new account on the TRON network. Costs bandwidth from the configured wallet. The target address must be generated beforehand.
Inputs: address (required), network.
create_proposalA
Create a new network governance proposal (SR only). Provide a map of chain parameter IDs to proposed values.
Inputs: parameters (required), network.
create_transactionAIdempotent
Create an unsigned TRX transfer transaction. The recipient account will be auto-activated if it does not exist. Returns an unsigned transaction object that must be signed before broadcasting.
Inputs: amount (required), toAddress (required), ownerAddress (required), network.
create_witnessADestructive
Apply to become a Super Representative (SR). Requires the configured wallet and burns 9999 TRX as application fee.
Inputs: url (required), network.
delegate_resourceADestructive
Delegate staked resources (BANDWIDTH or ENERGY) from the configured wallet to another address.
Inputs: amount (required), resource (required), receiverAddress (required), lock, +2 more.
delete_proposalADestructive
Delete a governance proposal (SR only, only the proposal creator can delete it).
Inputs: proposalId (required), network.
deploy_contractBDestructive
Deploy a smart contract to the TRON network using ABI and Bytecode.
Inputs: abi (required), bytecode (required), args, name, +2 more.
estimate_energyBRead-onlyIdempotent
Estimate energy consumption for a smart contract call (simulation).
Inputs: abi (required), address (required), functionName (required), args, +2 more.
fetch_contract_abiARead-onlyIdempotent
Fetch contract ABI from the chain (for verified contracts). Returns the ABI entry array.
Inputs: contractAddress (required), network.
freeze_balance_v2CDestructive
Freeze TRX to get resources (Stake 2.0).
Inputs: amount (required), network, resource.
generate_accountARead-only
Generate a new TRON account offline (keypair generation). Returns privateKey, publicKey, and address. No network interaction needed.
Inputs: no named parameters.
get_accountBRead-onlyIdempotent
Get full account information including balance, resources, permissions, frozen balance, and votes.
Inputs: address (required), network.
get_account_balanceARead-onlyIdempotent
Get account TRX balance at a specific block height.
Inputs: address (required), blockHash (required), blockNumber (required), network.
get_account_infoARead-onlyIdempotent
Get comprehensive account information from TronGrid indexed data, including TRX balance, TRC20 balances, frozen resources, and votes. Data comes from the TronGrid indexer and may have slight delays compared to on-chain state.
Inputs: address (required), network, onlyConfirmed.
get_account_internal_transactionsARead-onlyIdempotent
Get internal transactions (triggered by smart contract execution) for an account from TronGrid indexed data. Supports pagination via limit + fingerprint. Default 20, max 200.
Inputs: address (required), limit, network, orderBy, +5 more.
get_account_netBRead-onlyIdempotent
Get bandwidth (net) resource information for an account.
Inputs: address (required), network.
get_account_resourceARead-onlyIdempotent
Get account resource details including energy, bandwidth, frozen balance, and delegation info.
Inputs: address (required), network.
get_account_transactionsARead-onlyIdempotent
Get transaction history for an account from TronGrid indexed data. Returns all transaction types (TRX transfers, contract calls, etc.). Supports pagination via limit + fingerprint. Default 20 results, max 200 per page.
Inputs: address (required), limit, network, orderBy, +5 more.
get_account_trc20_balancesARead-onlyIdempotent
Get all TRC20 token balances for an account from TronGrid indexed data. Returns only token contract addresses and raw balances — does NOT include token metadata (name, symbol, decimals). Use get_token_balance for detailed info on a specific token.
Inputs: address (required), network, onlyConfirmed.
get_account_trc20_transactionsARead-onlyIdempotent
Get TRC20 token transfer history for an account from TronGrid indexed data. Returns token transfer details including token info (name, symbol, decimals) and human-readable values. Supports pagination via limit + fingerprint. Default 20 results, max 200 per page.
Inputs: address (required), limit, network, orderBy, +6 more.
get_approved_listARead-onlyIdempotent
Query the list of accounts that have signed a given transaction. Pass the full transaction JSON object.
Inputs: transaction (required), network.
get_available_unfreeze_countBRead-onlyIdempotent
Get remaining available unstake (unfreeze) operations for an address in Stake 2.0.
Inputs: address (required), network.
get_balanceCRead-onlyIdempotent
Get the TRX balance for an address
Inputs: address (required), network.
get_bandwidth_pricesBRead-only
Query historical bandwidth unit price on the TRON network.
Inputs: network.
get_blockCRead-onlyIdempotent
Get block details by block number or hash
Inputs: blockIdentifier (required), network.
get_block_balanceARead-onlyIdempotent
Get all balance change operations in a block. Requires block hash and block number. Note: requires the node to enable historical balance query.
Inputs: hash (required), number (required), network.
get_block_by_idARead-onlyIdempotent
Query block by block ID (hash). Returns block header and transaction list.
Inputs: value (required), network.
get_block_by_latest_numARead-only
Retrieve the most recent N blocks, starting from the latest solidified block in descending order of height.
Inputs: num (required), network.
get_block_by_limit_nextCRead-onlyIdempotent
Retrieve a list of block objects within the specified block height range [startNum, endNum).
Inputs: endNum (required), startNum (required), network.
get_block_by_numBRead-onlyIdempotent
Query block by block height. Returns block header and transaction list.
Inputs: num (required), network.
get_brokerageARead-onlyIdempotent
Query the brokerage ratio (dividend percentage) of a Super Representative. The brokerage value is the percentage that the SR keeps; the rest is distributed to voters.
Inputs: witnessAddress (required), network.
get_burn_trxARead-only
Query the total amount of TRX burned from on-chain transaction fees since No. 54 Committee Proposal took effect.
Inputs: network.
get_can_delegated_max_sizeARead-onlyIdempotent
Get the maximum amount of TRX (in Sun) that an address can currently delegate as resources (BANDWIDTH or ENERGY) under Stake 2.0.
Inputs: address (required), resource (required), network.
get_can_withdraw_unfreeze_amountBRead-onlyIdempotent
Get the withdrawable unstaked TRX amount for an address at a given timestamp in Stake 2.0.
Inputs: address (required), network, timestampMs.
get_chain_infoBRead-onlyIdempotent
Get information about a TRON network: current block number and RPC endpoint
Inputs: network.
get_chain_parametersARead-only
Get current chain parameters including Energy and Bandwidth unit prices. Returns structured fee information similar to gas price queries.
Inputs: network.
get_contractARead-onlyIdempotent
Get raw contract metadata from the chain, including ABI (if verified) and bytecode.
Inputs: contractAddress (required), network.
get_contract_infoBRead-onlyIdempotent
Get high-level information about a contract: ABI, readable function signatures, and raw metadata.
Inputs: contractAddress (required), network.
get_contract_internal_transactionsARead-onlyIdempotent
Get internal transactions (triggered by smart contract execution) for a contract address from TronGrid indexed data. Supports pagination via limit + fingerprint. Default 20, max 200.
Inputs: address (required), limit, network, orderBy, +5 more.
get_contract_transactionsARead-onlyIdempotent
Get transaction history for a smart contract from TronGrid indexed data. Unlike get_account_transactions, this aggregates transactions BY contract. Supports pagination via limit + fingerprint. Default 20 results, max 200 per page.
Inputs: address (required), limit, network, orderBy, +5 more.
get_delegated_resourceBRead-onlyIdempotent
Query the amount of resources delegated from one account to another (Stake 2.0).
Inputs: toAddress (required), fromAddress (required), network.
get_delegated_resource_account_index_v2ARead-onlyIdempotent
Get delegated resource account index for an address under Stake 2.0 (who delegated to this address and who this address delegated to).
Inputs: address (required), network.
get_delegated_resource_indexBRead-onlyIdempotent
Query the resource delegation index for an account: who delegated to this account, and who this account delegated to.
Inputs: address (required), network.
get_delegated_resource_v2BRead-onlyIdempotent
Get delegated resource details (bandwidth and energy) between two addresses under Stake 2.0.
Inputs: toAddress (required), fromAddress (required), network.
get_energy_pricesBRead-only
Query historical energy unit price on the TRON network.
Inputs: network.
get_events_by_block_numberARead-onlyIdempotent
Get events emitted in a specific block. Supports pagination via limit and fingerprint. Preferred over get_events_of_latest_block when you need precise block targeting or full event retrieval.
Inputs: blockNumber (required), limit, network, fingerprint, +1 more.
get_events_by_contract_addressCRead-only
Get recent events emitted by a specific contract address.
Inputs: contractAddress (required), limit, network, orderBy, +3 more.
get_events_by_transaction_idBRead-onlyIdempotent
Get all events emitted by a specific transaction.
Inputs: transactionId (required), network, onlyConfirmed.
get_events_of_latest_blockARead-only
Get events from the most recent block that contains events (skips empty blocks). Results may be limited by the API default page size and subject to event indexing lag. For precise control, use get_events_by_block_number with a specific block number and limit/fingerprint pagination.
Inputs: network, onlyConfirmed.
get_latest_blockCRead-only
Get the latest block from the network
Inputs: network.
get_next_maintenance_timeBRead-only
Get the timestamp of the next network maintenance window.
Inputs: network.
get_node_infoBRead-only
Get detailed information about the current TRON node, including version, config, peers, and machine info.
Inputs: network.
get_now_blockCRead-only
Get the current latest block information from the network.
Inputs: network.
get_paginated_witnessesBRead-only
Get a paginated list of current active Super Representatives.
Inputs: limit, offset, network.
get_pending_sizeBRead-only
Get the number of transactions currently in the pending pool (mempool).
Inputs: network.
get_pending_transactionsBRead-only
Get the list of transaction IDs currently in the pending pool (mempool).
Inputs: network.
get_proposalCRead-onlyIdempotent
Get details of a specific governance proposal by its ID.
Inputs: proposalId (required), network.
get_rewardBRead-only
Query the current unclaimed voting reward for an address.
Inputs: address (required), network.
get_supported_networksARead-onlyIdempotent
Get a list of all supported TRON networks
Inputs: no named parameters.
get_token_balanceBRead-onlyIdempotent
Get the TRC20 token balance for an address
Inputs: address (required), tokenAddress (required), network.
get_transactionCRead-onlyIdempotent
Get transaction details by transaction hash
Inputs: txHash (required), network.
get_transaction_by_idBRead-onlyIdempotent
Query transaction status and content by transaction hash.
Inputs: value (required), network.
get_transaction_from_pendingBRead-onlyIdempotent
Get the details of a specific transaction from the pending pool by its transaction ID.
Inputs: txId (required), network.
get_transaction_infoBRead-onlyIdempotent
Get transaction info (receipt/confirmation status, energy usage, logs).
Inputs: txHash (required), network.
get_transaction_info_by_block_numARead-onlyIdempotent
Get TransactionInfo (receipts) for all transactions in a specific block height.
Inputs: num (required), network.
get_transaction_info_by_idARead-onlyIdempotent
Query transaction receipt including energy usage, fee, logs, and confirmation status by transaction hash.
Inputs: value (required), network.
get_trc20_token_holdersARead-onlyIdempotent
Get token holder list for a TRC20 contract from TronGrid indexed data. Returns holder addresses and their balances. Supports pagination via limit + fingerprint.
Inputs: address (required), limit, network, orderBy, +1 more.
get_wallet_addressARead-onlyIdempotent
Get the address of the configured wallet. Use this to verify which wallet is active.
Inputs: no named parameters.
list_nodesBRead-only
List all connected node addresses on the TRON network. Returns an array of node IP:port strings.
Inputs: network.
list_proposalsCRead-only
List all network governance proposals.
Inputs: network.
list_walletsARead-onlyIdempotent
List all available wallets. Returns wallet IDs, types, and addresses. Use select_wallet to switch between them.
Inputs: no named parameters.
list_witnessesARead-only
Get the full list of all Super Representatives (SR / witnesses) on the network.
Inputs: network.
multicallBRead-onlyIdempotent
Execute multiple read-only functions in a single batch call.
Inputs: calls (required), network, version, allowFailure, +1 more.
read_contractBRead-onlyIdempotent
Call read-only functions on a smart contract.
Inputs: functionName (required), contractAddress (required), abi, args, +1 more.
select_walletAIdempotent
Switch the active wallet at runtime. Use list_wallets to see available wallet IDs. Only available in Encrypted Storage mode.
Inputs: walletId (required).
sign_messageBIdempotent
Sign an arbitrary message using the configured wallet.
Inputs: message (required).
transfer_trc20CDestructive
Transfer TRC20 tokens to an address.
Inputs: to (required), amount (required), tokenAddress (required), network.
transfer_trxCDestructive
Transfer TRX to an address.
Inputs: to (required), amount (required), network.
undelegate_resourceADestructive
Revoke previously delegated staked resources (BANDWIDTH or ENERGY) from a receiver address back to the configured wallet.
Inputs: amount (required), resource (required), receiverAddress (required), network.
unfreeze_balance_v2BDestructive
Unfreeze TRX to release resources (Stake 2.0).
Inputs: amount (required), network, resource.
update_accountADestructive
Update the name of the configured wallet's account. Can only be set once.
Inputs: accountName (required), network.
update_brokerageA
Update the SR brokerage ratio (dividend ratio). Only callable by an SR. Value is the percentage the SR keeps (0-100); the remainder goes to voters.
Inputs: brokerage (required), network.
update_contract_settingADestructive
Update a contract's consume_user_resource_percent (user pay ratio). Requires the contract creator's wallet.
Inputs: contractAddress (required), consumeUserResourcePercent (required), network.
update_energy_limitADestructive
Update a contract's originEnergyLimit (max energy the contract creator will pay per execution). Requires the contract creator's wallet.
Inputs: contractAddress (required), originEnergyLimit (required), network.
update_witnessB
Update the SR node website URL for the configured wallet (must already be an SR).
Inputs: url (required), network.
validate_addressBRead-onlyIdempotent
Validate a TRON address and detect its format (Base58 or Hex).
Inputs: address (required).
vote_witnessA
Vote for Super Representatives using TRON Power (obtained by freezing TRX). Each frozen TRX = 1 vote.
Inputs: votes (required), network.
withdraw_balanceB
Withdraw accumulated voting rewards to the configured wallet's available balance.
Inputs: network.
withdraw_expire_unfreezeADestructive
Withdraw expired unfrozen balance (Stake 2.0). Call this after the unfreezing period to return TRX to available balance.
Inputs: network.
write_contractADestructive
Execute state-changing functions on a smart contract. Requires configured wallet.
Inputs: functionName (required), contractAddress (required), abi, args, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 97 tools
Many tools overlap heavily, especially block retrieval (get_block, get_latest_block, get_block_by_num, get_block_by_id, get_block_by_latest_num, get_block_by_limit_next, get_now_block) and transaction lookup (get_transaction, get_transaction_by_id, get_transaction_info, get_transaction_info_by_id). Account and contract metadata tools also blur together (get_account/get_account_info/get_account_balance/get_balance; get_contract/get_contract_info/fetch_contract_abi).
Most names use snake_case, but conventions are not fully predictable: noun_verb forms like account_permission_update coexist with verb_noun forms like update_account, and similar operations use different suffixes (_by_id, _by_num, _v2). Redundant aliases such as get_now_block and get_latest_block further reduce naming clarity.
97 tools is far beyond a well-scoped surface for this server, and many are near-duplicates or thin aliases for the same underlying node endpoint. The large count increases selection burden without adding proportional capability.
The surface covers a very broad TRON domain: accounts, blocks, transactions, contracts, events, staking, delegation, governance, Super Representatives, wallet management, and indexed history. Core read and write workflows appear fully represented with no obvious dead ends.
Maintenance
Related MCP Connectors
TRON Energy marketplace + DEX swap aggregator for AI agents. 27 MCP tools.
TRON energy exchange for AI agents. 54 tools, 30 prompts, 21 resources. A2A + ACP.
MCP server connecting AI agents to non-custodial staking data across 130+ networks.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
AlicenseBqualityBmaintenanceAn MCP server enabling AI agents to interact with JustLend DAO on TRON for lending, borrowing, and portfolio management, plus general TRON chain utilities.9873 npm3MIT- AlicenseCqualityDmaintenanceMCP server for TRON blockchain integration, enabling AI assistants to check balances, manage transactions, interact with smart contracts, and access real-time blockchain data.332MIT
- AlicenseBqualityDmaintenanceAn MCP server that enables AI agents to interact with the Solana blockchain through 20 tools for wallet management, SPL token operations, blockchain exploration, and DeFi integration via Jupiter.21MIT
- AlicenseAqualityDmaintenanceAn MCP server for AI agents to interact with the JustLend DAO lending protocol on TRON, plus general TRON chain utilities like balances, transfers, and staking.3718 npmMIT