MERX - TRON Infrastructure for AI Agents

by Hovsteder

301 downloads
Not rated
GitHub

About

TRON infrastructure layer for AI agents. 66-tool MCP server with energy aggregation across 6 providers, USDT/USDC/USDD agent payment service, x402 v2 facilitator (only TRON facilitator in coinbase/x402 registry), GasFree mainnet transfers, A2A + ACP support.

Details

Author
Hovsteder
Downloads
301
Categories
Cloud Service, AI

- Agent payment service for USDT, USDC, and USDD
- x402 v2 facilitator with three settlement schemes on TRON mainnet
- GasFree stablecoin transfers from zero-TRX wallets
- Real-time energy aggregation from 6 providers (saves up to 94% on fees)
- SunSwap V2 DEX integration with exact energy simulation
- A2A (7 skills) and ACP (7 capabilities) protocol coverage

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MERX - TRON Infrastructure for AI Agents
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Use the hosted SSE endpoint at https://merx.exchange/mcp/sse for zero install, or run locally via npx merx-mcp. It is also available as a one-line Claude Code plugin. Access tiers control which of the 66 tools are available: ~22 read-only tools require no keys, ~42 tools need a MERX API key, and all 66 tools require a TRON private key.

get_prices

Get current energy and bandwidth prices from all Merx providers, sorted by best (minimum) price across all duration tiers. Each provider lists ALL its duration tiers (5min/1h/1d/7d/30d etc) — short rentals are usually more expensive per unit than long ones, so always check tier-by-tier. Optionally filter by exact duration in seconds. No auth required.

get_best_price

Quick lookup of the single cheapest provider for a resource type, with optional minimum amount filter. CAVEAT: this returns a single representative price per provider, not broken down by duration tier — short rentals (5min) and long rentals (30 days) have very different per-unit prices and this tool does not distinguish between them. For an accurate per-tier comparison, use get_prices(duration=N) where N is the exact rental duration in seconds (e.g. 3600 for 1h, 86400 for 1d, 2592000 for 30d). Use get_best_price only when you need the absolute floor price as a quick sanity-check. No auth required.

analyze_prices

Market price analysis with trends and recommendations. No auth required.

get_price_history

Historical price snapshots. No auth required.

compare_providers

Side-by-side provider comparison with prices and availability. No auth required.

estimate_transaction_cost

Estimate cost of a TRON transaction BEFORE sending. Aliases: estimate_cost, calculate_cost, transaction_cost, energy_cost, transfer_cost. Calculate exactly how much energy, bandwidth, and TRX a TRON transaction will cost before sending it. Use this to answer questions like "how much does a USDT transfer cost?" or "what will it cost me to send 100 USDT to address X?". Returns: energy units needed, bandwidth needed, TRX cost if you burn directly, and TRX cost if you rent energy from Merx (typically 70-80% cheaper). Supports trc20_transfer (e.g. USDT/USDC), trc20_approve, trx_transfer, and custom contract calls. No auth required.

check_address_resources

Check energy, bandwidth, and TRX balance for any TRON address. No auth required.

create_order

Buy energy or bandwidth on Merx. Routed to cheapest provider. Auth required.

get_order

Get order status by UUID. Aliases: get_order_status, check_order, order_status, order_details, fetch_order. Check the status and fill details of an existing order by its UUID. Returns current status (PENDING/FILLING/FILLED/PARTIAL/FAILED/CANCELLED), fill amounts, provider used, on-chain delegation tx hash if delivered. Use this to poll order progress after creating an order. Auth required (API key).

list_orders

List recent orders with optional status filter. Auth required.

ensure_resources

Declarative resource provisioning. Checks current resources on target address and purchases only what is missing. Auth required.

wait_for_delegation

Block until an order reaches a terminal state (FILLED, PARTIAL, FAILED, or CANCELLED) by polling get_order at fixed intervals. Use this right after create_order when you need to confirm the energy/bandwidth has actually been delegated on-chain before sending the next transaction. Returns the final order details including the on-chain delegation tx hash. Auth required.

get_balance

Get your Merx account balance (TRX, USDT, locked). Requires MERX_API_KEY.

get_deposit_info

Get your Merx deposit address and memo. Requires MERX_API_KEY.

get_transaction_history

Get your Merx account transaction history. Requires MERX_API_KEY.

explain_concept

Explain a TRON or Merx concept in plain language. Hardcoded topics (exact match): energy, bandwidth, staking, delegation, sun_units, burn_vs_rent, merx_routing, provider_types. The lookup is fuzzy — substring matches also work, so "rent" finds "burn_vs_rent" and "providers" finds "provider_types". For topics outside this list (e.g. x402, stablecoins, gasfree), pick the closest hardcoded topic, or just answer the question yourself from the broader context — this tool only returns canned explanations of TRON resource economics.

suggest_duration

Recommend a rental duration based on your use case. No authentication required.

calculate_savings

Calculate savings from renting energy vs burning TRX. No authentication required.

list_providers

List all Merx providers with types, durations, and availability. No authentication required.

get_account_info

Inspect any TRON address. Aliases: check_address, get_address_info, get_wallet_info, address_info, account_status. Read the full on-chain state of ANY TRON address (does not have to be your own): TRX balance, free + delegated energy, free + delegated bandwidth, frozen TRX, account creation timestamp. Use this to check if an address has enough resources before sending a transaction, or to inspect any TRON wallet. No auth required, no API key needed.

get_trx_balance

Quick TRX balance for a TRON address. No auth required.

get_trc20_balance

Get TRC-20 token balance for an address. Supports symbol (USDT, USDC) or contract address. No auth required.

get_transaction

Look up a transaction by ID on TRON. No auth required.

get_block

Get TRON block info by number (or latest if omitted). No auth required.

get_chain_parameters

Get TRON network parameters (energy fee, bandwidth cost, etc.) with Merx price comparison. No auth required.

convert_address

Convert TRON address between base58 (T...) and hex (41...) formats. No auth required.

get_trx_price

Get current TRX price from CoinGecko. No auth required.

validate_address

Validate a TRON address format and check on-chain status. No auth required.

search_transaction_history

Get on-chain transaction history for a TRON address. No auth required.

transfer_trx

Send TRX to an address. Checks bandwidth, buys via Merx if needed. Signs and broadcasts on-chain. Requires TRON_PRIVATE_KEY.

transfer_trc20

Transfer TRC-20 tokens with automatic energy optimization. Signs and broadcasts on-chain. Requires TRON_PRIVATE_KEY.

approve_trc20

Approve TRC-20 spending allowance. Signs and broadcasts on-chain. Requires TRON_PRIVATE_KEY.

get_token_info

Get TRC-20 token metadata: name, symbol, decimals, total supply. No auth required.

read_contract

Call a view/pure function on a TRON smart contract. No auth or private key required.

estimate_contract_call

Estimate energy and bandwidth cost for a smart contract call. Compares rental vs burn cost. No auth required.

call_contract

Execute a state-changing smart contract function. Estimates resources, buys via Merx if needed. Requires TRON_PRIVATE_KEY and TRON_ADDRESS.

get_contract_info

Get on-chain metadata for a TRON smart contract: existence check, owner address, energy origin, code hash, contract name (if set), ABI entries count. Use this to check whether an address is a contract before calling read_contract or estimate_contract_call. For TRC20-specific metadata (name, symbol, decimals, totalSupply) use get_token_info instead. No auth required.

get_swap_quote

Get a real swap quote from SunSwap V2. No auth required.

execute_swap

Execute a token swap on SunSwap V2. Requires TRON_PRIVATE_KEY.

get_token_price

Get token price via SunSwap quote + CoinGecko USD rate. No auth required.

create_account

Create a new Merx account, generate an API key, and get deposit info. No auth needed.

login

Log in to an existing Merx account. No MERX_API_KEY needed.

set_api_key

Set your Merx API key for this session. Unlocks all authenticated tools (trading, balance, orders). Use this if you already have an API key.

set_private_key

Set your TRON private key for this session. Address is derived automatically. Enables write tools: transfer_trx, transfer_trc20, approve_trc20, execute_swap, deposit_trx. Key stays local - never sent to Merx servers.

deposit_trx

Deposit TRX to your Merx account. Requires MERX_API_KEY + TRON_PRIVATE_KEY.

enable_auto_deposit

Configure automatic top-up when balance drops below a threshold. The configuration lives ONLY in the current MCP session — it is held in memory by the MCP server process and is lost on server restart, MCP client reconnect, or server redeploy. Top-ups are signed locally with TRON_PRIVATE_KEY and sent to your Merx deposit address (memo-routed). For persistent auto-deposit you currently need to call this tool again at the start of each session.

pay_invoice

Pay an x402 invoice by signing and broadcasting a TRX transfer to the invoice address, then verifying the payment with the facilitator. x402 (Coinbase + Cloudflare HTTP 402 standard) is the protocol AI agents use to pay APIs per call. Use this when you receive an invoice_id from a paywalled service or another agent. REQUIRES: TRON_PRIVATE_KEY in env (use set_private_key first) AND a valid invoice_id from create_invoice or x402 challenge response. The transfer is signed locally — your private key never leaves the MCP process.

create_paid_order

Create a zero-registration order via x402 pay-per-use. Requires TRON_PRIVATE_KEY.

execute_intent

Plan a multi-step operation (transfer, swap, buy resources, etc) and return a cost estimate, total energy/bandwidth needed, and the cheapest resource acquisition strategy. NOTE: actual on-chain execution of multi-step intents is not yet wired up — currently returns the same plan as simulate, regardless of dry_run. Use this for planning; for real execution call the underlying tools (create_order, transfer_trc20, execute_swap) yourself in sequence. Auth required.

simulate

Dry-run a multi-step operation (transfer, swap, buy resources, etc) without sending anything on-chain. Returns per-step energy and bandwidth estimates plus a total TRX cost. Use this to preview a plan before committing — for example, before transferring USDT to multiple recipients you can simulate to see the total energy cost. No auth required.

create_standing_order

Create a server-side standing order with trigger-based automation. Auth required.

list_standing_orders

List all standing orders with optional status filter. Auth required.

get_standing_order

Get full details of a single standing order by its UUID. Returns trigger config, action params, budget, executions count, and status. Auth required (API key).

cancel_standing_order

Cancel a standing order by its UUID. The order is moved to CANCELLED status and will not trigger again. Already-executed actions are NOT reversed. Auth required (API key).

create_monitor

Create a persistent server-side monitor that fires notifications when a condition is met. Four monitor types: delegation_expiry (warns when leased energy is about to expire so you can re-rent), balance_threshold (fires when an address goes below a TRX/USDT level), price_alert (fires when energy/bandwidth price crosses a SUN threshold), address_activity (fires on any incoming TX). Notification defaults to webhook=true if omitted. Auth required (API key).

list_monitors

List all monitors you created with create_monitor, optionally filtered by status (ACTIVE/CANCELLED). Each row shows the full monitor UUID (pass to cancel_monitor), monitor type, target address, and status. Note: the Target column will be empty for monitor types that do not have a single watched address — specifically price_alert and balance_threshold (when watching the API key holder rather than a third-party address). For delegation_expiry and address_activity monitors, Target will always be set. Auth required (API key).

cancel_monitor

Cancel an active monitor by its UUID. The monitor stops firing notifications. Auth required (API key).

withdraw

Withdraw TRX or USDT from your Merx account to an external TRON address. The "amount" parameter is interpreted in the currency specified by "currency" — i.e. for currency=TRX it is TRX units, for currency=USDT it is USDT units. (The legacy parameter "amount_trx" is still accepted as an alias for backwards compatibility, but is misleading when currency is USDT — prefer "amount" in new code.) Requires MERX_API_KEY.

compile_policy

Convert a natural language energy management policy into MERX automation. Creates standing orders and monitors based on your instructions. Examples: - "Keep 500k energy on my wallet, buy when price is below 55 SUN, max 200 TRX/week" - "Buy energy every day at 6 AM UTC, 1 million units, for 24 hours" - "Alert me when my energy drops below 100k" Returns a preview of what will be created. Set apply=true to execute.

resource_broadcast

Broadcast a signed TRON transaction with automatic energy optimization. If the target address lacks sufficient energy, MERX purchases the deficit at the best market price before broadcasting. One call: estimate, buy energy, wait for delegation, broadcast. Requires MERX_API_KEY with the "broadcast" scope, and a pre-signed transaction. Returns txid on success, refunds on timeout. NOTE: This endpoint is currently behind a feature flag and disabled by default in production. If you get a 503 MAINTENANCE error, use the manual flow instead: call ensure_resources to provision energy, then sign and broadcast the transaction with your own TronWeb client.

register_agent

Register your TRON address as an agent on agent.merx.exchange. Required ONCE before using request_payment, create_invoice, watch_address, agent_status, or any other agent payment tool. Pass the TRON address you want to use as the on-chain identity for this API key. Idempotent — calling twice with the same key returns the existing registration. Auth required (API key).

request_payment

Create a TRC20 payment request on TRON (USDT, USDC, USDD, or any TRC20). Returns a payment address. Fires webhook when payment arrives (<3 seconds). Use for receiving payments from other agents or humans. Requires agent registration first — call register_agent if you get AGENT_NOT_REGISTERED error.

lookup_invoice

Look up a MERX invoice. Shows amount, recipient, token, and status. Agent must sign and broadcast the transfer separately (non-custodial).

create_invoice

Create an invoice for another agent or human to pay. Returns payment URL, address, and QR code. Payment is detected automatically via ZeroMQ (<3 seconds).

watch_address

Watch any TRON address for TRC20 transfers (USDT, USDC, USDD, or any token). Fires webhook on each matching transfer. Persistent - runs 24/7 even when conversation ends.

agent_status

Get a snapshot of your agent payment service: registered TRON address, count of pending payment requests (request_payment), active address watches (watch_address), and outstanding invoices (create_invoice). Use this right after register_agent to confirm the agent is set up, or any time you want to see how much in-flight activity your agent has. Auth required (API key) and agent must be registered first via register_agent.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "merx - tron infrastructure for ai agents": {
            "merx": {
                "url": "https://merx.exchange/mcp/sse"
            }
        }
    }
}

McpServers

{
    "merx": {
        "url": "https://merx.exchange/mcp/sse"
    }
}

MERX is the infrastructure layer for AI agents and agentic networks on TRON. Where Stripe is infrastructure for web commerce and Cloudflare for the open web, MERX is the missing infrastructure layer that lets autonomous AI agents discover, transact, and operate on TRON without ever touching energy, bandwidth, or low-level blockchain mechanics.

The MCP server exposes 66 tools across 18 categories, 30 prompts, and 21 live resources. Capabilities:

- Agent payment service for USDT, USDC, USDD: send, receive, watch, invoice, batch, schedule
- x402 v2 facilitator on TRON mainnet — three settlement schemes (exact, exact_permit, exact_gasfree). Only TRON facilitator in the coinbase/x402 ecosystem registry
- GasFree transfers via the MERX-deployed mainnet controller TKjJ1r5XYqnLZmLakcP3knis7Lh6gm3qtR — agents send stablecoins from zero-TRX wallets
- Energy aggregation across 6 active providers with real-time best-price routing (saves up to 94% on TRX fees)
- SunSwap V2 DEX integration with exact energy simulation
- Standing orders, intent execution, on-chain queries
- Natural-language Policy Engine powered by Anthropic Claude
- A2A (Google, 7 skills) and ACP (BeeAI, 7 capabilities) protocol coverage on the same backend

Three access tiers: ~22 read-only tools (no keys), ~42 tools with MERX API key, all 66 tools with TRON private key. Zero install via hosted SSE endpoint at https://merx.exchange/mcp/sse, or local stdio via npx merx-mcp. Also available as a one-line Claude Code plugin: github.com/Hovsteder/merx-claude-plugin

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.