# TronSave MCP Server > MCP server for the TronSave resource market: buy, sell, and extend TRON ENERGY/BANDWIDTH via typed tools over Streamable HTTP. Transport: Streamable HTTP. Endpoints: POST https://mcp.tronsave.io/mcp (mainnet), POST https://mcp.tronsave.io/testnet/mcp (testnet). OAuth 2.1 sign-in (API key or TRON wallet): POST https://mcp.tronsave.io/oauth/mcp (mainnet), POST https://mcp.tronsave.io/oauth/testnet/mcp (testnet); authorization server metadata at https://mcp.tronsave.io/.well-known/oauth-authorization-server. TronSave MCP: rent TRON ENERGY / BANDWIDTH on the TronSave market and manage TronSave accounts. Units: unit prices are SUN per resource unit; payment amounts are SUN (1 TRX = 1,000,000 SUN). durationSec is seconds. Under 1 day a unit price covers the whole rental; from 1 day up it is charged per started day (total = amount x unitPrice x ceil(durationSec / 86400)). For an exact total use estimateTrx from tronsave_estimate_buy_resource. Fields named extendTo (internal extend tools) are Unix epoch SECONDS. Network is fixed by the URL: /mcp = mainnet, /testnet/mcp = Nile testnet. Auth (check anytime with tronsave_get_session_status): - public tools: market data, quotes, tronsave_list_orders, tronsave_create_order with paymentMethod=onchain. - API key: tronsave_login {apiKey} or client header "Authorization: ApiKey ". Unlocks internal-account tools and paymentMethod=internal. - Wallet signature: tronsave_get_sign_message -> the user signs "message" in their own wallet -> tronsave_login {signature: "_"}. Unlocks profile, order update/cancel/manual-sell, auto-sell and api-key management. - If the app connected through OAuth sign-in, the user is already authenticated: check tronsave_get_session_status before asking them to log in. - Login is bound to this MCP connection automatically; never put session ids in tool arguments. - Never ask for private keys or seed phrases. All signing happens in the user's wallet. Buying resources: 1. tronsave_estimate_buy_resource -> unitPrice (SUN), estimateTrx (SUN), availableResource. 2. Present receiver, amount, duration, unit price and total (TRX) and get explicit user confirmation. 3. tronsave_create_order using orderUnitPrice / paymentPaymentAmount from step 1. 4. Verify with tronsave_get_order (signature session) or tronsave_list_orders. Safety: - Ask the user before calling any tool that is not readOnly. - Errors return {"error":{"code","message","retryable","hint"}}: follow hint. Never repeat a write when retryable is false; after UPSTREAM_TIMEOUT on a write, verify state first. - Reference: resource tronsave://guide/agent. ## Tools (53) - `tronsave_get_internal_account` (session) — Retrieve the Tronsave internal account profile for the current logged-in session (wallet/represent address, balances, deposit address). - `tronsave_get_deposit_address` (session) — Fetches the specific deposit address for the TronSave internal account. - `tronsave_internal_order_history` (session) — List paginated order history for the internal account linked to the API key, newest first. - `tronsave_internal_order_details` (session) — Fetch full details for one internal-account order by order ID. - `tronsave_internal_order_book` (session) — Return the current TronSave market depth/price tiers for ENERGY or BANDWIDTH via the api-key REST endpoint. - `tronsave_internal_order_estimate` (session) — Estimate the TRX cost and availability for a buy order before submitting it (api-key internal account). - `tronsave_internal_order_create` (session) — Place a new buy order for ENERGY or BANDWIDTH on TronSave, paid from the internal account balance. - `tronsave_internal_extend_delegates` (session) — Return extendable delegations for a receiver plus an `extendData` payload for the extension flow. - `tronsave_internal_create_extend_request` (session) — Submit an extension request for existing delegated resources on TronSave via authenticated REST `POST /v2/extend-request`. - `tronsave_get_sign_message` (public) — Step 1 of wallet login. - `tronsave_login` (public) — Log in to TronSave for the rest of this MCP connection. - `tronsave_logout` (public) — Remove the TronSave login bound to this MCP connection (api-key or signature). - `tronsave_get_session_status` (public) — Report the current authentication state without calling TronSave: `authMode` (none | api-key | signature), `source` (login | header), `walletAddress`, `hasInternalApiKey`, `expiresAt`, network, and which tool groups are available now. - `tronsave_get_user_info` (signature-session) — Read the current authenticated user's profile and linked TronSave internal account. - `tronsave_get_user_auto_setting` (signature-session) — Read the current user's auto-sell configuration (`autoSettings`). - `tronsave_get_user_permissions` (signature-session) — Read the enabled permission operations (`autoSettings.permitOperations`) for the authenticated user. - `tronsave_estimate_buy_resource` (public) — Quote price and availability for buying ENERGY or BANDWIDTH for a receiver address before placing an order. - `tronsave_get_order` (signature-session) — Read one order by `id` and return its full snapshot for NORMAL, FAST, or EXTEND order types. - `tronsave_list_orders` (public) — Query the market order list with paging (`offset`, `limit` ≤ 10). - `tronsave_list_order_books` (public) — Read market depth buckets for `ENERGY` or `BANDWIDTH`. - `tronsave_get_min_price` (public) — Quote the minimum unit price for a buy. - `tronsave_list_extendable_delegates` (public) — List extendable delegate candidates for a `receiver` and `resourceType` (ENERGY|BANDWIDTH). - `tronsave_create_order` (public) — Create a buy order for ENERGY/BANDWIDTH delegated to `orderReceiver`. - `tronsave_sell_order_manual` (signature-session) — Manually execute seller-side fulfillment of an existing order with a wallet `signedTx`. - `tronsave_cancel_order` (signature-session) — Cancel an open order by `orderId`. - `tronsave_update_order` (signature-session) — Update an open order by `orderId` with partial fields (`receiver`, `newPrice`). - `tronsave_register_auto_sell` (signature-session) — Create the initial auto-sell configuration for the authenticated user. - `tronsave_update_auto_sell_setting` (signature-session) — Update the existing auto-sell configuration with partial fields. - `tronsave_generate_api_key` (signature-session) — Generate a new internal API key credential for the current user. - `tronsave_revoke_api_key` (signature-session) — Revoke the caller's current internal API key. - `tronsave_delete_auto_buy_setting` (signature-session) — Permanently delete one auto-buy rule by `id` (`MObjectId`). - `tronsave_get_market_overview` (public) — Read the TronSave market summary: resource currently available and total listed for ENERGY and BANDWIDTH, number of pooled sellers, and seller APY (percent). - `tronsave_get_price_table` (public) — Read the price grid for ENERGY or BANDWIDTH: `prices[i][j]` is the unit price in SUN for `amounts[i]` resource units rented for `durations[j]` (e.g. - `tronsave_get_system_info` (public) — Read TronSave and TRON protocol parameters: latest block, minimum buy amounts, TRX burn rates per unit, dynamic buy/lowest prices, the system deposit address, max lock period and the energy cost of a USDT transfer. - `tronsave_get_account_resources` (public) — Read the on-chain staked and delegatable ENERGY/BANDWIDTH of a TRON address, plus its TRX balance (SUN string). - `tronsave_suggest_create_order` (public) — Ask the market how a buy would be filled: a plain new order, buying more only, or extending existing delegations (optionally plus extra). - `tronsave_list_extendable_receivers` (public) — List the receiver addresses that have delegations bought by `requester` which can still be extended, with expiry time (Unix seconds), delegation count and total amount. - `tronsave_get_seller_stats` (signature-session) — Read the logged-in seller's lifetime totals (delegations, resource delegated, TRX earned, average price per resource) and a daily earnings chart split into auto, manual, exclusive and extend delegations. - `tronsave_list_delegations` (signature-session) — List the logged-in seller's delegations (resource sent to buyers): amount, TRX amount, duration, unit price, type (AUTO, MANUAL, EXTEND, FAST), status and payout. - `tronsave_list_auto_buy_settings` (signature-session) — List the logged-in user's auto-buy rules: receiver, resource, unit price cap, threshold, budget/order limits, totals bought and active state. - `tronsave_create_auto_buy_setting` (signature-session) — Create a rule that automatically buys `resourceAmount` for `receiver` whenever its remaining resource falls below `thresholdResourceAmount`, paying up to `unitPrice` SUN per unit from the TronSave internal balance. - `tronsave_update_auto_buy_setting` (signature-session) — Change an auto-buy rule by id: pause or resume it with `isActive`, or change any of price cap, amount, duration, threshold and limits (only the fields you send change). - `tronsave_list_notifications` (signature-session) — List the logged-in user's notifications (order created / filled / cancelled / reclaimed, referral payouts) newest first, with the unread count. - `tronsave_mark_notifications_read` (signature-session) — Mark one notification (by `id`) or, when `id` is omitted, ALL of the user's notifications as read. - `tronsave_get_referral` (signature-session) — Read the logged-in user's referral status: own referral code, sponsor, referral counts, bonus earned and remaining (SUN strings), rank, the referral list (PENDING/ACTIVE) and recent commission payouts. - `tronsave_get_telegram_notify_setting` (signature-session) — Read the Telegram alert filters of the logged-in user: seller alerts (remaining amount, duration, price and APY ranges, unlocked-only) and buyer alerts (reclaim warning time, low energy / bandwidth thresholds). - `tronsave_update_telegram_notify_setting` (signature-session) — Replace the Telegram alert filters. - `tronsave_get_agency_bot` (signature-session) — Read the logged-in user's Telegram agency bot (resale bot): name, username, status (PENDING, ACTIVE, INACTIVE, BLOCKED, REJECTED), rewards (total and unpaid) and order / resource statistics. - `tronsave_list_internal_transactions` (signature-session) — List the TRX ledger of the logged-in user's internal account (deposits, order payments, refunds), newest first, with the current balance and deposit address. - `tronsave_get_flash_unstake_request` (signature-session) — Read the logged-in user's flash-unstake request (selling staked TRX early for an immediate payout): state, payout state, amounts and release progress. - `tronsave_list_flash_unstake_orders` (public) — Browse the flash-unstake market: `available` (open orders buyers can take), `ongoing` (being paid out) or `completed`. - `tronsave_estimate_flash_unstake` (public) — Estimate what an address would receive by flash-unstaking all its staked TRX now: total staked, fee percentage, payout, delegations to reclaim and the minimum unstake amount. - `tronsave_bulk_create_internal_orders` (signature-session) — Buy the SAME amount of ENERGY or BANDWIDTH for several receiver addresses in one call, paid from the TronSave internal balance; returns one order id per receiver. ## Docs - https://docs.tronsave.io/developers/api-reference/mcp - Quickstart: https://mcp.tronsave.io/quickstart.md - Setup guide for Claude Code, Cursor and Claude: https://mcp.tronsave.io/connect.md