Skip to main content
Glama

MCP Server Tron

License: MIT TRON Network TypeScript MCP TronWeb

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; --readonly hides 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... or 0x...) and Base58 (T...) formats.

  • Validation: Verify if an address is valid on TRON.

Smart Contract Interactions

  • Read Contract: Call view and pure functions.

  • 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-wallet SDK.

  • 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: nile

  • Shasta Testnet: shasta

Prerequisites

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 install

Configuration

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_KEY is set (and non-empty), the server uses https://api.trongrid.io as the default RPC hosts.

    • Fallback: When TRONGRID_API_KEY is not set, the server uses https://tg.ops.sunpump.xyz as the default RPC hosts for mainnet.

    • 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-wallet for wallet file formats, local setup, and the SDK-supported AGENT_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:http

HTTP 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:test

Docker logs are written to the mounted logs/ directory and are named by date, for example:

  • logs/mcp-server-tron-2026-03-18-combined.log

  • logs/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 integration
  • Unit 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

Runs the latest version directly from npm via stdio transport.

Claude Code:

claude mcp add mcp-server-tron -- npx -y @bankofai/mcp-server-tron

Cursor (.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/mcp

Cursor (.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_wallet_address

Get the configured wallet's address (Base58 & Hex).

-

list_wallets

List all available wallets with IDs and addresses.

-

select_wallet

Switch the active wallet at runtime (agent-wallet mode).

walletId

convert_address

Convert between Hex and Base58 formats.

address

Network & Resources

Tool Name

Description

Key Parameters

get_chain_info

Get current block and chain ID.

network

get_chain_parameters

Get current Energy and Bandwidth costs.

network

get_energy_prices

Query historical energy unit price.

network

get_bandwidth_prices

Query historical bandwidth unit price.

network

get_burn_trx

Query total TRX burned from fees.

network

get_supported_networks

List available networks.

-

Blocks & Transactions

Tool Name

Description

Key Parameters

get_block

Fetch block by number or hash.

blockIdentifier, network

get_latest_block

Get the latest block.

network

get_transaction

Get transaction details by hash.

txHash, network

get_transaction_info

Get receipt/info including resource usage.

txHash, network

get_block_by_num

Query block by block height.

num, network

get_block_by_id

Query block by block ID (hash).

value, network

get_block_by_latest_num

Get latest N blocks (solidified).

num, network

get_block_by_limit_next

Get blocks in range [startNum, endNum).

startNum, endNum, network

get_now_block

Get the current latest block info.

network

get_transaction_by_id

Query transaction status/content by txID.

value, network

get_transaction_info_by_id

Query transaction receipt by txID.

value, network

get_transaction_info_by_block_num

Get receipts for all txs in a block.

num, network

get_approved_list

Query the list of accounts that signed a transaction.

transaction, network

get_block_balance

Get all balance change operations in a block.

hash, number, network

Broadcast & Transaction Building (Write)

Tool Name

Description

Key Parameters

create_transaction

Create an unsigned TRX transfer transaction.

ownerAddress, toAddress, amount, network

broadcast_transaction

Broadcast a signed transaction JSON object to the TRON network.

transaction, network

broadcast_hex

Broadcast a signed protobuf-encoded transaction hex string.

transaction, network

Balances

Tool Name

Description

Key Parameters

get_balance

Get TRX balance for an address.

address, network

get_token_balance

Get TRC20 token balance for an address.

address, tokenAddress, network

Transfers (Write)

Tool Name

Description

Key Parameters

transfer_trx

Send TRX (Native) to an address.

to, amount, network

transfer_trc20

Send TRC20 tokens to an address.

tokenAddress, to, amount, network

Smart Contracts

Tool Name

Description

Key Parameters

read_contract

Call read-only (view/pure) functions.

contractAddress, functionName, args, network

get_contract

Get raw contract metadata (ABI, bytecode) from chain.

contractAddress, network

get_contract_info

Get ABI, function list and raw metadata.

contractAddress, network

fetch_contract_abi

Fetch ABI entry array for verified contracts.

contractAddress, network

multicall

Execute multiple read calls in one batch.

calls, network

write_contract

Execute state-changing contract functions.

contractAddress, functionName, args, value, network

deploy_contract

Deploy a smart contract with ABI and bytecode.

abi, bytecode, args, network

estimate_energy

Estimate energy consumption for a contract call.

address, functionName, abi, network

update_contract_setting

Update consume_user_resource_percent (creator only).

contractAddress, consumeUserResourcePercent, network

update_energy_limit

Update originEnergyLimit (creator only).

contractAddress, originEnergyLimit, network

clear_abi

Clear on-chain ABI metadata (creator only).

contractAddress, network

Account Management

Tool Name

Description

Key Parameters

get_account

Get full account info (balance, resources, permissions, etc.).

address, network

get_account_balance

Get TRX balance at a specific block height.

address, blockHash, blockNumber, network

generate_account

Generate a new TRON keypair offline.

-

validate_address

Validate a TRON address and detect format.

address

get_account_net

Get bandwidth information for an account.

address, network

get_account_resource

Get energy, bandwidth, and delegation details.

address, network

get_delegated_resource

Query delegated resources between two accounts (Stake 2.0).

fromAddress, toAddress, network

get_delegated_resource_index

Query delegation index (who delegated to/from this account).

address, network

create_account

Activate a new account on-chain (costs bandwidth).

address, network

update_account

Set account name (can only be set once).

accountName, network

account_permission_update

Update multi-signature permissions.

ownerPermission, activePermissions, network

Staking (Stake 2.0)

Tool Name

Description

Key Parameters

freeze_balance_v2

Freeze TRX to get resources (BANDWIDTH/ENERGY).

amount, resource, network

unfreeze_balance_v2

Unfreeze TRX to release resources.

amount, resource, network

withdraw_expire_unfreeze

Withdraw expired unfrozen balance back to available.

network

cancel_all_unfreeze_v2

Re-stake pending unfreezes; withdraw expired ones.

network

get_available_unfreeze_count

Get remaining unstake operation quota (max 32).

address, network

get_can_withdraw_unfreeze_amount

Get withdrawable TRX from unfreeze at a timestamp.

address, timestampMs, network

Account resource (Stake 2.0 delegation)

Tool Name

Description

Key Parameters

delegate_resource

Delegate BANDWIDTH/ENERGY to another address.

receiverAddress, amount, resource, network

undelegate_resource

Revoke delegated resources.

receiverAddress, amount, resource, network

get_can_delegated_max_size

Get max delegatable amount for an address.

address, resource, network

get_delegated_resource_v2

Get delegation details between two addresses.

fromAddress, toAddress, network

get_delegated_resource_account_index_v2

Get who delegated to/from an address.

address, network

Governance (Super Representatives)

Tool Name

Description

Key Parameters

list_witnesses

Get the full list of all Super Representatives on the network.

network

get_paginated_witnesses

Get a paginated list of current active Super Representatives.

offset, limit, network

get_next_maintenance_time

Get the next SR maintenance (vote tally) time.

network

get_reward

Get unclaimed SR voting reward for an address.

address, network

get_brokerage

Get SR brokerage ratio (reward split with voters).

address, network

create_witness

Apply to become a Super Representative candidate.

url, network

update_witness

Update Super Representative URL.

url, network

vote_witness

Vote for Super Representatives with frozen TRX.

votes, network

withdraw_balance

Withdraw accumulated SR block rewards.

network

update_brokerage

Update SR brokerage ratio.

brokerage, network

Proposals

Tool Name

Description

Key Parameters

list_proposals

List all network governance proposals.

network

get_proposal

Get details of a specific proposal by ID.

proposalId, network

create_proposal

Create a new governance proposal (SR only).

parameters, network

approve_proposal

Approve or revoke a proposal (SR only).

proposalId, hasApproval, network

delete_proposal

Delete a proposal (creator only).

proposalId, network

Events

Tool Name

Description

Key Parameters

get_events_by_transaction_id

Get all events emitted by a specific transaction.

transactionId, onlyConfirmed, network

get_events_by_contract_address

Get events emitted by a specific contract.

contractAddress, eventName, network

get_events_by_block_number

Get all events emitted in a specific block.

blockNumber, network

get_events_of_latest_block

Get all events from the latest block.

network

Account Data (TronGrid)

Tool Name

Description

Key Parameters

get_account_info

Get account summary from TronGrid.

address, network

get_account_transactions

Get transaction history for an account.

address, limit, network

get_account_trc20_transactions

Get TRC20 transfer history for an account.

address, limit, network

get_account_internal_transactions

Get internal transaction history for an account.

address, limit, network

get_account_trc20_balances

Get all TRC20 token balances for an account.

address, network

Contract Data (TronGrid)

Tool Name

Description

Key Parameters

get_contract_transactions

Get transaction history for a contract.

contractAddress, limit, network

get_contract_internal_transactions

Get internal transactions for a contract.

contractAddress, limit, network

get_trc20_token_holders

Get holder list for a TRC20 token.

contractAddress, limit, network

Mempool

Tool Name

Description

Key Parameters

get_pending_transactions

Get transaction IDs in the pending pool (mempool).

network

get_transaction_from_pending

Get a specific transaction from the pending pool.

txId, network

get_pending_size

Get the current size of the pending transaction pool.

network

Node

Tool Name

Description

Key Parameters

list_nodes

List all connected node addresses on the network.

network

get_node_info

Get detailed info about the connected full node.

network

Signing & Security

Tool Name

Description

Key Parameters

sign_message

Sign a message with the configured wallet.

message

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-wallet file-backed configuration instead of plain text MCP config files. This repository no longer maps legacy TRON_* wallet variables; use AGENT_WALLET_* only when following the agent-wallet SDK documentation.

  • Shared Machines: Be aware that plain environment variables can be visible to other users via /proc or 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.json

License

MIT

Available Tools

97 tools
account_permission_updateB
Destructive

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_hexA
Destructive

Broadcast a signed, protocol buffer-encoded transaction hex string to the TRON network.

Inputs: transaction (required), network.

broadcast_transactionA
Destructive

Broadcast a signed transaction to the TRON network. Accepts the full signed transaction JSON object.

Inputs: transaction (required), network.

cancel_all_unfreeze_v2B
Destructive

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_abiA
Destructive

Clear the on-chain ABI metadata of a contract (ClearABIContract). Requires the contract creator's wallet.

Inputs: contractAddress (required), network.

convert_addressB
Read-onlyIdempotent

Convert addresses between Hex and Base58 formats

Inputs: address (required).

create_accountA
Destructive

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_transactionA
Idempotent

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_witnessA
Destructive

Apply to become a Super Representative (SR). Requires the configured wallet and burns 9999 TRX as application fee.

Inputs: url (required), network.

delegate_resourceA
Destructive

Delegate staked resources (BANDWIDTH or ENERGY) from the configured wallet to another address.

Inputs: amount (required), resource (required), receiverAddress (required), lock, +2 more.

delete_proposalA
Destructive

Delete a governance proposal (SR only, only the proposal creator can delete it).

Inputs: proposalId (required), network.

deploy_contractB
Destructive

Deploy a smart contract to the TRON network using ABI and Bytecode.

Inputs: abi (required), bytecode (required), args, name, +2 more.

estimate_energyB
Read-onlyIdempotent

Estimate energy consumption for a smart contract call (simulation).

Inputs: abi (required), address (required), functionName (required), args, +2 more.

fetch_contract_abiA
Read-onlyIdempotent

Fetch contract ABI from the chain (for verified contracts). Returns the ABI entry array.

Inputs: contractAddress (required), network.

freeze_balance_v2C
Destructive

Freeze TRX to get resources (Stake 2.0).

Inputs: amount (required), network, resource.

generate_accountA
Read-only

Generate a new TRON account offline (keypair generation). Returns privateKey, publicKey, and address. No network interaction needed.

Inputs: no named parameters.

get_accountB
Read-onlyIdempotent

Get full account information including balance, resources, permissions, frozen balance, and votes.

Inputs: address (required), network.

get_account_balanceA
Read-onlyIdempotent

Get account TRX balance at a specific block height.

Inputs: address (required), blockHash (required), blockNumber (required), network.

get_account_infoA
Read-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_transactionsA
Read-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_netB
Read-onlyIdempotent

Get bandwidth (net) resource information for an account.

Inputs: address (required), network.

get_account_resourceA
Read-onlyIdempotent

Get account resource details including energy, bandwidth, frozen balance, and delegation info.

Inputs: address (required), network.

get_account_transactionsA
Read-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_balancesA
Read-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_transactionsA
Read-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_listA
Read-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_countB
Read-onlyIdempotent

Get remaining available unstake (unfreeze) operations for an address in Stake 2.0.

Inputs: address (required), network.

get_balanceC
Read-onlyIdempotent

Get the TRX balance for an address

Inputs: address (required), network.

get_bandwidth_pricesB
Read-only

Query historical bandwidth unit price on the TRON network.

Inputs: network.

get_blockC
Read-onlyIdempotent

Get block details by block number or hash

Inputs: blockIdentifier (required), network.

get_block_balanceA
Read-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_idA
Read-onlyIdempotent

Query block by block ID (hash). Returns block header and transaction list.

Inputs: value (required), network.

get_block_by_latest_numA
Read-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_nextC
Read-onlyIdempotent

Retrieve a list of block objects within the specified block height range [startNum, endNum).

Inputs: endNum (required), startNum (required), network.

get_block_by_numB
Read-onlyIdempotent

Query block by block height. Returns block header and transaction list.

Inputs: num (required), network.

get_brokerageA
Read-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_trxA
Read-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_sizeA
Read-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_amountB
Read-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_infoB
Read-onlyIdempotent

Get information about a TRON network: current block number and RPC endpoint

Inputs: network.

get_chain_parametersA
Read-only

Get current chain parameters including Energy and Bandwidth unit prices. Returns structured fee information similar to gas price queries.

Inputs: network.

get_contractA
Read-onlyIdempotent

Get raw contract metadata from the chain, including ABI (if verified) and bytecode.

Inputs: contractAddress (required), network.

get_contract_infoB
Read-onlyIdempotent

Get high-level information about a contract: ABI, readable function signatures, and raw metadata.

Inputs: contractAddress (required), network.

get_contract_internal_transactionsA
Read-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_transactionsA
Read-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_resourceB
Read-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_v2A
Read-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_indexB
Read-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_v2B
Read-onlyIdempotent

Get delegated resource details (bandwidth and energy) between two addresses under Stake 2.0.

Inputs: toAddress (required), fromAddress (required), network.

get_energy_pricesB
Read-only

Query historical energy unit price on the TRON network.

Inputs: network.

get_events_by_block_numberA
Read-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_addressC
Read-only

Get recent events emitted by a specific contract address.

Inputs: contractAddress (required), limit, network, orderBy, +3 more.

get_events_by_transaction_idB
Read-onlyIdempotent

Get all events emitted by a specific transaction.

Inputs: transactionId (required), network, onlyConfirmed.

get_events_of_latest_blockA
Read-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_blockC
Read-only

Get the latest block from the network

Inputs: network.

get_next_maintenance_timeB
Read-only

Get the timestamp of the next network maintenance window.

Inputs: network.

get_node_infoB
Read-only

Get detailed information about the current TRON node, including version, config, peers, and machine info.

Inputs: network.

get_now_blockC
Read-only

Get the current latest block information from the network.

Inputs: network.

get_paginated_witnessesB
Read-only

Get a paginated list of current active Super Representatives.

Inputs: limit, offset, network.

get_pending_sizeB
Read-only

Get the number of transactions currently in the pending pool (mempool).

Inputs: network.

get_pending_transactionsB
Read-only

Get the list of transaction IDs currently in the pending pool (mempool).

Inputs: network.

get_proposalC
Read-onlyIdempotent

Get details of a specific governance proposal by its ID.

Inputs: proposalId (required), network.

get_rewardB
Read-only

Query the current unclaimed voting reward for an address.

Inputs: address (required), network.

get_supported_networksA
Read-onlyIdempotent

Get a list of all supported TRON networks

Inputs: no named parameters.

get_token_balanceB
Read-onlyIdempotent

Get the TRC20 token balance for an address

Inputs: address (required), tokenAddress (required), network.

get_transactionC
Read-onlyIdempotent

Get transaction details by transaction hash

Inputs: txHash (required), network.

get_transaction_by_idB
Read-onlyIdempotent

Query transaction status and content by transaction hash.

Inputs: value (required), network.

get_transaction_from_pendingB
Read-onlyIdempotent

Get the details of a specific transaction from the pending pool by its transaction ID.

Inputs: txId (required), network.

get_transaction_infoB
Read-onlyIdempotent

Get transaction info (receipt/confirmation status, energy usage, logs).

Inputs: txHash (required), network.

get_transaction_info_by_block_numA
Read-onlyIdempotent

Get TransactionInfo (receipts) for all transactions in a specific block height.

Inputs: num (required), network.

get_transaction_info_by_idA
Read-onlyIdempotent

Query transaction receipt including energy usage, fee, logs, and confirmation status by transaction hash.

Inputs: value (required), network.

get_trc20_token_holdersA
Read-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_addressA
Read-onlyIdempotent

Get the address of the configured wallet. Use this to verify which wallet is active.

Inputs: no named parameters.

list_nodesB
Read-only

List all connected node addresses on the TRON network. Returns an array of node IP:port strings.

Inputs: network.

list_proposalsC
Read-only

List all network governance proposals.

Inputs: network.

list_walletsA
Read-onlyIdempotent

List all available wallets. Returns wallet IDs, types, and addresses. Use select_wallet to switch between them.

Inputs: no named parameters.

list_witnessesA
Read-only

Get the full list of all Super Representatives (SR / witnesses) on the network.

Inputs: network.

multicallB
Read-onlyIdempotent

Execute multiple read-only functions in a single batch call.

Inputs: calls (required), network, version, allowFailure, +1 more.

read_contractB
Read-onlyIdempotent

Call read-only functions on a smart contract.

Inputs: functionName (required), contractAddress (required), abi, args, +1 more.

select_walletA
Idempotent

Switch the active wallet at runtime. Use list_wallets to see available wallet IDs. Only available in Encrypted Storage mode.

Inputs: walletId (required).

sign_messageB
Idempotent

Sign an arbitrary message using the configured wallet.

Inputs: message (required).

transfer_trc20C
Destructive

Transfer TRC20 tokens to an address.

Inputs: to (required), amount (required), tokenAddress (required), network.

transfer_trxC
Destructive

Transfer TRX to an address.

Inputs: to (required), amount (required), network.

undelegate_resourceA
Destructive

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_v2B
Destructive

Unfreeze TRX to release resources (Stake 2.0).

Inputs: amount (required), network, resource.

update_accountA
Destructive

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_settingA
Destructive

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_limitA
Destructive

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_addressB
Read-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_unfreezeA
Destructive

Withdraw expired unfrozen balance (Stake 2.0). Call this after the unfreezing period to return TRX to available balance.

Inputs: network.

write_contractA
Destructive

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

    B3/5.0

    Scored across 97 tools

    Disambiguation2/5

    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).

    Naming Consistency3/5

    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.

    Tool Count1/5

    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.

    Completeness5/5

    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

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      An 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.
      37
      18 npm
      MIT