tronsave avatar

TronSave

tronsave/tronsave-mcp

If you're building on TRON and want to avoid burning TRX on every USDT transfer or smart contract call, this server plugs directly into the TronSave marketplace to rent Energy and Bandwidth instead. You get typed tools to buy resources with different order types (Normal, Pending, Smart, ZapBuy), extend existing rentals, and check pricing, all without leaving your MCP workflow. It works against both mainnet and Nile testnet endpoints. Useful for dApps that need predictable transaction costs, batch operations that would otherwise drain your staked resources, or any scenario where you want to pay a fraction of the burn cost by renting from the Stake 2.0 market rather than holding massive TRX stakes yourself.

tools
53
auth
Secret needed
transport
HTTP
last updated
Nov 4, 2026

Install

From registry metadata
$ npx add-mcp https://mcp.tronsave.io/mcp --name tronsave --header 'Authorization: Bearer ${API_TOKEN}'

Run in your terminal. add-mcp asks which agents to add it to, then asks for each value it needs. Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http tronsave https://mcp.tronsave.io/mcp --header 'Authorization: YOUR_AUTHORIZATION'

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 53 tools

Verified live against the running server on Nov 6, 2026.

tronsave_get_internal_accountRetrieve the Tronsave internal account profile for the current logged-in session (wallet/represent address, balances, deposit address). Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization:...

Retrieve the Tronsave internal account profile for the current logged-in session (wallet/represent address, balances, deposit address). Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization:...

No parameters. Call it with no arguments.

tronsave_get_deposit_addressFetches the specific deposit address for the TronSave internal account. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pass API keys as tool argumen...1 params

Fetches the specific deposit address for the TronSave internal account. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pass API keys as tool argumen...

Parameters* required
amountTrx*number
Amount of TRX the user intends to deposit (minimum 10 TRX).
tronsave_internal_order_historyList paginated order history for the internal account linked to the API key, newest first. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pass API k...2 params

List paginated order history for the internal account linked to the API key, newest first. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pass API k...

Parameters* required
pageinteger
Page index, 0-based. Omit for first page (default 0).
pageSizeinteger
Orders per page. Default 10 when omitted. Typical range 1–100.
tronsave_internal_order_detailsFetch full details for one internal-account order by order ID. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pass API keys as tool arguments; the s...1 params

Fetch full details for one internal-account order by order ID. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pass API keys as tool arguments; the s...

Parameters* required
orderId*string
TronSave order ID (hex string), e.g. value returned in internal.order.create response data.orderId.
tronsave_internal_order_bookReturn the current TronSave market depth/price tiers for ENERGY or BANDWIDTH via the api-key REST endpoint. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header....4 params

Return the current TronSave market depth/price tiers for ENERGY or BANDWIDTH via the api-key REST endpoint. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header....

Parameters* required
addressstring
Optional TRON base58 address filter for the receiver.
durationSecinteger
Delegation duration window in seconds for the quote.
minDelegateAmountnumber
Minimum resource amount per offer level to include (resource units, not SUN).
resourceTypestring
Resource type. Default ENERGY when omitted.one of ENERGY · BANDWIDTH
tronsave_internal_order_estimateEstimate the TRX cost and availability for a buy order before submitting it (api-key internal account). Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Nev...7 params

Estimate the TRX cost and availability for a buy order before submitting it (api-key internal account). Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Nev...

Parameters* required
durationSecinteger
Delegation duration in seconds. Default 259200 (3 days) when omitted.
optionsobject
Optional flags that affect matching behavior for the estimate.
receiverstring
TRON base58 address that will receive the resource.
requesterstring
TRON base58 requester; defaults to the API key account when omitted.
resourceAmount*number
Amount of resource to purchase (resource units).
resourceTypestring
Resource type. Default ENERGY when omitted.one of ENERGY · BANDWIDTH
unitPricevalue
Pricing: FAST | MEDIUM | SLOW strategy, or exact unit price in SUN per resource unit. Default MEDIUM when omitted.
tronsave_internal_order_createPlace a new buy order for ENERGY or BANDWIDTH on TronSave, paid from the internal account balance. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pa...7 params

Place a new buy order for ENERGY or BANDWIDTH on TronSave, paid from the internal account balance. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pa...

Parameters* required
durationSecinteger
Delegation duration in seconds. Default 259200 (3 days) when omitted.
optionsobject
Optional execution guards and fill behavior.
receiver*string
TRON base58 address that will receive the resource.
resourceAmount*number
Amount of resource to purchase (resource units).
resourceTypestring
Resource type. Default ENERGY when omitted.one of ENERGY · BANDWIDTH
sponsorstring
Optional sponsor or referral code.
unitPricevalue
Pricing: FAST | MEDIUM | SLOW strategy, or exact unit price in SUN per resource unit. Default MEDIUM when omitted.
tronsave_internal_extend_delegatesReturn extendable delegations for a receiver plus an `extendData` payload for the extension flow. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pas...5 params

Return extendable delegations for a receiver plus an `extendData` payload for the extension flow. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>` client header. Never pas...

Parameters* required
extendTo*integer
Target end time as Unix epoch SECONDS (UTC) for the extended delegation, e.g. now + 86400 for one more day. Milliseconds are rejected by TronSave (INVALID_EXTEND_TIME).
maxPriceAcceptednumber
Maximum unit price in SUN you are willing to pay for the extension.
receiver*string
TRON base58 address of the account that receives the delegated resource.
requesterstring
TRON base58 requester; defaults to the API key account when omitted.
resourceTypestring
Resource type. Default ENERGY when omitted.one of ENERGY · BANDWIDTH
tronsave_internal_create_extend_requestSubmit an extension request for existing delegated resources on TronSave via authenticated REST `POST /v2/extend-request`. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>`...3 params

Submit an extension request for existing delegated resources on TronSave via authenticated REST `POST /v2/extend-request`. Requires an internal API key: `tronsave_login` (api-key mode, or signature mode for a wallet with an internal account) or an `Authorization: ApiKey <key>`...

Parameters* required
extendData*array
Delegator-level rows for `POST /v2/extend-request`. Each row matches TronSave's REST extend contract (delegator, isExtend, extraAmount, extendTo in Unix seconds)—typically taken from `extendData` r...
receiver*string
TRON base58 address of the account that receives the delegated resource.
resourceTypestring
Resource type. Default ENERGY when omitted.one of ENERGY · BANDWIDTH
tronsave_get_sign_messageStep 1 of wallet login. Returns `{ message, timestamp }`: ask the user to sign `message` with their TRON wallet (TronWeb `signMessageV2`, TronLink, etc.), then call `tronsave_login` with `signature: "<signature>_<timestamp>"`. Signing the plain decimal `timestamp` text is also...

Step 1 of wallet login. Returns `{ message, timestamp }`: ask the user to sign `message` with their TRON wallet (TronWeb `signMessageV2`, TronLink, etc.), then call `tronsave_login` with `signature: "<signature>_<timestamp>"`. Signing the plain decimal `timestamp` text is also...

No parameters. Call it with no arguments.

tronsave_loginLog in to TronSave for the rest of this MCP connection. Provide EXACTLY ONE of: `signature` = `<signature>_<timestamp>` produced by the user's wallet over the `message` from `tronsave_get_sign_message` (unlocks wallet tools; also loads the wallet's internal API key if it has o...2 params

Log in to TronSave for the rest of this MCP connection. Provide EXACTLY ONE of: `signature` = `<signature>_<timestamp>` produced by the user's wallet over the `message` from `tronsave_get_sign_message` (unlocks wallet tools; also loads the wallet's internal API key if it has o...

Parameters* required
apiKeystring
Raw API key for internal-tools login. Provide EXACTLY ONE of `apiKey` or `signature`.
signaturestring
Signature token in `signature_timestamp` format (timestamp is the signed message). Provide EXACTLY ONE of `apiKey` or `signature`.
tronsave_logoutRemove the TronSave login bound to this MCP connection (api-key or signature). Returns `{ loggedOut: true }`; idempotent. Header credentials configured on the client are not affected.

Remove the TronSave login bound to this MCP connection (api-key or signature). Returns `{ loggedOut: true }`; idempotent. Header credentials configured on the client are not affected.

No parameters. Call it with no arguments.

tronsave_get_session_statusReport 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. Call this first when unsure whether to log...

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. Call this first when unsure whether to log...

No parameters. Call it with no arguments.

tronsave_get_user_infoRead the current authenticated user's profile and linked TronSave internal account. For the internal balance alone use `tronsave_get_internal_account`; for referral data `tronsave_get_referral`. Returns `{ caller, address, balance (SUN string), info, internalAccount }` — `info...

Read the current authenticated user's profile and linked TronSave internal account. For the internal balance alone use `tronsave_get_internal_account`; for referral data `tronsave_get_referral`. Returns `{ caller, address, balance (SUN string), info, internalAccount }` — `info...

No parameters. Call it with no arguments.

tronsave_get_user_auto_settingRead the current user's auto-sell configuration (`autoSettings`). Returns the full `autoSettings` object — call this before `tronsave_register_auto_sell` or `tronsave_update_auto_sell_setting` to avoid overwriting fields you do not intend to change. Requires a wallet signature...

Read the current user's auto-sell configuration (`autoSettings`). Returns the full `autoSettings` object — call this before `tronsave_register_auto_sell` or `tronsave_update_auto_sell_setting` to avoid overwriting fields you do not intend to change. Requires a wallet signature...

No parameters. Call it with no arguments.

tronsave_get_user_permissionsRead the enabled permission operations (`autoSettings.permitOperations`) for the authenticated user. Returns `{ permitOperations: string[] }` — use it before mutating auto-sell or auto-buy rules to confirm the action is allowed for the wallet. Requires a wallet signature ident...

Read the enabled permission operations (`autoSettings.permitOperations`) for the authenticated user. Returns `{ permitOperations: string[] }` — use it before mutating auto-sell or auto-buy rules to confirm the action is allowed for the wallet. Requires a wallet signature ident...

No parameters. Call it with no arguments.

tronsave_estimate_buy_resourceQuote price and availability for buying ENERGY or BANDWIDTH for a receiver address before placing an order. This quote feeds `tronsave_create_order`; for `tronsave_internal_order_create` (API key) quote with `tronsave_internal_order_estimate`. Returns `{ unitPrice (SUN/unit),...7 params

Quote price and availability for buying ENERGY or BANDWIDTH for a receiver address before placing an order. This quote feeds `tronsave_create_order`; for `tronsave_internal_order_create` (API key) quote with `tronsave_internal_order_estimate`. Returns `{ unitPrice (SUN/unit),...

Parameters* required
allowPartialFillboolean
Allow partial fill of the order.
buyResourceAmountinteger
Resource units to buy. Default 100000 for ENERGY and 1000 for BANDWIDTH.
durationSecinteger
Delegation duration in seconds. Default 900 (15 minutes).
minResourceDelegateRequiredAmountnumber
Minimum resource amount per matching provider.
receiverstring
TRON address that will receive the resource. Strongly recommended: quotes depend on it.
resourceTypestring
Resource type to buy. Default ENERGY.one of ENERGY · BANDWIDTHdefault: ENERGY
unitPricenumber
Desired unit price in SUN. Values below the market minimum are raised to the minimum. Omit for the MEDIUM market price.
tronsave_get_orderRead one order by `id` and return its full snapshot for NORMAL, FAST, or EXTEND order types. With only an API key, use `tronsave_internal_order_details` instead. Use this as the source of truth before `tronsave_update_order`, `tronsave_sell_order_manual`, or `tronsave_cancel_o...1 params

Read one order by `id` and return its full snapshot for NORMAL, FAST, or EXTEND order types. With only an API key, use `tronsave_internal_order_details` instead. Use this as the source of truth before `tronsave_update_order`, `tronsave_sell_order_manual`, or `tronsave_cancel_o...

Parameters* required
id*string
Target order id (`MObjectId`) to inspect. Use this to confirm current status/price before update, sell, or cancel actions.
tronsave_list_ordersQuery the market order list with paging (`offset`, `limit` ≤ 10). For an API-key account's own purchases use `tronsave_internal_order_history`. Returns `{ orders: [{ id, requester?.address, receiver.address, resourceType, resourceAmount, remainAmount, durationSec, unitPrice (S...5 params

Query the market order list with paging (`offset`, `limit` ≤ 10). For an API-key account's own purchases use `tronsave_internal_order_history`. Returns `{ orders: [{ id, requester?.address, receiver.address, resourceType, resourceAmount, remainAmount, durationSec, unitPrice (S...

Parameters* required
isOnlyMyOrderboolean
When `true`, only orders requested by the wallet of the current signature identity (signature login or `Signature` header). Api-key-only sessions cannot use this filter.
limitinteger
Maximum rows to return in one call. Prefer modest limits to avoid huge payloads; page with `offset`.
offsetinteger
Zero-based row offset for page N (skip first `offset` matches). Omit when starting from the first page.
resourceTypestring
Restrict to `ENERGY` or `BANDWIDTH` orders; omit for both.one of ENERGY · BANDWIDTH
statusstring
Lifecycle filter: `ACTIVE` = still matching/open, `COMPLETED` = no longer matching. Omit for both.one of ACTIVE · COMPLETED
tronsave_list_order_booksRead market depth buckets for `ENERGY` or `BANDWIDTH`. Public view; with an API key, `tronsave_internal_order_book` adds SLOW/MEDIUM/FAST price tiers. Returns price buckets `{ min, max, value }` optionally scoped by viewer address, minimum delegate amount, and duration. No log...4 params

Read market depth buckets for `ENERGY` or `BANDWIDTH`. Public view; with an API key, `tronsave_internal_order_book` adds SLOW/MEDIUM/FAST price tiers. Returns price buckets `{ min, max, value }` optionally scoped by viewer address, minimum delegate amount, and duration. No log...

Parameters* required
addressstring
Optional viewer/requester wallet context.
durationSecnumber
Optional delegation duration filter in seconds.
minDelegateAmountnumber
Optional minimum delegate amount floor for bucket filtering.
resourceType*string
Order-book side to query (`ENERGY` or `BANDWIDTH`).one of ENERGY · BANDWIDTH
tronsave_get_min_priceQuote the minimum unit price for a buy. Use when only the floor price matters; for a full purchase quote use `tronsave_estimate_buy_resource`, for a grid across amounts and durations `tronsave_get_price_table`. Returns `{ minPrice }` (SUN per resource unit; per day when `durat...4 params

Quote the minimum unit price for a buy. Use when only the floor price matters; for a full purchase quote use `tronsave_estimate_buy_resource`, for a grid across amounts and durations `tronsave_get_price_table`. Returns `{ minPrice }` (SUN per resource unit; per day when `durat...

Parameters* required
addressstring
Optional TRON base58 address (`TronAddress`). When omitted, the server uses anonymous/global market context.
buyAmountnumber
Resource amount to price (same units as order book / delegate amounts for that resource type). Default 100000 for ENERGY and 1000 for BANDWIDTH
durationSecnumber
Delegation window in seconds; must match the duration you plan to use on a real order for comparable quotes. Default 15 minutesdefault: 900
resourceTypestring
Market leg: `ENERGY` or `BANDWIDTH`. Default ENERGYone of ENERGY · BANDWIDTHdefault: ENERGY
tronsave_list_extendable_delegatesList extendable delegate candidates for a `receiver` and `resourceType` (ENERGY|BANDWIDTH). Optional `suggestData` scores an extend-and-buy scenario for planning purposes. Read-only; does NOT create orders or change on-chain state. No login required. NOTE: this is GraphQL mark...4 params

List extendable delegate candidates for a `receiver` and `resourceType` (ENERGY|BANDWIDTH). Optional `suggestData` scores an extend-and-buy scenario for planning purposes. Read-only; does NOT create orders or change on-chain state. No login required. NOTE: this is GraphQL mark...

Parameters* required
receiver*string
TRON base58 address (typically starts with `T`) that currently receives or will receive the delegated resource. This is the primary filter: the response describes delegates relevant to extending th...
requesterstring
Optional TRON base58 address of the viewing/requesting party. When an MCP session is active, the server may still derive identity from auth headers; use this when the API expects an explicit reques...
resourceType*string
Which resource market leg to query: `ENERGY` for contract execution headroom, `BANDWIDTH` for transaction bandwidth. Must match how you plan to extend or buy.one of ENERGY · BANDWIDTH
suggestDataobject
Optional nested scenario for extend-and-buy suggestion scoring. If omitted, the query returns delegate rows without that hypothetical. If provided, supply all four fields together; partial objects...
tronsave_create_orderCreate a buy order for ENERGY/BANDWIDTH delegated to `orderReceiver`. SPENDS FUNDS — confirm the plan with the user first. API-key integrations paying from the internal balance can instead use `tronsave_internal_order_create` (FAST/MEDIUM/SLOW pricing, fill guards). Inputs: `o...8 params

Create a buy order for ENERGY/BANDWIDTH delegated to `orderReceiver`. SPENDS FUNDS — confirm the plan with the user first. API-key integrations paying from the internal balance can instead use `tronsave_internal_order_create` (FAST/MEDIUM/SLOW pricing, fill guards). Inputs: `o...

Parameters* required
orderDurationSec*integer
Delegation duration in seconds. Must match the `durationSec` used in `tronsave_estimate_buy_resource`.
orderReceiver*string
TRON base58 address (starts with T) that receives delegated resource. Same as `receiver` passed to `tronsave_estimate_buy_resource`.
orderResourceAmount*integer
Amount of ENERGY or BANDWIDTH units to purchase. Same as `buyResourceAmount` in estimate when applicable.
orderResourceType*string
Resource to buy: ENERGY (smart contracts) or BANDWIDTH (transactions). Must match `tronsave_estimate_buy_resource`.one of ENERGY · BANDWIDTH
orderUnitPrice*number
Unit price in SUN per resource unit (NOT TRX). Use `unitPrice` from the latest `tronsave_estimate_buy_resource` for the same receiver, amount, and duration.
paymentMethod*string
Payment method for this order: `onchain` (wallet signed tx) or `internal` (internal balance).one of onchain · internal
paymentPaymentAmount*number
Total payment in SUN (1 TRX = 1e6 SUN). Use `estimateTrx` (SUN) from the latest `tronsave_estimate_buy_resource`.
paymentSignedTxobject
Required when `paymentMethod=onchain`: the user's wallet-signed TRX transfer of `paymentPaymentAmount` SUN to `systemDepositAddress` (from `tronsave_estimate_buy_resource`), TronWeb shape `{ txID,...
tronsave_sell_order_manualManually execute seller-side fulfillment of an existing order with a wallet `signedTx`. Returns `{ success, message, code, delegatedId }`. Side effect: broadcasts a market/delegation transaction and may consume balances/resources; not idempotent — each call re-executes. Requir...3 params

Manually execute seller-side fulfillment of an existing order with a wallet `signedTx`. Returns `{ success, message, code, delegatedId }`. Side effect: broadcasts a market/delegation transaction and may consume balances/resources; not idempotent — each call re-executes. Requir...

Parameters* required
orderId*string
Target order id (`MObjectId`) to manually fulfill. Should be an order eligible for seller-side manual execution.
paymentAddressstring
Optional payout/payment address override when settlement flow requires it.
signedTx*object
Required wallet-signed transaction payload (TronWeb shape: `{ txID, raw_data, raw_data_hex, signature[] }`). Must come from client-side signing; never fabricate.
tronsave_cancel_orderCancel an open order by `orderId`. Returns `{ success, message, code }`. Side effect: marks the order non-matchable and refunds locked balance per backend rules; effectively destructive on the live order. Idempotent — cancelling an already-cancelled order is a no-op success. F...1 params

Cancel an open order by `orderId`. Returns `{ success, message, code }`. Side effect: marks the order non-matchable and refunds locked balance per backend rules; effectively destructive on the live order. Idempotent — cancelling an already-cancelled order is a no-op success. F...

Parameters* required
orderId*string
Target order id (`MObjectId`) to cancel. Must be an active order owned/authorized by the current session; already-fulfilled or already-cancelled orders are expected to fail.
tronsave_update_orderUpdate an open order by `orderId` with partial fields (`receiver`, `newPrice`). Returns `{ success, message, code }`. Side effect: overwrites live order parameters; not idempotent — each call with a different `newPrice` produces a new state. Requires a wallet signature identit...3 params

Update an open order by `orderId` with partial fields (`receiver`, `newPrice`). Returns `{ success, message, code }`. Side effect: overwrites live order parameters; not idempotent — each call with a different `newPrice` produces a new state. Requires a wallet signature identit...

Parameters* required
newPricenumber
Optional replacement unit price in SUN per resource unit.
orderId*string
Target order id (`MObjectId`) to update. Order must still be open and editable.
receiverstring
Optional replacement receiver TRON address.
tronsave_register_auto_sellCreate the initial auto-sell configuration for the authenticated user. Returns the persisted `autoSettings` payload. Side effect: persists automation settings that affect future delegation/sell behavior; not idempotent — calling twice may reset fields. Requires a wallet signat...3 params

Create the initial auto-sell configuration for the authenticated user. Returns the persisted `autoSettings` payload. Side effect: persists automation settings that affect future delegation/sell behavior; not idempotent — calling twice may reset fields. Requires a wallet signat...

Parameters* required
addOnFeatureobject
Optional extras: voting, auto-stake of idle TRX, suggest-sell hints.
paymentConfigobject
Where and how often seller earnings are paid out (address, DAILY/IMMEDIATE, payout window).
poolSettingobject
What the wallet sells automatically: per-resource price floor, duration bounds, minimum amount, reserve, and reclaim scope.
tronsave_update_auto_sell_settingUpdate the existing auto-sell configuration with partial fields. Returns the updated `autoSettings` payload. Side effect: overwrites stored automation settings for the current user; not idempotent across different field sets. Requires a wallet signature identity. Use for INCRE...3 params

Update the existing auto-sell configuration with partial fields. Returns the updated `autoSettings` payload. Side effect: overwrites stored automation settings for the current user; not idempotent across different field sets. Requires a wallet signature identity. Use for INCRE...

Parameters* required
addOnFeatureobject
Optional extras: voting, auto-stake of idle TRX, suggest-sell hints.
paymentConfigobject
Where and how often seller earnings are paid out (address, DAILY/IMMEDIATE, payout window).
poolSettingobject
What the wallet sells automatically: per-resource price floor, duration bounds, minimum amount, reserve, and reclaim scope.
tronsave_generate_api_keyGenerate a new internal API key credential for the current user. Returns `data` containing the issued key — show it to the user once and tell them to store it securely; do not repeat it in later messages. Side effect: issues secret material; not idempotent — each call mints a...

Generate a new internal API key credential for the current user. Returns `data` containing the issued key — show it to the user once and tell them to store it securely; do not repeat it in later messages. Side effect: issues secret material; not idempotent — each call mints a...

No parameters. Call it with no arguments.

tronsave_revoke_api_keyRevoke the caller's current internal API key. Side effect: any future request using the previous key is rejected. Existing in-flight sessions cached by the server may continue serving until their TTL expires — treat the effect as 'best-effort immediate' rather than guaranteed...

Revoke the caller's current internal API key. Side effect: any future request using the previous key is rejected. Existing in-flight sessions cached by the server may continue serving until their TTL expires — treat the effect as 'best-effort immediate' rather than guaranteed...

No parameters. Call it with no arguments.

tronsave_delete_auto_buy_settingPermanently delete one auto-buy rule by `id` (`MObjectId`). Side effect: stops all future executions matching that rule; the rule cannot be restored. Idempotent — deleting a non-existent or already-removed id returns success. Requires a wallet signature identity. Use `tronsave...1 params

Permanently delete one auto-buy rule by `id` (`MObjectId`). Side effect: stops all future executions matching that rule; the rule cannot be restored. Idempotent — deleting a non-existent or already-removed id returns success. Requires a wallet signature identity. Use `tronsave...

Parameters* required
id*string
Auto-buy setting id (`MObjectId`) to delete.
tronsave_get_market_overviewRead the TronSave market summary: resource currently available and total listed for ENERGY and BANDWIDTH, number of pooled sellers, and seller APY (percent). Use for a quick 'how is the market' answer before pricing; for prices use `tronsave_get_price_table` (grid) or `tronsav...

Read the TronSave market summary: resource currently available and total listed for ENERGY and BANDWIDTH, number of pooled sellers, and seller APY (percent). Use for a quick 'how is the market' answer before pricing; for prices use `tronsave_get_price_table` (grid) or `tronsav...

No parameters. Call it with no arguments.

tronsave_get_price_tableRead 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. '15m', '1h', '1d'). Durations of 1 day or longer are priced per day: '30d' at 40 SUN costs 40 x 30 SUN per unit in total. Use to...2 params

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. '15m', '1h', '1d'). Durations of 1 day or longer are priced per day: '30d' at 40 SUN costs 40 x 30 SUN per unit in total. Use to...

Parameters* required
addressstring
Optional receiver address; prices can depend on the account.
resourceType*string
ENERGY (smart-contract calls) or BANDWIDTH (plain transfers).one of ENERGY · BANDWIDTH
tronsave_get_system_infoRead 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. Use to size purchases (minimums) and to compare renting with b...

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. Use to size purchases (minimums) and to compare renting with b...

No parameters. Call it with no arguments.

tronsave_get_account_resourcesRead the on-chain staked and delegatable ENERGY/BANDWIDTH of a TRON address, plus its TRX balance (SUN string). Use to check whether a wallet can sell, or how much resource it holds. Public (any address), read-only; does not need a login.1 params

Read the on-chain staked and delegatable ENERGY/BANDWIDTH of a TRON address, plus its TRX balance (SUN string). Use to check whether a wallet can sell, or how much resource it holds. Public (any address), read-only; does not need a login.

Parameters* required
address*string
TRON base58 address to inspect.
tronsave_suggest_create_orderAsk the market how a buy would be filled: a plain new order, buying more only, or extending existing delegations (optionally plus extra). Returns each option with `readyToFill` (percent), `payout` (SUN) and the `extendData` rows. Use before `tronsave_create_order` when the rec...6 params

Ask the market how a buy would be filled: a plain new order, buying more only, or extending existing delegations (optionally plus extra). Returns each option with `readyToFill` (percent), `payout` (SUN) and the `extendData` rows. Use before `tronsave_create_order` when the rec...

Parameters* required
durationSec*number
Delegation duration in seconds.
receiver*string
TRON base58 address that will receive the resource.
requesterstring
TRON base58 address that pays; defaults to the logged-in wallet.
resourceAmount*number
Resource units to buy.
resourceType*string
ENERGY (smart-contract calls) or BANDWIDTH (plain transfers).one of ENERGY · BANDWIDTH
unitPrice*number
Unit price in SUN you are willing to pay.
tronsave_list_extendable_receiversList the receiver addresses that have delegations bought by `requester` which can still be extended, with expiry time (Unix seconds), delegation count and total amount. Use as the first step of an extension flow to find which receiver to extend, then `tronsave_list_extendable_...2 params

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. Use as the first step of an extension flow to find which receiver to extend, then `tronsave_list_extendable_...

Parameters* required
requester*string
TRON base58 address that bought the delegations.
resourceTypestring
Only delegations of this resource; omit for both.one of ENERGY · BANDWIDTH
tronsave_get_seller_statsRead 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. Use for 'how much did I earn' totals; for the individual delegations behi...2 params

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. Use for 'how much did I earn' totals; for the individual delegations behi...

Parameters* required
resourceTypestring
Resource the chart is drawn for.one of ENERGY · BANDWIDTHdefault: ENERGY
timeFilterBystring
Chart window; default D30.one of D7 · D30 · D365
tronsave_list_delegationsList the logged-in seller's delegations (resource sent to buyers): amount, TRX amount, duration, unit price, type (AUTO, MANUAL, EXTEND, FAST), status and payout. Newest first; page with `offset`/`limit`. Use for a seller's per-delegation history; for earnings totals use `tron...5 params

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. Newest first; page with `offset`/`limit`. Use for a seller's per-delegation history; for earnings totals use `tron...

Parameters* required
filterByResourceTypestring
Only ENERGY or only BANDWIDTH delegations; omit for both.one of ENERGY · BANDWIDTH
filterByTypeDelegatestring
Only this delegation type: AUTO (auto-sell pool), MANUAL (`tronsave_sell_order_manual`), EXTEND (extensions), FAST (fast orders). Omit for all.one of AUTO · MANUAL · EXTEND · FAST
limitinteger
Rows to return (default 20, max 50).
offsetinteger
Number of delegations to skip for pagination (default 0); add `limit` to page forward.
timeFilterBystring
Time window: All, last 7 days (D7) or last 30 days (D30). Default All.one of All · D7 · D30
tronsave_list_auto_buy_settingsList the logged-in user's auto-buy rules: receiver, resource, unit price cap, threshold, budget/order limits, totals bought and active state. Use before `tronsave_update_auto_buy_setting` or `tronsave_delete_auto_buy_setting` to get rule ids. Requires a wallet signature identi...3 params

List the logged-in user's auto-buy rules: receiver, resource, unit price cap, threshold, budget/order limits, totals bought and active state. Use before `tronsave_update_auto_buy_setting` or `tronsave_delete_auto_buy_setting` to get rule ids. Requires a wallet signature identi...

Parameters* required
filterBystring
Only rules for this resource.one of ENERGY · BANDWIDTH
limitinteger
Rows to return (default 10, max 10).
offsetinteger
Number of rules to skip for pagination (default 0); add `limit` to page forward.
tronsave_create_auto_buy_settingCreate 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. Side effect: SPENDS internal TRX every time the rule fires unt...10 params

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. Side effect: SPENDS internal TRX every time the rule fires unt...

Parameters* required
durationSec*number
Delegation duration of each purchase, in seconds.
endActiveAtinteger
Optional Unix time in seconds when the rule stops.
limitBudgetInSunstring
Optional total budget cap in SUN (decimal string); must be greater than 10000000 (10 TRX).
limitInOrderCountinteger
Optional cap on the number of orders.
receiver*string
TRON base58 address that receives each delegation.
resourceAmount*number
Resource units bought each time the rule fires.
resourceType*string
ENERGY or BANDWIDTH.one of ENERGY · BANDWIDTH
startActiveAtinteger
Optional Unix time in seconds when the rule starts.
thresholdResourceAmount*number
Rule fires when the receiver's remaining resource drops below this many units (TronSave requires at least 100000).
unitPrice*string
Maximum unit price in SUN, as a decimal string.
tronsave_update_auto_buy_settingChange 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). Side effect: a resumed or loosened rule can start spending internal TRX again. Idempotent for the same argum...12 params

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). Side effect: a resumed or loosened rule can start spending internal TRX again. Idempotent for the same argum...

Parameters* required
durationSecnumber
Delegation duration of each purchase, in seconds.
endActiveAtinteger
Optional Unix time in seconds when the rule stops.
id*string
Rule id from `tronsave_list_auto_buy_settings`.
isActiveboolean
false pauses the rule, true resumes it.
limitBudgetInSunstring
Optional total budget cap in SUN (decimal string); must be greater than 10000000 (10 TRX).
limitInOrderCountinteger
Optional cap on the number of orders.
receiverstring
TRON base58 address that receives each delegation.
resourceAmountnumber
Resource units bought each time the rule fires.
resourceTypestring
ENERGY or BANDWIDTH.one of ENERGY · BANDWIDTH
startActiveAtinteger
Optional Unix time in seconds when the rule starts.
thresholdResourceAmountnumber
Rule fires when the receiver's remaining resource drops below this many units (TronSave requires at least 100000).
unitPricestring
Maximum unit price in SUN, as a decimal string.
tronsave_list_notificationsList the logged-in user's notifications (order created / filled / cancelled / reclaimed, referral payouts) newest first, with the unread count. Use to follow up on an order after creating it; page with `offset`/`limit`, and mark items read with `tronsave_mark_notifications_rea...3 params

List the logged-in user's notifications (order created / filled / cancelled / reclaimed, referral payouts) newest first, with the unread count. Use to follow up on an order after creating it; page with `offset`/`limit`, and mark items read with `tronsave_mark_notifications_rea...

Parameters* required
limitinteger
Notifications to return (default 20, max 100).
offsetinteger
Number of notifications to skip for pagination (default 0); add `limit` to page forward.
unreadOnlyboolean
true returns only unread notifications; default false returns all.
tronsave_mark_notifications_readMark one notification (by `id`) or, when `id` is omitted, ALL of the user's notifications as read. Get ids from `tronsave_list_notifications`. Only changes the read flag; idempotent. Requires a wallet signature identity.1 params

Mark one notification (by `id`) or, when `id` is omitted, ALL of the user's notifications as read. Get ids from `tronsave_list_notifications`. Only changes the read flag; idempotent. Requires a wallet signature identity.

Parameters* required
idstring
Notification id; omit to mark everything read.
tronsave_get_referralRead 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. Use for referral questions only; account profile is `tronsave_get_user_info...3 params

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. Use for referral questions only; account profile is `tronsave_get_user_info...

Parameters* required
filterBystring
Only referrals in this status.one of PENDING · ACTIVE
limitinteger
Rows per list (default 10, max 50).
offsetinteger
Number of rows of each list to skip for pagination (default 0); add `limit` to page forward.
tronsave_get_telegram_notify_settingRead 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). `setting` is null when Telegram is not linked. Read these before c...

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). `setting` is null when Telegram is not linked. Read these before c...

No parameters. Call it with no arguments.

tronsave_update_telegram_notify_settingReplace the Telegram alert filters. Send the COMPLETE `sellerFilter` and/or `buyerFilter` objects (read the current ones with `tronsave_get_telegram_notify_setting`, edit, send back); each range or value has `isEnabled` plus its numbers. Only changes which alerts are sent; no...2 params

Replace the Telegram alert filters. Send the COMPLETE `sellerFilter` and/or `buyerFilter` objects (read the current ones with `tronsave_get_telegram_notify_setting`, edit, send back); each range or value has `isEnabled` plus its numbers. Only changes which alerts are sent; no...

Parameters* required
buyerFilterobject
Complete buyer alert filter; omit to leave buyer alerts unchanged.
sellerFilterobject
Complete seller alert filter; omit to leave seller alerts unchanged.
tronsave_get_agency_botRead 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. `bot` is null when none is registered. The bot token is never returned. Requires a wal...1 params

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. `bot` is null when none is registered. The bot token is never returned. Requires a wal...

Parameters* required
timeFilterBystring
Statistics window.one of All · D7 · D30
tronsave_list_internal_transactionsList the TRX ledger of the logged-in user's internal account (deposits, order payments, refunds), newest first, with the current balance and deposit address. Amounts are SUN strings. Use to reconcile spending after orders. For the orders themselves use `tronsave_internal_order...2 params

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. Amounts are SUN strings. Use to reconcile spending after orders. For the orders themselves use `tronsave_internal_order...

Parameters* required
limitinteger
Ledger entries to return (default 20, max 50).
offsetinteger
Number of ledger entries to skip for pagination (default 0); add `limit` to page forward.
tronsave_get_flash_unstake_requestRead the logged-in user's flash-unstake request (selling staked TRX early for an immediate payout): state, payout state, amounts and release progress. `request` is null when there is none. Use for the user's own request; to preview a payout before requesting use `tronsave_esti...

Read the logged-in user's flash-unstake request (selling staked TRX early for an immediate payout): state, payout state, amounts and release progress. `request` is null when there is none. Use for the user's own request; to preview a payout before requesting use `tronsave_esti...

No parameters. Call it with no arguments.

tronsave_list_flash_unstake_ordersBrowse the flash-unstake market: `available` (open orders buyers can take), `ongoing` (being paid out) or `completed`. Amounts are SUN-scaled numbers; `estimateCompletionTime` is seconds. Use to browse the whole market; the user's own request is `tronsave_get_flash_unstake_req...3 params

Browse the flash-unstake market: `available` (open orders buyers can take), `ongoing` (being paid out) or `completed`. Amounts are SUN-scaled numbers; `estimateCompletionTime` is seconds. Use to browse the whole market; the user's own request is `tronsave_get_flash_unstake_req...

Parameters* required
kindstring
Which orders to list: available (default), ongoing or completed.one of available · ongoing · completed
limitinteger
Orders to return (default 10, max 50).
offsetinteger
Number of orders to skip for pagination (default 0); add `limit` to page forward.
tronsave_estimate_flash_unstakeEstimate 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. Nothing is submitted. Use before requesting a flash unstake; check an existing request with `tronsave_...1 params

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. Nothing is submitted. Use before requesting a flash unstake; check an existing request with `tronsave_...

Parameters* required
requester*string
TRON base58 address that owns the stake.
tronsave_bulk_create_internal_ordersBuy 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. Side effect: SPENDS `paymentAmount` SUN of the internal balance; not idempotent (a repeat buys again). Estimate on...7 params

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. Side effect: SPENDS `paymentAmount` SUN of the internal balance; not idempotent (a repeat buys again). Estimate on...

Parameters* required
durationSec*number
Delegation duration in seconds.
paymentAmount*number
Total payment in SUN for the whole batch. Must equal the total payout (about unitPrice x resourceAmount x receivers x durationSec / 86400) within 2%; a mismatch is rejected with the expected total.
receivers*array
Receiver addresses (1 to 50).
resourceAmount*number
Resource units bought for EACH receiver.
resourceType*string
Resource bought for every receiver.one of ENERGY · BANDWIDTH
sponsorstring
Optional sponsor or referral code.
unitPrice*number
Unit price in SUN per resource unit, per receiver.

Sponsors

Readme

TronSave MCP Server

MCP Transport Node License: MIT

An agent-native Model Context Protocol server for TronSave: AI agents can quote, buy and manage TRON ENERGY / BANDWIDTH and TronSave accounts through 53 typed tools.

Mainnet endpointhttps://mcp.tronsave.io/mcp
Testnet (Nile) endpointhttps://mcp.tronsave.io/testnet/mcp
TransportStreamable HTTP (POST, JSON responses); legacy SSE at /sse
Authnone · OAuth 2.1 sign-in at /oauth/mcp (API key or TronLink) · Authorization: ApiKey <key> header · tronsave_login tool

Documentation


View the full README on GitHub

Details

Repository
github.com/tronsave/tronsave-mcp
Website
docs.tronsave.io
Transport
HTTP
Auth
Required
Registry
MCP registry, active
Resources
1
Prompts
2
Tools verified
Nov 6, 2026