Skip to main content
Glama
nakazanie-ton

xRocket Exchange MCP

xRocket Exchange MCP

Set one daily value limit and let an MCP-capable AI agent place and cancel xRocket spot orders autonomously inside it. Transfers and withdrawals remain separate explicit-approval operations.

The hosted endpoint remains a public market-data demo and onboarding path; it never receives account credentials and cannot trade. This package is not affiliated with or endorsed by xRocket. Set up trading or open xRocket.

Trading quick start

  1. Sign in to xRocket and open Menu → Settings → Exchange settings → API token.

  2. Generate a testnet-first MCP configuration with a daily limit:

    npx -y xrocket-mcp@0.6.0 trading-config --limit 100 --asset USD
  3. Paste the printed JSON into your local MCP client. Replace SET_YOUR_XROCKET_API_TOKEN_LOCALLY only in the client's local secret or environment settings.

  4. Give the client a strategy. It can place and cancel market or limit orders on any available spot pair until the configured daily value or built-in order-count limits are reached.

Use npx -y xrocket-mcp@0.6.0 trading-config --limit 100 --asset USD --mainnet only after testnet validation. Transfers and withdrawals stay disabled.

The upstream token has broad account access rather than documented granular scopes. Never put it in chat, the hosted endpoint, a committed file, an issue, or a log.

Related MCP server: tossinvest-openapi-mcp

Hosted market demo

Use the connection page or copy the public mainnet endpoint without installing anything or supplying credentials:

https://xrocket-mcp-production.up.railway.app/mcp

It exposes only the 10 public tools and cannot read account tokens or enable financial writes. When asked to trade, its onboarding tool points the user to the local setup above.

Local quick start

npx -y xrocket-mcp@0.6.0 doctor
npx -y xrocket-mcp@0.6.0 config

Node.js 20 or newer is required. Public market reads work without configuration:

XROCKET_PROFILE=public
XROCKET_ENVIRONMENT=mainnet

Install the all-in-one Codex plugin from the repository marketplace:

codex plugin marketplace add nakazanie-ton/myrocket --ref main
codex plugin add xrocket-exchange@xrocket-agents

GitHub Copilot CLI can install the portable plugin directly:

copilot plugin install nakazanie-ton/myrocket:plugins/xrocket-exchange

The portable install connects only to the hosted public market tools. Use the trading quick start above when local account access is needed.

Gemini CLI:

gemini extensions install https://github.com/nakazanie-ton/myrocket

The root Gemini extension uses the same hosted public-only endpoint and local trading handoff.

Claude Code:

claude plugin marketplace add nakazanie-ton/myrocket
claude plugin install xrocket-exchange@xrocket-agents

Both marketplace plugins start with public market tools. The bundled skill handles the sign-in and one-limit local trading setup when private access is needed.

MCP client example:

{
  "mcpServers": {
    "xrocket": {
      "command": "npx",
      "args": ["-y", "xrocket-mcp@0.6.0"],
      "env": {
        "XROCKET_ENVIRONMENT": "mainnet",
        "XROCKET_ENABLE_TRADING": "false",
        "XROCKET_ENABLE_TRANSFERS": "false",
        "XROCKET_ENABLE_WITHDRAWALS": "false",
        "XROCKET_ALLOW_MAINNET_WRITES": "false"
      }
    }
  }
}

For source development, run npm ci, npm test, and npm run build in this directory.

Profiles and write gates

  • public: 10 unauthenticated tools, including the composed xrocket_market_snapshot.

  • private-read: public tools plus balances, whole-account overview, orders, transfers, withdrawals, and quotas; inferred when XROCKET_API_TOKEN is present.

  • full: all tools, including autonomous trading plus explicit transfer/withdrawal workflows; every capability remains disabled unless its own gate is true.

Write gates are XROCKET_ENABLE_TRADING, XROCKET_ENABLE_TRANSFERS, and XROCKET_ENABLE_WITHDRAWALS; all default to false. Mainnet writes also require XROCKET_ALLOW_MAINNET_WRITES=true.

xrocket_agent_trade estimates and values each order before submitting it once. The local durable ledger enforces the configured daily value limit across restarts, while today's xrmcp-… exchange history recovers usage created by another local process. Daily order-count and active-order guards remain built in. All spot symbols are allowed by default; an optional symbol allowlist is available for advanced setups. Ambiguous order outcomes stay reserved against the limit and are not retried.

Transfers and withdrawals still store an exact prepared intent and accept only its short-lived, single-use approval receipt. The normal trading config keeps both gates disabled.

Boundaries

  • The Exchange API has no deposit-address endpoint; onboarding is a UI guide only.

  • Exchange transfers are internal fundingtrading, not user-to-user payments.

  • xRocket Pay is a separate product and is not included.

  • WebSocket channels are audited but 0.6.0 uses bounded REST snapshots.

  • Keep financial values as decimal strings and use TONCOIN where the current API requires it.

Full documentation, coverage, security policy, privacy notice, and terms live in the project repository.

Available Tools

10 tools
xrocket_asset_infoxRocket assetsB
Read-onlyIdempotent
Inspect

List public assets or inspect one exact asset identifier.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetNoExact xRocket asset identifier; TON is currently TONCOIN

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the description needs to add less. It adds useful context such as 'public assets' and the TON/TONCOIN identifier note, but does not disclose pagination, ordering, or the shape of an individual asset inspection—though an output schema 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 concise sentence that front-loads the core action and covers both invocation modes. There is no filler, repetition, or unnecessary detail.

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?

For a simple optional-parameter read-only tool with comprehensive annotations and an output schema, the description is essentially sufficient. The main missing piece is explicit scenario guidance for choosing list vs. inspect, but this is partly inferable and minor given the schema and hints.

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 the asset parameter is already documented with 'Exact xRocket asset identifier; TON is currently TONCOIN'. The description's phrase 'exact asset identifier' largely echoes the schema without adding new semantic details, so baseline 3 is appropriate.

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 states specific actions—'List public assets' or 'inspect one exact asset identifier'—and makes the tool's scope clear. It doesn't explicitly name a sibling it is not, but the resource domain (assets vs. market data) inherently separates it from the listed market tools.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to use this tool versus alternatives like xrocket_market_symbols. The only usage clue is implied by the optional asset parameter (omit it to list, provide it to inspect), but no when/when-not guidance is given.

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

xrocket_market_candlesxRocket candlesA
Read-onlyIdempotent
Inspect

Get public OHLCV candles for an exact ISO-8601 time window.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYes
endAtYes
symbolYesExact current xRocket symbol, for example GRAM-USDT
startAtYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the 'public' nature and the exact ISO-8601 time requirement, which is complementary context. It does not mention rate limits or pagination, but these are minor given the annotations and output schema. Moderate additional value 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?

A single, dense sentence that leads with the core action and resource, then adds the crucial time-window constraint. No redundant words or filler; it is optimally concise and 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?

Given a simple read-only tool with an output schema present and annotations covering safety, the description adequately conveys the tool's purpose and input requirements. It does not mention maximum time ranges or response structure, but those are typically derivable from the output schema. The description is sufficient for an agent to invoke the tool correctly for historical candle retrieval.

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 only 25%, with only 'symbol' documented. The description adds the ISO-8601 format hint for startAt and endAt, which is useful and not present in the schema field descriptions. It does not explain the 'type' parameter beyond the enum, nor clarify relationships like startAt must precede endAt. It partially compensates for the low coverage but could be more explicit.

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 states the specific action 'Get', the resource 'public OHLCV candles', and the scoping constraint 'exact ISO-8601 time window'. It clearly distinguishes from sibling tools like orderbook or tickers by specifying 'candles', which is a unique resource among the listed siblings.

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

Usage Guidelines2/5

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

The description provides a temporal scoping detail but offers no guidance on when to use this tool versus alternatives, nor any exclusions or complementary usage. An agent must infer it is for historical price data from 'candles' and 'time window', but there is no explicit comparison or contextual trigger.

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

xrocket_market_orderbookxRocket order bookB
Read-onlyIdempotent
Inspect

Get a public order-book snapshot. Precision must be valid for the selected pair.

ParametersJSON Schema
NameRequiredDescriptionDefault
depthNo
symbolYesExact current xRocket symbol, for example GRAM-USDT
precisionNoExact positive decimal string; never use a JSON number

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds that the snapshot is 'public', implying no authentication needed, and notes that precision must be valid for the pair, which is a validation constraint. It does not elaborate on return format or side effects, but the output schema covers that.

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 extremely concise, two sentences, front-loading the primary action. There is no redundant information, and every word contributes to meaning.

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?

For a tool with three parameters and an output schema, the description is minimal. It does not explain that depth and precision are optional, nor their interplay, and it fails to provide any context on when to use this tool. The lack of usage guidance and parameter relationships makes it incomplete for optimal agent 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 67%: symbol and precision have descriptions, depth has none but is constrained by const values. The description adds the dependency of precision on the selected pair, which is useful beyond the schema. It does not add anything for depth, leaving that to the schema's enumerated values.

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 retrieves a public order-book snapshot, which is a specific verb+resource. It is distinct from siblings like market_candles or market_tickers by explicitly mentioning 'order-book', though it does not name an alternative for comparison.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus other market data tools. It only states a constraint about precision, without indicating when an agent should prefer the order book over, say, the market snapshot or tickers.

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

xrocket_market_snapshotxRocket market snapshotA
Read-onlyIdempotent
Inspect

Resolve an exact symbol or base asset and return market rules, ticker, best bid/ask, recent trades, and fees in one read-only call. Exact symbols win; ambiguous assets are never guessed.

ParametersJSON Schema
NameRequiredDescriptionDefault
depthNo
marketYesExact symbol such as GRAM-USDT, or a base asset such as GRAM
precisionNoExact positive decimal string; never use a JSON number

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already supply readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful resolution behavior: exact symbols win and ambiguous assets are never guessed, which is not present in 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?

Two tightly constructed sentences deliver the core purpose, the resolution rule, and the guarantee about ambiguous assets. There is no filler or redundant restating of the schema.

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 presence of an output schema and annotations covering read-only/idempotent behavior, the description is largely complete. It could be more explicit about what happens when an ambiguous asset is encountered, e.g., whether an error is returned or disambiguation is required, but the 'never guessed' statement provides a practical boundary.

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 schema already documents market and precision, with the market description itself mentioning exact symbols like GRAM-USDT or base assets like GRAM. The description reinforces the market resolution policy but adds no detail about the depth or precision parameters, so it does not substantially increase semantic coverage 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 states a specific verb ('Resolve'), a resource ('an exact symbol or base asset'), and a clear deliverable: market rules, ticker, best bid/ask, recent trades, and fees in one read-only call. It also distinguishes itself from siblings by framing this as a composite snapshot rather than a single-purpose endpoint.

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 phrase 'in one read-only call' clearly communicates when this tool is appropriate: when a consolidated snapshot is needed. It does not explicitly name alternatives like xrocket_market_tickers or xrocket_market_orderbook, but the aggregation framing gives enough context for routing.

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

xrocket_market_symbolsxRocket symbolsA
Read-onlyIdempotent
Inspect

List all exchange symbols or inspect one exact symbol and its trading constraints.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNoExact current xRocket symbol, for example GRAM-USDT

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds useful context by explaining the conditional behavior (all symbols vs. one symbol plus trading constraints), but it does not disclose potential edge cases like large response sizes or symbol formatting requirements.

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 sentence that front-loads the primary behavior and conveys both invocation modes without wasted words. It is appropriately sized for the tool's simplicity.

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?

The tool has only one optional parameter, strong read-only annotations, and an output schema, so the description does not need to explain return values. It covers both call patterns and the relevant domain (symbols and trading constraints), though it could add a brief note about when not to use it or how results are paginated.

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 schema already describes the only parameter completely, including an example ('GRAM-USDT'). The description adds that supplying the parameter switches to single-symbol inspection, but this is a minor addition over the schema's existing coverage, so the baseline score of 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 states a specific resource ('exchange symbols') and two clear behaviors: listing all symbols or inspecting one exact symbol with its trading constraints. This makes its purpose distinct from sibling market-data tools like xrocket_market_candles or xrocket_market_tickers.

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

Usage Guidelines3/5

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

The description implies the two usage modes based on whether the optional `symbol` parameter is provided, but it gives no explicit guidance about when to prefer this tool over siblings such as xrocket_asset_info or xrocket_market_tickers. The usage is clear enough for a simple read tool, but alternatives are not addressed.

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

xrocket_market_tickersxRocket 24h tickersB
Read-onlyIdempotent
Inspect

Get public 24-hour ticker data, optionally for a repeated list of symbols.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds useful context such as 'public' and '24-hour', but it does not disclose behavior like what happens when symbols is omitted, response shape, or any rate considerations. 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.

Conciseness4/5

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

The description is a single front-loaded sentence with no filler, making it appropriately concise. The phrase 'optionally for a repeated list of symbols' is slightly awkward and vague, which keeps it from being a perfect example of concise clarity.

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 low parameter complexity and strong annotations, the tool is not severely under-described, but the missing explanation of the optional symbols behavior is a real gap. With many sibling market tools, a bit more context about what distinguishes tickers from snapshot or candles would make the definition more complete.

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?

Schema description coverage is 0%, so the description carries the burden of explaining parameters, but it only says 'optionally for a repeated list of symbols.' The schema provides an example symbol, but the description does not clarify the meaning of 'repeated', default behavior when no symbols are given, or how symbols affect the result.

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 verb 'Get' and the resource 'public 24-hour ticker data', making the core purpose understandable. It does not explicitly differentiate from siblings like xrocket_market_snapshot or xrocket_market_candles, but 'ticker data' is a distinct market-data concept.

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

Usage Guidelines3/5

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

The description implies use when 24-hour ticker data is needed, but it gives no explicit guidance on when to choose this tool over sibling market-data tools. No exclusions or alternatives are mentioned, so an agent must infer the appropriate context from the tool name and description.

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

xrocket_market_tradesxRocket recent tradesA
Read-onlyIdempotent
Inspect

Get recent public trades for one symbol.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesExact current xRocket symbol, for example GRAM-USDT

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already cover the safety profile (read-only, idempotent, non-destructive), so the description does not need to repeat that. The description adds 'public' and 'recent' as behavioral context but does not disclose details like result limits, pagination, or time-window boundaries.

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, front-loaded sentence with no filler. Every word contributes to identifying the operation and scope.

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?

For a simple one-parameter, read-only tool with annotations covering safety and an output schema present, the description is nearly sufficient. The only minor gap is that 'recent' is not quantified, but this is unlikely to prevent 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 schema already describes the only parameter thoroughly, including an example ('GRAM-USDT'), so schema coverage is complete. The description adds no additional parameter-level meaning beyond restating that it operates on one symbol.

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 identifies the operation ('Get recent public trades') and the scope ('for one symbol'), which is specific and actionable. It does not explicitly distinguish itself from sibling market-data tools, but the resource 'public trades' is unambiguous versus candles, orderbook, or tickers.

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

Usage Guidelines3/5

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

The description implies the tool is for retrieving recent public trade data for a single symbol, which gives reasonable context for when to use it. However, it does not mention alternatives or explicitly state when not to use it, leaving sibling differentiation to the tool names.

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

xrocket_ratesxRocket ratesB
Read-onlyIdempotent
Inspect

Get public crypto-asset rates in one fiat base currency.

ParametersJSON Schema
NameRequiredDescriptionDefault
baseYesFiat base currency, for example USD
assetsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior. The description adds modest context with 'public' (implying no auth requirement) and 'in one fiat base currency' (single-base denomination), which goes slightly beyond the annotations. 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?

A single front-loaded sentence with zero filler; every word earns its place. Appropriate size for a low-complexity public read tool whose schema and annotations carry the remaining detail.

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?

Rich annotations and the presence of an output schema lower the burden, and the schema documents both parameters. However, the description leaves unspecified what happens when the optional assets parameter is omitted, and it offers no routing clues among the market-data sibling tools.

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 50%: 'base' is well-described ('Fiat base currency, for example USD') and the 'assets' items carry a useful description ('Exact xRocket asset identifier; TON is currently TONCOIN'). The tool description reinforces that base is a fiat currency but adds nothing about the optional assets filter's semantics or default behavior when omitted.

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 names a specific action ('Get') and resource ('public crypto-asset rates'), with a scoping detail ('in one fiat base currency') that hints at its distinguishing behavior. It is clear, though it does not explicitly differentiate itself from sibling xrocket_market_tickers, which could also plausibly return rates.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus the nine sibling tools, several of which (xrocket_market_tickers, xrocket_market_snapshot, xrocket_asset_info) overlap semantically. No alternatives, exclusions, or condition-based routing are provided.

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

xrocket_trade_feesxRocket trade feesA
Read-onlyIdempotent
Inspect

Get exchange trade-fee data, optionally for repeated symbols.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior, which lowers the bar. The description adds only the optional-symbol scoping detail, but it does not clarify the default behavior when symbols are omitted or any other request constraints.

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, front-loaded sentence with no filler. It efficiently communicates the core operation and the only parameter's optional nature.

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 one optional parameter, an output schema, and safety annotations, the tool is close to complete. However, the vague phrase 'repeated symbols' and the unstated default behavior when symbols are omitted leave room for an agent to mis-scope its request.

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 description tells the agent that symbols are optional and can be repeated, which is a small addition beyond the schema. However, with schema description coverage at 0%, it does not fully compensate by explaining matching behavior, the all-symbols default, or how duplicates are handled.

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 operation as 'Get exchange trade-fee data,' naming both the action and the resource. This distinguishes it from sibling tools focused on candles, tickers, trades, or rates.

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

Usage Guidelines3/5

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

The use case is implied by naming the resource, but the description does not explicitly say when to use this tool over alternatives or what happens when no symbols are passed. There are no exclusions or alternative-tool references.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv1.0.0
    • First observedxrocket_asset_info
    • First observedxrocket_market_candles
    • First observedxrocket_market_orderbook
    • First observedxrocket_market_snapshot
    • First observedxrocket_market_symbols
    • First observedxrocket_market_tickers
    • First observedxrocket_market_trades
    • First observedxrocket_onboarding_links
    • First observedxrocket_rates
    • First observedxrocket_trade_fees

TDQS

A3.7/5.0

Scored across 10 tools

Disambiguation3/5

Most tools target distinct resources: symbols, tickers, candles, orderbook, trades, assets, fees, rates, and onboarding. The notable exception is xrocket_market_snapshot, which intentionally combines ticker/trades/fees/orderbook data into one call and creates selection ambiguity with the granular market tools.

Naming Consistency5/5

All tool names share the xrocket_ prefix and follow a consistent lowercase_snake_case resource pattern. The repeated xrocket_market_* grouping makes the public-market tools easily predictable, and the few non-market tools still follow the same naming convention.

Tool Count5/5

With 10 tools, the set is well-scoped for a public market-data and onboarding server. Each tool appears to earn its place, and the count is neither bloated nor too thin.

Completeness4/5

The surface fully covers a public exchange market-data workflow: symbols, tickers, candles, orderbook, trades, assets, rates, fees, and startup onboarding links. Private account and order-management tools are missing, but those appear out of scope for this read-only data and integration-link server.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    A portable MCP server that exposes Lighter trading to any MCP-capable agent with safety-first features like mode-based gating, two-step confirmations, and audit logging.
    1
    MIT
  • A
    license
    C
    quality
    B
    maintenance
    Safe-by-default MCP server for the official Toss Securities Open API, providing read-only market and account data with optional order operations protected by multiple safety gates.
    27
    10 npm
    2
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    A Model Context Protocol server that gives any MCP client two economic-safety tools: realizable quote and pretrade check, paid per call in USDC with no accounts.
    2
    120 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server providing x402-paid tools for tokenized stock data on EVM chains, including premium/discount, liquidity, whale activity, and a guarded trading wrapper for Robinhood Chain.
    1
    MIT