Skip to main content
Glama

Tronsave MCP Testnet

Server Details

Testnet TronSave MCP server focused on helping agents and clients buy and sell TRON resource quickly through one unified interface, with fast order execution, pricing/estimation tools, and secure session-based workflows.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.7/5 across 29 of 29 tools scored.

Server CoherenceA
Disambiguation3/5

Several tools have overlapping purposes, such as multiple estimate and order creation pairs (on-chain vs internal), and multiple order book listing tools. While they serve different auth paths, the boundaries are unclear for an agent, causing potential misselection.

Naming Consistency4/5

Most tools follow a consistent `tronsave_verb_noun` or `tronsave_internal_verb_noun` pattern. However, exceptions like `tronsave_sell_order_manual` (verb placement) and `tronsave_internal_create_extend_request` (different verb order) create minor deviations.

Tool Count3/5

29 tools is on the high side for a resource market platform. While each tool has a specific purpose, the count suggests potential for consolidation (e.g., merging internal and on-chain paths). The scope is broad but still manageable.

Completeness4/5

The tool set covers major lifecycle operations (create, update, cancel, sell), estimation, listing, auto-settings, account management, and authentication. Missing features like withdrawal or on-chain wallet balance are minor gaps, but core workflows are supported.

Available Tools

29 tools
tronsave_cancel_orderCancel OrderA
DestructiveIdempotent
Inspect

Cancel an open order by orderId. Returns the cancelled order payload after the status flip. 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. Fails for fulfilled orders or unauthorized callers. Requires a signature session and mcp-session-id. Verify state with tronsave_get_order first; prefer tronsave_update_order when only price/receiver should change.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderIdYesTarget 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.

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses side effects beyond annotations: marks order non-matchable, refunds locked balance, effectively destructive. Also confirms idempotency stated in annotations by noting cancelling an already-cancelled order is a no-op. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise (4 sentences) and front-loaded with the core action. Every sentence adds essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (side effects, idempotency, failure conditions, prerequisites), the description covers all necessary context. The output schema exists, and the description adequately indicates the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds meaning: orderId must be an active order owned/authorized by the session, and mentions expected failure scenarios. This adds value beyond the schema description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool cancels an open order by orderId and returns the cancelled order payload. It explicitly distinguishes from sibling tronsave_update_order by advising to use that tool for price/receiver changes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (open order, authorized session), when not (fulfilled orders, unauthorized callers), and provides alternatives (tronsave_update_order). Also mentions prerequisites (signature session, mcp-session-id) and a verification step (use tronsave_get_order first).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_create_orderCreate OrderAInspect

Create a new buy order on the TronSave market. Key inputs: orderResourceType (ENERGY|BANDWIDTH), orderReceiver (TRON base58), orderUnitPrice in SUN (NOT TRX), orderDurationSec, orderResourceAmount, and paymentMethod: (1) onchain — requires a signed payment tx in paymentSignedTx; (2) internal — deducts from internal balance. Side effect: creates a live order matchable by the market. Requires a signature session and mcp-session-id. Always derive orderUnitPrice and paymentPaymentAmount from the latest tronsave_estimate_buy_resource for the same receiver, amount, and duration to avoid reverts. FRESHNESS: re-quote immediately before submitting — estimates older than a few seconds (one TRON block ≈ 3s) may be stale and cause the order to revert or fill at the wrong price.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderReceiverYesTRON base58 address (starts with T) that receives delegated resource. Same as `receiver` passed to `tronsave_estimate_buy_resource`.
paymentMethodYesPayment method for this order: `onchain` (wallet signed tx) or `internal` (internal balance).
orderUnitPriceYesUnit price in SUN. Prefer aligning with `minResourcePrice` or `buyResourcePrice` from the latest `tronsave_estimate_buy_resource` for the same receiver, amount, and duration.
paymentSignedTxNoRequired when `paymentMethod=onchain`. TronWeb-shaped signed TRON transaction (`{ txID, raw_data, raw_data_hex, signature[] }`). Must be produced client-side by the user's wallet; never fabricate or hand-edit.
orderDurationSecYesDelegation duration in seconds. Must match the `durationSec` used in `tronsave_estimate_buy_resource`.
orderResourceTypeYesResource to buy: ENERGY (smart contracts) or BANDWIDTH (transactions). Must match `tronsave_estimate_buy_resource`.
orderResourceAmountYesAmount of ENERGY or BANDWIDTH units to purchase. Same as `buyResourceAmount` in estimate when applicable.
paymentPaymentAmountYesPayment amount in SUN. Prefer deriving from `tronsave_estimate_buy_resource`; if converting to TRX, divide SUN by `1e6`.

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
dataNo
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate mutation and non-idempotency. The description adds the side effect 'creates a live order matchable by the market' and critically warns that stale estimates may cause revert or wrong price. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is several sentences but each adds value. Starts with purpose, lists key inputs, then side effect, prerequisites, derivation, and freshness. Well structured, not overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given complexity (8 params, nested objects, output schema exists), the description covers purpose, key inputs, side effect, prerequisites, derivation steps, and freshness. Does not explain output schema (okay, it exists) or error conditions, but sufficient for a well-documented tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with detailed descriptions. The tool description adds extra semantic value by explaining the relationship between parameters (e.g., derive orderUnitPrice from estimate) and providing derivation rules beyond what schema offers. Baseline 3 improved to 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Create a new buy order on the TronSave market,' with a specific verb and resource. It distinguishes from sibling tools like tronsave_update_order and tronsave_cancel_order by explicitly being the create variant and listing payment method options.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides usage prerequisites (requires signature session, mcp-session-id) and derivation guidance (always derive prices from latest estimate). It implies when to use by explaining payment methods but does not explicitly compare with the internal create tool (tronsave_internal_order_create). Offers freshness warning.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_delete_auto_buy_settingDelete Auto Buy SettingA
DestructiveIdempotent
Inspect

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 signature session and mcp-session-id. Use tronsave_get_user_auto_setting to list current rules first; prefer disabling/updating instead when reversibility is desired.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesAuto-buy setting id (`MObjectId`) to delete.

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds significant behavioral context beyond the annotations: it explains the side effect ('stops all future executions matching that rule; the rule cannot be restored'), affirms idempotency ('deleting a non-existent or already-removed id returns success'), and mentions the requirement for a session. These details are not captured by `destructiveHint` or `idempotentHint` alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise yet comprehensive: a single sentence for the core action, followed by side effects, idempotency, prerequisites, and usage guidance. Every sentence adds value, and the information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one required parameter) and the presence of an output schema (as indicated by context signals), the description covers all necessary aspects: purpose, side effects, prerequisites, idempotency, and alternative approaches. It is complete and leaves no important gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter `id` is fully described in the schema (100% coverage) with type, minimum length, and description. The description does not add further semantic details beyond what the schema already provides. Thus a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Permanently delete one auto-buy rule by `id`') and the resource ('auto-buy rule'). It distinguishes from sibling tools by explicitly referencing `tronsave_get_user_auto_setting` for listing and suggesting disabling/updating as alternatives for reversibility.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage guidance: it notes required prerequisites ('Requires a signature session and `mcp-session-id`'), suggests listing rules first using a sibling tool, and advises preferring non-destructive actions ('prefer disabling/updating instead when reversibility is desired'). This clearly tells the agent when and how to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_estimate_buy_resourceEstimate Buy ResourceA
Read-onlyIdempotent
Inspect

Quote price and availability for buying ENERGY or BANDWIDTH for a receiver address before placing an order. Returns estimated unitPrice (SUN per resource unit), paymentAmount, and availability fields used to populate tronsave_create_order inputs (orderUnitPrice, paymentPaymentAmount). Read-only and safe to call repeatedly; no session is required, but backend rate limits apply. FRESHNESS: this is live market data — unitPrice/availability can change roughly every 3 seconds (one TRON block). Re-run this estimate immediately before tronsave_create_order and never reuse a quote more than a few seconds old. For order-book depth use tronsave_list_order_books; for the minimum unit price only use tronsave_get_min_price.

ParametersJSON Schema
NameRequiredDescriptionDefault
receiverNoreceiver address.
unitPriceNoUnit price in SUN.
durationSecNoDuration of the order in seconds. Default 15 minutes
resourceTypeNoResource type to buy. Default ENERGYENERGY
allowPartialFillNoAllow partial fill of the order.
buyResourceAmountNoAmount of resource to buy. Default 100000 for ENERGY and 1000 for BANDWIDTH
minResourceDelegateRequiredAmountNoMinimum amount of resource to delegate.

Output Schema

ParametersJSON Schema
NameRequiredDescription
unitPriceYesUnit price in SUN
durationSecYesDelegated duration in seconds
estimateTrxYesEstimated TRX cost in SUN
availableResourceYesAvailable resource amount
systemDepositAddressYesSystem deposit address for onchain payment
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description adds behavioral details beyond annotations: no session required, backend rate limits apply, data freshness (every ~3 seconds), and that it is read-only and safe to call repeatedly. All align with annotations (readOnlyHint, idempotentHint, openWorldHint).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with the core purpose. It is slightly lengthy but every sentence adds value. Could be marginally tighter, but overall effective.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the 7 parameters and existence of an output schema, the description is complete: it explains purpose, usage, freshness, alternatives, and output field usage. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description does not add specific parameter semantics beyond the schema, but it does mention the output fields used to populate create_order inputs, which provides context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it quotes price and availability for buying ENERGY or BANDWIDTH before placing an order. It specifies the resource type and the action (estimate), and distinguishes from siblings like tronsave_list_order_books and tronsave_get_min_price.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance is provided: use before placing an order, re-run immediately before tronsave_create_order, never reuse a quote more than a few seconds old. Also mentions alternatives for order-book depth and minimum unit price.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_generate_api_keyGenerate API KeyA
Destructive
Inspect

Generate a new internal API key credential for the current user. Returns data containing the issued key — store it securely and pass it to tronsave_login (apiKey mode) for internal-tool access. Side effect: issues secret material; not idempotent — each call mints a fresh key. If a previous key existed, treat it as rotated and stop using the old key once the new one is wired up. Requires a signature session and mcp-session-id. Sensitive output — never log raw keys; unauthorized sessions or policy checks may reject issuance.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
dataYesFor `generateApiKey`: the freshly issued internal API key — treat as SECRET, store securely. For `revokeApiKey`: server-defined confirmation string (no key material).
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description goes well beyond annotations by explaining the side effect of issuing secret material, non-idempotency, key rotation implications, and security warnings (never log raw keys, rejection possible). No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded with clear purpose. Every sentence adds value: purpose, return value, side effects, usage guidance, and security notes. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and an output schema exists, the description covers all necessary aspects: purpose, side effects, security handling, and usage context. It is complete for an effective agent invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the description does not need to add parameter details. Per the criteria, baseline is 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates an API key credential for the current user, specifying the verb and resource. However, it does not explicitly differentiate from the sibling tronsave_revoke_api_key, missing an opportunity to distinguish when to generate vs revoke.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit context for use, including required prerequisites (signature session, mcp-session-id) and behavior on key rotation. It lacks explicit when-not-to-use guidance or direct comparison with alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_deposit_addressGet Deposit AddressA
Read-onlyIdempotent
Inspect

Fetches the specific deposit address for the TronSave internal account. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Trigger this tool if the user asks for a deposit address or needs to top up their TronSave TRX balance. Constraints: 1) TRX only; 2) Minimum deposit amount is 10 TRX; 3) Read-only operation.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountTrxYesAmount of TRX to deposit

Output Schema

ParametersJSON Schema
NameRequiredDescription
amountTrxYesAmount of TRX to deposit
depositAddressYesTRON base58 deposit address, used for deposit TRX to TronSave internal account
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate read-only, idempotent, open-world. Description adds session requirement, API key handling details, and operation constraints, enhancing transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Structured with purpose first, then prerequisites, usage triggers, and constraints. Slightly verbose about session types but still concise overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, usage, session requirements, constraints. Output schema exists to define return values, so description is complete for this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter. Description adds 'TRX only' context and reinforces minimum deposit, providing marginal added value beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches a specific deposit address for the TronSave internal account, with constraints (TRX only, min 10 TRX). It is specific and distinguishable from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to trigger (user asks for deposit address or top-up) and prerequisites (logged-in session with mcp-session-id). Lacks explicit alternatives but provides good context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_internal_accountInternal Account InformationA
Read-onlyIdempotent
Inspect

Retrieve the TronSave internal account profile for the current session: represent address, deposit address, and balance (SUN). Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Use when the user needs their linked address, deposit address, or internal balance. This is the api-key internal account, not the on-chain wallet. Read-only; does not submit orders or change chain state. FRESHNESS: balance reflects live state and can change within seconds after deposits/orders.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNo
balanceNoAccount balance in SUN (string).
depositAddressNoTRON base58 deposit address for funding the internal balance.
representAddressNoTRON base58 represent address (used as order requester).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark readOnlyHint, openWorldHint, and idempotentHint. The description reinforces that it's read-only and does not change chain state, and adds valuable context: freshness of balance updates within seconds, and that it never accepts API keys via arguments. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is slightly lengthy but well-structured: purpose first, then prerequisites, usage, behavioral notes, and freshness. Every sentence contributes meaningful information, though some phrasings could be trimmed for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with output schema and annotations, the description covers all important aspects: what it returns, preconditions (session), behavioral traits, and data freshness. It is fully adequate for the agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters with 100% coverage. Description adds no parameter-level detail, which is unnecessary. A baseline of 4 is appropriate for parameter-less tools.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves the TronSave internal account profile, including represent address, deposit address, and balance in SUN. It specifies 'for the current session,' distinguishing it from related tools like tronsave_get_deposit_address or tronsave_get_user_info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly requires a logged-in MCP session from tronsave_login and explains how to include the session ID. It advises using when the user needs linked address, deposit address, or internal balance, and clarifies it's the api-key internal account, not the on-chain wallet. While it doesn't list alternative tools for on-chain queries, the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_min_priceGet Minimum Unit PriceA
Read-onlyIdempotent
Inspect

Quote the minimum unit price for a buy. Returns { minPrice } (SUN per resource unit) from GraphQL market.estimateMinPrice for the given resourceType, buyAmount, and durationSec. Optional address scopes context when the API supports it. No login required; an optional session forwards auth like tronsave_list_order_books. Read-only and idempotent. FRESHNESS: live market data — minPrice can change roughly every 3 seconds; re-fetch right before placing an order and do not reuse a stale value. Pair with tronsave_estimate_buy_resource for full buy quotes and tronsave_list_order_books for depth buckets.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoOptional TRON base58 address (`TronAddress`). When omitted, the server uses anonymous/global market context.
buyAmountNoResource amount to price (same units as order book / delegate amounts for that resource type). Default 100000 for ENERGY and 1000 for BANDWIDTH
durationSecNoDelegation window in seconds; must match the duration you plan to use on a real order for comparable quotes. Default 15 minutes
resourceTypeNoMarket leg: `ENERGY` or `BANDWIDTH`. Default ENERGYENERGY

Output Schema

ParametersJSON Schema
NameRequiredDescription
minPriceYesEstimated minimum unit price in SUN for the given `resourceType`, `buyAmount`, and `durationSec`; align with `tronsave_estimate_buy_resource` and order `unitPrice` conventions (same as GraphQL `market.estimateMinPrice`).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare `readOnlyHint`, `openWorldHint`, and `idempotentHint`. The description adds significant behavioral context: it is read-only and idempotent, no login required, optional session auth, and crucially, data freshness (minPrice changes every ~3 seconds, requiring re-fetch). This information goes beyond annotations and is essential for correct agent behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: purpose first, followed by return type, parameters, auth, idempotency, freshness warning, and pairing suggestions. Every sentence is informative and non-redundant. It front-loads the essential information, making it easy for an AI to quickly parse and act.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 4 parameters (1 enum), is read-only/idempotent, has an output schema (implied by return description), and has many siblings, the description is remarkably complete. It covers purpose, parameters, return, auth, idempotency, data freshness, and relationships to sibling tools. No critical gaps are evident.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with defaults and descriptions. The description adds value by explaining the practical significance of parameters: `buyAmount` defaults vary by resource type (100000 for ENERGY, 1000 for BANDWIDTH), `durationSec` must match the real order for comparable quotes, and `address` scopes context when supported. This context helps the agent set parameters appropriately beyond what the schema provides, though it is not exhaustive.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Quote the minimum unit price for a buy.' It specifies the return format, source API (GraphQL `market.estimateMinPrice`), and parameters, effectively distinguishing it from sibling tools like `tronsave_estimate_buy_resource` and `tronsave_list_order_books` by noting they pair together for different aspects of quoting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use guidance by recommending pairing with `tronsave_estimate_buy_resource` for full quotes and `tronsave_list_order_books` for depth. It also includes a freshness directive to re-fetch right before ordering and not reuse stale values, and notes that optional session forwarding mirrors `tronsave_list_order_books`. This covers both when to use and how to combine with alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_orderOrder DetailA
Read-onlyIdempotent
Inspect

Read one order by id and return its full snapshot for NORMAL, FAST, or EXTEND order types. Use this as the source of truth before tronsave_update_order, tronsave_sell_order_manual, or tronsave_cancel_order to avoid acting on stale state. FRESHNESS: order state can change within seconds as the market matches — re-read immediately before each mutation instead of reusing an earlier snapshot. Requires a signature session and mcp-session-id. Read-only and idempotent.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesTarget order id (`MObjectId`) to inspect. Use this to confirm current status/price before update, sell, or cancel actions.

Output Schema

ParametersJSON Schema
NameRequiredDescription
orderYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, openWorldHint. Description adds that it requires a signature session and mcp-session-id, and notes that order state changes quickly. Adds useful behavioral context beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is brief and well-structured. Each sentence adds value: action, usage guidance, freshness warning, requirements. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, no enums, output schema present), the description is fully complete. It covers purpose, timing, freshness, and prerequisites.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a detailed description for the only parameter (id). Description mentions the parameter but adds no new semantics beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description uses specific verb 'Read' and resource 'order by id', and specifies order types (NORMAL, FAST, EXTEND). It clearly distinguishes from siblings like tronsave_update_order, tronsave_cancel_order which are mutations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells when to use (source of truth before mutations) and warns against reusing stale state. Provides actionable guidance: re-read immediately before mutation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_sign_messageGet Signature MessageA
Read-onlyIdempotent
Inspect

Issue a wallet-signable timestamp message helper for signature login. Returns { message, timestamp }: sign message exactly client-side, then submit <signature>_<timestamp> to tronsave_login (signature mode). Optional helper only — clients may also sign their own timestamp payload directly as long as it matches the signature_timestamp format expected by tronsave_login.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
messageYesHex-encoded nonce message to sign client-side with the user's TRON wallet. The signature must be produced over THIS exact message (case-sensitive).
timestampYesUnix epoch seconds corresponding to `message`. Pair it with the wallet signature in `<signature>_<timestamp>` form when calling `tronsave_login` (signature mode). This endpoint is a convenience helper; clients may provide their own timestamp payload as well.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint, openWorldHint, and idempotentHint. The description adds context by detailing the exact return object and the required format for subsequent login, which goes beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences, front-loaded with the key action, and contains no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters and an output schema present, the description fully covers the tool's purpose, return value, and usage context, making it complete for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has no parameters, so the description does not need to add parameter information. The schema coverage is 100% and the description complements it by explaining the purpose and usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Issue a wallet-signable timestamp message helper for signature login.' It specifies the return format and distinguishes itself from the login tool by describing the intended flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Optional helper only' and provides an alternative: 'clients may also sign their own timestamp payload directly.' It also explains how to use the tool in conjunction with tronsave_login.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_user_auto_settingUser Auto SettingA
Read-onlyIdempotent
Inspect

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 signature session and mcp-session-id. Read-only and idempotent.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
voteNoWhether vote-related automation is enabled for the wallet.
energyNoEnergy auto-sell pool snapshot; null when energy automation is disabled.
bandwidthNoBandwidth auto-sell pool snapshot; null when bandwidth automation is disabled.
suggestSellNoWhether suggest-sell UX hints are enabled.
withdrawVoteNoWithdraw-vote configuration as a backend-defined string; semantics from TronSave docs.
permitOperationsNoPermission rows enabled for this user; null/empty when no automation has been configured.
reclaimOnlyTronSaveNoReclaim flag — when `true`, only TronSave-managed delegations are reclaimed automatically.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare `readOnlyHint`, `openWorldHint`, `idempotentHint`. Description adds value by requiring a signature session and `mcp-session-id`, and states the return is the full `autoSettings` object. Reinforces read-only and idempotent nature without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences: first states what it returns, second advises when to use it (with specific sibling names), third states requirements and properties. No unnecessary words; every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has an output schema and no parameters, the description covers usage context, return object, and prerequisites. Could mention potential errors or limits but is sufficient for an AI agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so schema coverage is 100%. Description doesn't need to add parameter details. It mentions required authentication context (signature session, mcp-session-id) which is not in schema, adding value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with 'Read the current user's auto-sell configuration (`autoSettings`)', clearly stating the verb and resource. It also mentions specific sibling tools (`tronsave_register_auto_sell` and `tronsave_update_auto_sell_setting`) to distinguish purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises to call this tool before modifying auto-sell settings to avoid unintended overwrites. Provides clear context on when to use, though no explicit when-not-to-use instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_user_infoUser InformationA
Read-onlyIdempotent
Inspect

Read the current authenticated user's profile and linked TronSave internal account. Returns { caller, address, balance (SUN string), info, internalAccount }info carries referral/contact metadata and may be null; internalAccount is null when the wallet has not provisioned a TronSave internal balance yet. Requires a signature session from tronsave_login and mcp-session-id. Read-only and idempotent. Use tronsave_get_user_auto_setting for the auto-sell config or tronsave_get_user_permissions for permission flags when the full profile is unnecessary.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
infoYes
callerYesTRON base58 address of the caller
addressYesTRON base58 address
balanceYesAmount in SUN, onchain balance of the address
internalAccountYes
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. The description reinforces this with 'Read-only and idempotent' and adds useful detail about return values potentially being null (info, internalAccount). This adds value beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences: first states purpose and return format, second details potential null fields, third gives usage context. No wasted words, well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and rich annotations, the description is complete. It covers return structure, nullability, prerequisites, and alternatives. Output schema is described inline, fulfilling the contextual needs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters (0 params, 100% schema coverage). Baseline is 4 per guidelines. Description does not need to add parameter semantics, and it appropriately omits them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reads the current authenticated user's profile and linked internal account, specifying the return fields. It distinguishes from siblings like tronsave_get_user_auto_setting and tronsave_get_user_permissions, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly mentions prerequisites: requires a signature session from tronsave_login and mcp-session-id. Also provides guidance on when to use alternative tools, giving clear context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_get_user_permissionsUser PermissionsA
Read-onlyIdempotent
Inspect

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 signature session and mcp-session-id. Read-only and idempotent.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
permitOperationsYesPermission rows enabled for this user; defaults to `[]` when nothing is configured.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint, openWorldHint, idempotentHint. The description adds the return format `{ permitOperations: string[] }` and confirms idempotence and read-only nature. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first states purpose and return, second gives usage guidance and prerequisites. Every sentence adds value, no waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no parameters, rich annotations, and output schema implied, the description covers purpose, return format, usage context, and prerequisites. Complete for this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so baseline is 4. Description adds no param info, which is appropriate since schema covers all (0 params).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description specifies the verb 'Read' and the resource 'enabled permission operations (`autoSettings.permitOperations`) for the authenticated user', making the action and scope clear. It distinguishes from sibling tools that deal with orders, auto settings, etc.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: 'before mutating auto-sell or auto-buy rules to confirm the action is allowed for the wallet'. Also mentions prerequisites: 'Requires a signature session and `mcp-session-id`.'

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_create_extend_requestSubmit Delegation ExtensionAInspect

Submit an extension request for existing delegated resources on TronSave, paid from the internal account. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Side effect: SPENDS internal TRX and creates an extension order; not idempotent. Use as STEP 2 after tronsave_internal_extend_delegates — pass its extendData rows unchanged. Returns { orderId } for the new extension order.

ParametersJSON Schema
NameRequiredDescriptionDefault
receiverYesTRON base58 address of the account that receives the delegated resource.
extendDataYesRows copied from `extendData` returned by `tronsave_internal_extend_delegates`.
resourceTypeNoResource type. Default ENERGY when omitted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
orderIdNoTronSave order ID (hex string) of the created/extension order.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses key side effects: 'SPENDS internal TRX and creates an extension order; not idempotent.' This adds meaningful context beyond annotations (readOnlyHint=false, idempotentHint=false). No contradiction with annotations is present.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph with no wasted words. It is front-loaded with the main purpose, then covers prerequisites, side effects, usage instructions, and return value. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 3 parameters (2 required), a nested array, an output schema, and annotations, the description fully covers session requirements, parameter sourcing, side effects, chaining order, and return format. No gaps remain for the agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining that `extendData` should be copied from `tronsave_internal_extend_delegates` output and that `resourceType` defaults to ENERGY when omitted. This enhances semantic understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Submit an extension request'), the resource ('existing delegated resources on TronSave'), and the payment source ('paid from the internal account'). It distinguishes itself from sibling tools by explicitly positioning it as 'STEP 2 after tronsave_internal_extend_delegates'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit chaining guidance: 'Use as STEP 2 after tronsave_internal_extend_delegates — pass its extendData rows unchanged.' Also details session requirements (login via tronsave_login, include mcp-session-id) and clarifies that internal tools do not accept API keys in arguments. This leaves no ambiguity for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_extend_delegatesList Extendable DelegationsA
Read-onlyIdempotent
Inspect

Return extendable delegations for a receiver plus an extendData payload for the extension flow. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Use as STEP 1 before tronsave_internal_create_extend_request when the user wants to extend existing delegation time. Read-only; does not submit anything. FRESHNESS: pricing/availability change within seconds — run immediately before extending and pass the returned extendData unchanged.

ParametersJSON Schema
NameRequiredDescriptionDefault
extendToYesTarget end time as Unix epoch milliseconds (UTC) for the extended delegation.
receiverYesTRON base58 address of the account that receives the delegated resource.
requesterNoTRON base58 requester; defaults to the API key account when omitted.
resourceTypeNoResource type. Default ENERGY when omitted.
maxPriceAcceptedNoMaximum unit price in SUN you are willing to pay for the extension.

Output Schema

ParametersJSON Schema
NameRequiredDescription
extendDataNoDelegations to extend; pass unchanged into internal_create_extend_request `extendData`.
yourBalanceNoCurrent account balance in SUN.
isAbleToExtendNoWhether balance is sufficient to extend.
extendOrderBookNoOrder book for extend.
totalEstimateTrxNoTotal estimated TRX cost in SUN.
totalDelegateAmountNoTotal delegated resource amount.
totalAvailableExtendAmountNoTotal available amount to extend.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (readOnlyHint, idempotentHint), the description adds critical behavioral details: session requirements, session ID header inclusion, and freshness sensitivity. All consistent with annotations; no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is slightly long but well-structured, front-loading the main purpose. Each sentence adds distinct value (purpose, flow, session requirements, read-only, freshness). Minor redundancy in session details could be tightened.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's role in a multi-step flow, the description covers prerequisites, usage context, and freshness. Output schema exists so return values need not be detailed. Lacks error scenarios or edge cases but sufficient for selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear descriptions for all 5 parameters. The description adds no extra parameter-level meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns extendable delegations and an extendData payload, with a specific verb ('Return') and resource. It distinguishes itself from the sibling 'tronsave_internal_create_extend_request' by positioning it as Step 1 in the extension flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance: use as Step 1 before 'tronsave_internal_create_extend_request', requires a logged-in session from 'tronsave_login', and notes it is read-only. Also includes freshness warning to run immediately before extending.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_order_bookInternal Market Order BookA
Read-onlyIdempotent
Inspect

Return the current TronSave market depth/price tiers for ENERGY or BANDWIDTH via the api-key REST endpoint. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Use before tronsave_internal_order_create or tronsave_internal_order_estimate when the user needs live prices or liquidity. Read-only. FRESHNESS: live market depth can change roughly every 3 seconds (one TRON block) — re-read immediately before placing an order.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoOptional TRON base58 address filter for the receiver.
durationSecNoDelegation duration window in seconds for the quote.
resourceTypeNoResource type. Default ENERGY when omitted.
minDelegateAmountNoMinimum resource amount per offer level to include (resource units, not SUN).

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNoOrder book entries sorted by price.
fastNoFAST price tier (SUN).
slowNoSLOW price tier (SUN).
mediumNoMEDIUM price tier (SUN).
availableResourceNoAvailable resource at the quoted tiers.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

While annotations already mark it readOnlyHint=true, the description adds critical behavioral context: internal tools bypass API key arguments and rely on session-based resolution; session types (signature vs. api-key) differ in key handling. It also discloses a 3-second freshness window, which is vital for correct agent invocation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (4 sentences) and front-loaded with the core purpose, then session details, usage guidance, and freshness. Every sentence adds necessary context without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has a full output schema, annotation coverage, and 100% parameter schema coverage, the description provides all needed contextual completeness: purpose, session prerequisites, usage timing, and live data volatility. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters have full schema descriptions (100% coverage), so the description does not add extra parameter-level meaning. The description provides no additional semantics beyond what the schema already conveys, meeting the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns TronSave market depth/price tiers for ENERGY or BANDWIDTH via the REST endpoint. It uses a specific verb ('return') and resource ('market depth/price tiers'), and distinguishes from siblings by noting it is a read-only preview for order creation/estimation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises using this tool before `tronsave_internal_order_create` or `tronsave_internal_order_estimate` when live prices are needed. It also specifies the prerequisite of a logged-in session from `tronsave_login` and notes freshness, providing clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_order_createCreate Energy or Bandwidth Order (Internal)AInspect

Place a new buy order for ENERGY or BANDWIDTH on TronSave, paid from the internal account balance. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Side effect: SPENDS internal TRX balance and creates a live order; not idempotent — each call places a new order. This is the api-key/internal path; for the signature-session market path use tronsave_create_order. Always derive unitPrice from the latest tronsave_internal_order_estimate (re-estimate immediately before submitting — quotes older than a few seconds may be stale and revert). Returns { orderId }.

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNoOptional execution guards and fill behavior.
sponsorNoOptional sponsor or referral code.
receiverYesTRON base58 address that will receive the resource.
unitPriceNoPricing: FAST | MEDIUM | SLOW strategy, or exact unit price in SUN per resource unit. Default MEDIUM when omitted.
durationSecNoDelegation duration in seconds. Default 259200 (3 days) when omitted.
resourceTypeNoResource type. Default ENERGY when omitted.
resourceAmountYesAmount of resource to purchase (resource units).

Output Schema

ParametersJSON Schema
NameRequiredDescription
orderIdNoTronSave order ID (hex string) of the created/extension order.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses side effects: spends internal TRX balance and creates a live order. Confirms non-idempotency ('not idempotent — each call places a new order'), matching annotations. Adds caveat about stale quotes older than a few seconds. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact (5 sentences) and front-loaded with the main purpose. Every sentence adds essential information: action, prerequisites, authentication clarification, side effects, sibling differentiation, and pricing guidance. No fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (7 parameters, nested options, 2 required), the description covers prerequisites, authentication, side effects, non-idempotency, alternative paths, pricing strategy guidance, and return value. With an output schema existing, the description is thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers each parameter with descriptions (100% coverage). The description adds critical guidance for unitPrice: derive from latest estimate and re-estimate immediately before submitting, which is not in the schema. This adds meaningful value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool places a new buy order for ENERGY or BANDWIDTH on TronSave using internal account balance. It differentiates from the sibling tool tronsave_create_order by specifying this is the api-key/internal path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly mentions prerequisite: a logged-in MCP session from tronsave_login. Clearly states when not to use this tool (for signature-session market path, use tronsave_create_order instead). Provides actionable guidance to derive unitPrice from latest tronsave_internal_order_estimate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_order_detailsInternal Order DetailsA
Read-onlyIdempotent
Inspect

Fetch full details for one internal-account order by order ID. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Use when monitoring fulfillment after tronsave_internal_order_create, or when the user asks for status on a specific order id. Read-only. FRESHNESS: order state changes within seconds as the market matches — re-read immediately before acting.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderIdYesTronSave order ID (hex string), e.g. value returned in internal.order.create response data.orderId.

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNoTronSave order ID (hex string).
priceNoUnit price in SUN.
statusNoOrder status.
receiverNoTRON base58 receiver address.
createdAtNoOrder created time (Unix epoch ms or ISO-8601, endpoint-dependent).
delegatesNoDelegations fulfilling this order.
orderTypeNoOrder type (NORMAL | FAST | EXTEND).
requesterNoTRON base58 requester address.
durationSecNoDelegated duration in seconds.
payoutAmountNoPayout amount in SUN.
remainAmountNoRemaining unfulfilled amount.
resourceTypeNoResource type.
resourceAmountNoResource amount of order.
allowPartialFillNoWhether partial fill is allowed.
fulfilledPercentNo0 = pending, 1-99 = partial, 100 = fully matched.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Disclosures include read-only nature, session handling, and volatility note: 'FRESHNESS: order state changes within seconds — re-read immediately before acting.' Annotations (readOnlyHint, openWorldHint, idempotentHint) are consistent and supplemented.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured and front-loaded with purpose, then authentication, usage, and behavior. Each sentence adds value, though could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 param, read-only, output schema present), the description covers purpose, authentication, usage scenarios, and data freshness. It is fully adequate for agent understanding and correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter orderId is fully described in the schema (hex string, example source). The tool description does not add additional semantic meaning beyond what the schema provides, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Fetch full details for one internal-account order by order ID.' It specifies the verb 'fetch' and the resource 'internal-account order', differentiating from sibling tools like tronsave_get_order which target regular orders.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states requirement for a logged-in MCP session from tronsave_login, explains authentication modes, and provides concrete use cases: monitoring fulfillment after tronsave_internal_order_create or checking status on a specific order id.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_order_estimateEstimate TRX Cost Before OrderA
Read-onlyIdempotent
Inspect

Estimate the TRX cost and availability for a buy order before submitting it (api-key internal account). Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Use when the user wants a quote or price check; feed the result into tronsave_internal_order_create. Read-only. FRESHNESS: unitPrice/estimateTrx are live and can change roughly every 3 seconds — re-estimate immediately before creating the order.

ParametersJSON Schema
NameRequiredDescriptionDefault
optionsNoOptional flags that affect matching behavior for the estimate.
receiverNoTRON base58 address that will receive the resource.
requesterNoTRON base58 requester; defaults to the API key account when omitted.
unitPriceNoPricing: FAST | MEDIUM | SLOW strategy, or exact unit price in SUN per resource unit. Default MEDIUM when omitted.
durationSecNoDelegation duration in seconds. Default 259200 (3 days) when omitted.
resourceTypeNoResource type. Default ENERGY when omitted.
resourceAmountYesAmount of resource to purchase (resource units).

Output Schema

ParametersJSON Schema
NameRequiredDescription
unitPriceNoUnit price in SUN.
durationSecNoDelegated duration in seconds.
estimateTrxNoEstimated TRX cost in SUN.
availableResourceNoAvailable resource amount.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds significant behavioral context beyond annotations: freshness warning with 3-second update interval, session requirement, internal tool behavior (no API keys in arguments), and re-estimation advice. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise and well-structured: purpose stated first, then prerequisites, usage guidance, read-only declaration, and freshness warning. Each sentence adds value; no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers all necessary context: session requirement, internal tool behavior, usage scenario, freshness constraints, and linking to the next tool. Output schema exists, so return values need not be explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and already documents each parameter thoroughly. The tool description does not add additional meaning to the input parameters beyond mentioning freshness of output fields (unitPrice/estimateTrx). Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool estimates TRX cost and availability for a buy order before submission. Uses specific verb 'estimate' and resource 'TRX cost and availability'. Distinguishes from siblings by mentioning it feeds into 'tronsave_internal_order_create' and is for internal accounts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: 'Use when the user wants a quote or price check'. Tells what to do with the result: 'feed the result into tronsave_internal_order_create'. Also provides prerequisite instructions for session handling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_internal_order_historyInternal Account Order HistoryA
Read-onlyIdempotent
Inspect

List paginated order history for the internal account linked to the API key, newest first. Requires a logged-in MCP session created by the tronsave_login tool: include mcp-session-id: <sessionId> returned by tronsave_login on subsequent MCP requests. Internal tools never accept API keys via tool arguments; signature sessions resolve the latest internal API key on demand, while api-key sessions reuse the validated key from login. Use when the user asks about past purchases, fulfillment, payouts, or delegates on their internal account. Read-only. Pair with tronsave_internal_order_details for a single order's full snapshot.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage index, 0-based. Omit for first page (default 0).
pageSizeNoOrders per page. Default 10 when omitted. Typical range 1–100.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNoOrders on this page, newest first.
totalNoTotal orders matching the query (for pagination).
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate readOnlyHint, idempotentHint, openWorldHint. The description adds that the tool is paginated, returns newest first, and requires session authentication. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single well-organized paragraph with purpose first, then authentication, usage, and pairing. Every sentence adds value; no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 2 optional parameters, output schema exists, and rich annotations, the description covers authentication, use cases, pagination behavior, and complementary tools comprehensively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with each parameter described. The description adds context like 'newest first' and pagination behavior, but doesn't significantly extend beyond schema descriptions. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List paginated order history for the internal account linked to the API key, newest first.' It uses specific verbs and resource, and distinguishes from siblings like tronsave_internal_order_details and tronsave_list_orders.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says 'Requires a logged-in MCP session created by the tronsave_login tool' and gives the session header format. It states when to use ('when the user asks about past purchases, fulfillment, payouts, or delegates on their internal account') and suggests pairing with tronsave_internal_order_details for a single order.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_list_extendable_delegatesExtendable DelegatesA
Read-onlyIdempotent
Inspect

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. Works without mcp-session-id; when a session is present, auth is forwarded so results can reflect the logged-in account where supported. NOTE: this is GraphQL market data for discovery only. To actually submit an extension, call the authenticated REST POST /v2/get-extendable-delegates with extendData (payload shape differs from this GraphQL response).

ParametersJSON Schema
NameRequiredDescriptionDefault
receiverYesTRON 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 that account's delegation.
requesterNoOptional 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 requester string distinct from the receiver.
suggestDataNoOptional 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 are invalid for typical GraphQL input shapes.
resourceTypeYesWhich resource market leg to query: `ENERGY` for contract execution headroom, `BANDWIDTH` for transaction bandwidth. Must match how you plan to extend or buy.

Output Schema

ParametersJSON Schema
NameRequiredDescription
extendableDelegatesYesNull when the market has no payload or GraphQL returned no branch; check tool-level errors for hard failures.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description reinforces annotations (readOnlyHint, openWorldHint, idempotentHint) by stating 'Read-only; does NOT create orders or change on-chain state'. Adds context that it's GraphQL market data for discovery only and explains optional suggestData is for planning, not a live order. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is fairly long but well-structured: main purpose first, then optional parameters, then read-only note, then session behavior, and finally a clear note about the alternative REST endpoint. Each sentence adds value, though some redundancy (e.g., 'Read-only' repeated in multiple sentences). Could be slightly more concise but appropriate for complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has output schema (so return values need not be explained), all aspects are covered: purpose, required parameters, optional parameters with nested structure, read-only guarantee, auth behavior, and explicit guidance on when to use this vs. the REST endpoint. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema descriptions already cover all parameters (100% coverage). Description adds valuable context: requester parameter explains when it's needed vs. session auth; suggestData emphasizes that partial objects are invalid and it's for hypothetical scoring; resourceType reinforces enum meaning. This goes beyond what schema provides, justifying a score above baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'List extendable delegate candidates for a receiver and resourceType'. It distinguishes from sibling tools (e.g., tronsave_internal_extend_delegates) by explicitly saying it is read-only and for discovery only, and provides the alternative REST endpoint for actual submission.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (listing extendable delegates) and when not (does not create orders). Provides specific alternative: 'To actually submit an extension, call the authenticated REST POST /v2/get-extendable-delegates'. Also clarifies that it works without session and auth forwarding behavior.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_list_order_booksOrder BookA
Read-onlyIdempotent
Inspect

Read market depth buckets for ENERGY or BANDWIDTH. Returns price buckets { min, max, value } optionally scoped by viewer address, minimum delegate amount, and duration. No login required; read-only and idempotent. FRESHNESS: live market depth — buckets can shift roughly every 3 seconds; re-read immediately before acting on a price. Use this to estimate market ranges before create/update decisions; pair with tronsave_estimate_buy_resource for quote-style buy estimation and tronsave_get_order for one concrete order.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressNoOptional viewer/requester wallet context.
durationSecNoOptional delegation duration filter in seconds.
resourceTypeYesOrder-book side to query (`ENERGY` or `BANDWIDTH`).
minDelegateAmountNoOptional minimum delegate amount floor for bucket filtering.

Output Schema

ParametersJSON Schema
NameRequiredDescription
orderBookYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, it adds freshness info: buckets shift every ~3 seconds, advising re-read before acting. No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single paragraph that is well-structured, front-loaded with purpose, and packs essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers all needed aspects: purpose, parameters, synchronization, usage context, and links to alternatives. Output schema exists, so return details are not required.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds value by summarizing how parameters scope the query and mentioning the return structure, but does not add deep new semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it reads market depth buckets for ENERGY or BANDWIDTH, and specifies the return format. It distinguishes itself from sibling tools by mentioning tronsave_estimate_buy_resource and tronsave_get_order.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (before create/update decisions) and how to pair with other tools. Also notes no login required, read-only, and idempotent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_list_ordersList OrdersA
Read-onlyIdempotent
Inspect

Query the order list with paging. Returns { orders: [{ id, requester?.address, receiver.address, resourceType, resourceAmount, remainAmount, durationSec, unitPrice (SUN), isOwner, isMatching, apy, createdAt, typeOrder (NORMAL|FAST|EXTEND) }] }. Filter status maps to GraphQL isFulfilled: ACTIVEUNFULFILLED, COMPLETEDFULFILLED. Set onlyMyOrder=true (requires signature login + mcp-session-id) to scope to the caller's wallet as requester. Paging uses offset/limit. Use tronsave_get_order with an id for one full snapshot before mutating an order.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum rows to return in one call. Prefer modest limits to avoid huge payloads; page with `offset`.
offsetNoZero-based row offset for page N (skip first `offset` matches). Omit when starting from the first page.
statusNoLifecycle filter mapped to GraphQL `isFulfilled`: `ACTIVE` → `UNFULFILLED` (not yet fulfilled), `COMPLETED` → `FULFILLED`.
resourceTypeNoRestrict to `ENERGY` or `BANDWIDTH` orders; omit for both.
isOnlyMyOrderNoWhen `true`, only orders whose `requester` is the wallet from the signature session; include `mcp-session-id`. Api-key-only sessions have no wallet address and cannot use this filter. When `false` or omitted, return all orders on the market (no requester filter).

Output Schema

ParametersJSON Schema
NameRequiredDescription
ordersYesMatching orders for this page; may be large—use pagination inputs to chunk.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint, openWorldHint, and idempotentHint, and the description does not contradict these. It adds transparency about paging behavior, filter mapping, authentication requirements for `onlyMyOrder`, and return shape, enhancing understanding beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise, using a single paragraph with clear structure: action, return format, filter mapping, authentication note, and paging instructions. Every sentence adds value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 5 parameters, an output schema, and many siblings, the description covers all essential aspects: paging, filtering, authentication, and cross-reference to `tronsave_get_order`. It is complete for an agent to select and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining the status mapping, authentication context for `isOnlyMyOrder`, and paging semantics beyond schema descriptions. This justifies a score above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool queries the order list with paging and provides the return structure. It distinguishes itself from the sibling `tronsave_get_order` which retrieves a single full snapshot.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use paging, how filters like status map to GraphQL, and notes that `onlyMyOrder` requires signature login and session ID. It also advises using `tronsave_get_order` for a single full snapshot before mutating, providing clear when-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_loginLogin SessionAInspect

Authenticate with TronSave and create a server session. Returns { sessionId, walletAddress?, expiresAt } — pass sessionId as the mcp-session-id header on every subsequent MCP request. walletAddress is set only for signature-mode logins. Two modes: (1) wallet signature (preferred for platform tools) — call this tool with signature_timestamp formatted as <signature>_<timestamp>, where <signature> must be produced client-side by signing the timestamp message; you may optionally call tronsave_get_sign_message to obtain a helper message/timestamp pair; (2) API key (internal tools) — pass apiKey (raw key, no prefix). Side effect: creates a new session on the server. Wallet signing must happen client-side; never send private keys to the server.

ParametersJSON Schema
NameRequiredDescriptionDefault
apiKeyNoRaw API key for internal-tools login. Provide EXACTLY ONE of `apiKey` or `signature`.
signatureNoSignature token in `signature_timestamp` format (timestamp is the signed message). Provide EXACTLY ONE of `apiKey` or `signature`.

Output Schema

ParametersJSON Schema
NameRequiredDescription
expiresAtYes
sessionIdYesSession id to pass as mcp-session-id in subsequent calls.
walletAddressNo
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations indicate readOnlyHint=false and idempotentHint=false, which align with the description's statement that the tool creates a new session. The description adds critical behavioral context: wallet signing must be client-side, private keys must never be sent, and the side effect of session creation. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is informative and front-loaded with the essential purpose and return value. It explains modes and side effects efficiently, though slightly long. Every sentence is necessary, but minor trimming could improve conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (two modes, client-side signing, session creation), the description covers all needed information: authentication flow, return value structure, header usage, and security caveats. The output schema exists and is explained, making the description complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers both parameters (apiKey, signature) with descriptions. The description adds significant value: the exact format for signature ('signature_timestamp'), that apiKey is raw without prefix, and that exactly one of the two must be provided. This goes beyond the schema's basic descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool authenticates and creates a server session, specifying the return value and how to use the session ID. It is distinct from sibling tools, which are all other operations, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly details two modes (wallet signature and API key), explains how to format the signature, and mentions the optional helper tool tronsave_get_sign_message. It does not explicitly state when not to use the tool (e.g., if already authenticated), but provides strong usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_register_auto_sellRegister Auto SellAInspect

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 signature session and mcp-session-id. Use for FIRST-TIME setup only; for subsequent edits use tronsave_update_auto_sell_setting, and always read the current state with tronsave_get_user_auto_setting first to avoid overwriting unknown fields. Fails for invalid config combinations, unauthorized sessions, or backend policy restrictions.

ParametersJSON Schema
NameRequiredDescriptionDefault
poolSettingNo
addOnFeatureNo
paymentConfigNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
dataYesOpaque server-defined payload (tx id, setting id, or status text). Treat as identifier-or-message; rely on `message` for human routing.
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses side effects (persists automation settings affecting future behavior) and non-idempotence (calling twice may reset fields). It also states failure scenarios (invalid config, unauthorized session, backend policy). Annotations already indicate readOnlyHint=false and idempotentHint=false, but the description adds specific behavioral context without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured. It front-loads the primary purpose, then addresses side effects, usage guidelines, and failure conditions in a logical order. Every sentence adds value without unnecessary verbiage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (three nested object parameters, 0% top-level schema coverage, and an output schema not detailed), the description adequately covers usage context and behavioral traits but omits parameter semantics and return value structure. It compensates somewhat by guiding correct usage but is incomplete regarding what the tool accepts and returns.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 3 top-level parameters with 0% schema description coverage. The tool description does not provide any meaning or explanation for these parameters (poolSetting, addOnFeature, paymentConfig) beyond their names. This is a significant gap, as the description should compensate for the lack of schema descriptions but fails to do so.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool creates the initial auto-sell configuration for the authenticated user. It distinguishes from siblings by explicitly mentioning it is for first-time setup only, contrasting with tronsave_update_auto_sell_setting for subsequent edits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit when-to-use (first-time setup) and when-not-to-use (subsequent edits should use update tool). It also advises reading current state first with tronsave_get_user_auto_setting to avoid overwriting unknown fields. Additionally, it mentions prerequisites (signature session, mcp-session-id) and failure conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_revoke_api_keyRevoke API KeyA
DestructiveIdempotent
Inspect

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 instantaneous cutoff. Idempotent — revoking an already-revoked key returns success. Requires a signature session and mcp-session-id. Call tronsave_generate_api_key afterwards to mint a replacement when continued internal access is needed.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
dataYesFor `generateApiKey`: the freshly issued internal API key — treat as SECRET, store securely. For `revokeApiKey`: server-defined confirmation string (no key material).
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations (destructiveHint, idempotentHint), the description discloses important behavioral traits: TTL of in-flight sessions, best-effort immediate cutoff, and idempotency confirmation, adding significant value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, with each sentence adding clear value. Front-loaded with the primary action, followed by side effects, idempotency, requirements, and next steps.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the empty schema, annotations, and existence of an output schema, the description is complete. It covers side effects, idempotency, requirements, and post-use action, leaving minimal gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters, so there is nothing to describe. The description adds context about required session and header, which is beyond the schema but not parameter-specific.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Revoke the caller's current internal API key' with a specific verb and resource. It distinguishes itself from the sibling tool 'tronsave_generate_api_key' by mentioning it as a follow-up action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states prerequisites ('Requires a signature session and mcp-session-id'), provides context on the best-effort nature of the effect, and directs the user to call 'tronsave_generate_api_key' for continued access.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_sell_order_manualSell Order ManualA
Destructive
Inspect

Manually execute seller-side fulfillment of an existing order with a wallet signedTx. Returns the updated order payload after sell. Side effect: broadcasts a market/delegation transaction and may consume balances/resources; not idempotent — each call re-executes. Backend requires a signature session and mcp-session-id; the MCP gate is public to allow anonymous read-fallthrough, but the GraphQL helper rejects api-key-only sessions. Use only when explicit manual sell is intended; call tronsave_get_order first to verify order state before signing.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderIdYesTarget order id (`MObjectId`) to manually fulfill. Should be an order eligible for seller-side manual execution.
signedTxYesRequired wallet-signed transaction payload (TronWeb shape: `{ txID, raw_data, raw_data_hex, signature[] }`). Must come from client-side signing; never fabricate.
paymentAddressNoOptional payout/payment address override when settlement flow requires it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
delegatedIdNoOn-chain delegate id created by the manual sell when the underlying transaction is confirmed; null until confirmation lands.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag destructiveHint=true, idempotentHint=false. The description elaborates significantly: 'Side effect: broadcasts a market/delegation transaction and may consume balances/resources; not idempotent — each call re-executes.' It also adds authorization nuance. No contradiction with annotations; description adds substantial context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four well-structured sentences, front-loaded with the key action and return value, followed by side effects and usage conditions. No wasted words; each sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (3 params, nested objects, output schema exists), the description covers purpose, side effects, prerequisites, and usage order. It is complete for an agent to correctly invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%. The description adds value by contextualizing the signedTx parameter ('Must come from client-side signing; never fabricate') and noting the optional paymentAddress override. This goes beyond the schema, though the schema is already thorough.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: 'Manually execute seller-side fulfillment of an existing order' with a specific resource ('order', 'signedTx'). It explicitly distinguishes from sibling tools by focusing on manual sell fulfillment, contrasting with other tools like 'tronsave_cancel_order' or 'tronsave_create_order'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear guidance: 'Use only when explicit manual sell is intended; call tronsave_get_order first to verify order state before signing.' Also details required session/auth conditions ('Backend requires a signature session and mcp-session-id'), effectively telling the agent when and how to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_update_auto_sell_settingUpdate Auto Sell SettingAInspect

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 signature session and mcp-session-id. Use for INCREMENTAL changes after registration; read the baseline via tronsave_get_user_auto_setting to avoid accidental resets, and use tronsave_register_auto_sell only for first-time setup. Fails for invalid field combinations, unauthorized sessions, or policy constraints.

ParametersJSON Schema
NameRequiredDescriptionDefault
poolSettingNo
addOnFeatureNo
paymentConfigNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
dataYesOpaque server-defined payload (tx id, setting id, or status text). Treat as identifier-or-message; rely on `message` for human routing.
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate mutation (readOnlyHint=false) and non-idempotence (idempotentHint=false). Description adds specifics: 'overwrites stored automation settings for the current user; not idempotent across different field sets' and lists failure modes, providing additional behavioral context beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Highly concise and well-structured: first sentence states purpose and return, then side effects, requirements, usage guidance, and failure conditions. Every sentence adds value and the information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, return type, side effects, prerequisites, usage context, alternative tools, and failure cases. Output schema exists, so return values are documented. Minor missing detail on how partial updates merge with existing settings, but satisfactory for a complex tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is low at top level (0%), but nested schema fields have detailed descriptions. The tool description adds the key concept of 'partial fields' (incremental updates). Baseline 3 is appropriate as schema covers subfields and description adds partial update hint.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Update the existing auto-sell configuration with partial fields' and explicitly distinguishes from sibling tools `tronsave_register_auto_sell` (first-time setup) and `tronsave_get_user_auto_setting` (read baseline).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance: 'Use for INCREMENTAL changes after registration; read the baseline via... to avoid accidental resets, and use... only for first-time setup.' Also specifies prerequisites (signature session, mcp-session-id) and failure conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

tronsave_update_orderUpdate OrderAInspect

Update an open order by orderId with partial fields (receiver, newPrice). Returns the updated order payload. Side effect: overwrites live order parameters; not idempotent — each call with a different newPrice produces a new state. Backend requires a signature session and mcp-session-id; the MCP gate is public to allow anonymous read-fallthrough, but the GraphQL helper rejects api-key-only sessions. Prefer this over cancel+recreate when only price/receiver should change. Verify state with tronsave_get_order first; fails for already-fulfilled, already-cancelled, or non-editable orders.

ParametersJSON Schema
NameRequiredDescriptionDefault
orderIdYesTarget order id (`MObjectId`) to update. Order must still be open and editable.
newPriceNoOptional replacement unit price in SUN.
receiverNoOptional replacement receiver TRON address.

Output Schema

ParametersJSON Schema
NameRequiredDescription
codeYesGraphQL mutation status code (HTTP-like; `0`/`200` indicates success). Always pair with `success` for routing.
messageYesHuman-readable status text. Populated even on success; localized error messages may appear here on failure.
successYesWhether the mutation succeeded at the backend level. Always check this before reading `data`.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses side effects (overwrites live order parameters), non-idempotency (each call with different newPrice produces new state), and authentication nuances. Annotations already indicate readOnlyHint=false and idempotentHint=false, and the description adds valuable context that exceeds annotations without contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured paragraph of about 80 words. It front-loads the primary action and return value, then covers side effects, prerequisites, alternatives, and failure conditions. Every sentence earns its place with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (3 parameters, annotations present, output schema exists), the description covers all necessary aspects: purpose, prerequisites, side effects, authentication requirements, failure modes, and return value. It is complete for an agent to decide when and how to invoke the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context beyond schema by explaining that orderId must correspond to an open/editable order and that newPrice is in SUN, but the schema already includes these details. However, the description connects parameters to failure conditions and usage, providing slight added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it updates an open order by orderId with partial fields (receiver, newPrice). It distinguishes from sibling tools like tronsave_cancel_order and tronsave_create_order by recommending this over cancel+recreate when only price/receiver should change. It also specifies the return value.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (prefer over cancel+recreate), prerequisites (verify state with tronsave_get_order first), failure conditions (fails for already-fulfilled, already-cancelled, or non-editable orders), and authentication requirements (signature session, mcp-session-id, public gate but GraphQL rejects api-key-only).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources