xRocket Exchange MCP
This server provides read-only public xRocket market data and onboarding guidance; it cannot access accounts or place trades.
Market snapshot: resolve an exact symbol or base asset and get market rules, ticker, best bid/ask, recent trades, and fees.
Symbols: list all exchange symbols or inspect one exact symbol and its trading constraints.
24h tickers: fetch public 24-hour ticker data for up to 100 symbols.
Candles: fetch public OHLCV candlestick data for a specified ISO-8601 time window.
Order book: fetch public order-book snapshots with configurable depth and precision.
Recent trades: fetch recent public trades for a symbol.
Asset info: list public assets or inspect one asset identifier.
Rates: get crypto-asset rates in a fiat base currency.
Trade fees: get public exchange trade-fee data for selected symbols.
Onboarding: return xRocket sign-in links, local autonomous trading setup instructions, and API documentation.
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
Sign in to xRocket and open Menu → Settings → Exchange settings → API token.
Generate a testnet-first MCP configuration with a daily limit:
npx -y xrocket-mcp@0.6.0 trading-config --limit 100 --asset USDPaste the printed JSON into your local MCP client. Replace
SET_YOUR_XROCKET_API_TOKEN_LOCALLYonly in the client's local secret or environment settings.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/mcpIt 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 configNode.js 20 or newer is required. Public market reads work without configuration:
XROCKET_PROFILE=public
XROCKET_ENVIRONMENT=mainnetInstall 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-agentsGitHub Copilot CLI can install the portable plugin directly:
copilot plugin install nakazanie-ton/myrocket:plugins/xrocket-exchangeThe 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/myrocketThe 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-agentsBoth 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 composedxrocket_market_snapshot.private-read: public tools plus balances, whole-account overview, orders, transfers, withdrawals, and quotas; inferred whenXROCKET_API_TOKENis present.full: all tools, including autonomous trading plus explicit transfer/withdrawal workflows; every capability remains disabled unless its own gate istrue.
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
funding↔trading, 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
TONCOINwhere the current API requires it.
Full documentation, coverage, security policy, privacy notice, and terms live in the project repository.
Available Tools
10 toolsxrocket_asset_infoxRocket assetsBRead-onlyIdempotentInspect
List public assets or inspect one exact asset identifier.
| Name | Required | Description | Default |
|---|---|---|---|
| asset | No | Exact xRocket asset identifier; TON is currently TONCOIN |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 candlesARead-onlyIdempotentInspect
Get public OHLCV candles for an exact ISO-8601 time window.
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | ||
| endAt | Yes | ||
| symbol | Yes | Exact current xRocket symbol, for example GRAM-USDT | |
| startAt | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 bookBRead-onlyIdempotentInspect
Get a public order-book snapshot. Precision must be valid for the selected pair.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | ||
| symbol | Yes | Exact current xRocket symbol, for example GRAM-USDT | |
| precision | No | Exact positive decimal string; never use a JSON number |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 snapshotARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | ||
| market | Yes | Exact symbol such as GRAM-USDT, or a base asset such as GRAM | |
| precision | No | Exact positive decimal string; never use a JSON number |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 symbolsARead-onlyIdempotentInspect
List all exchange symbols or inspect one exact symbol and its trading constraints.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No | Exact current xRocket symbol, for example GRAM-USDT |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 tickersBRead-onlyIdempotentInspect
Get public 24-hour ticker data, optionally for a repeated list of symbols.
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 tradesARead-onlyIdempotentInspect
Get recent public trades for one symbol.
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | Exact current xRocket symbol, for example GRAM-USDT |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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_onboarding_linksSet up xRocket tradingARead-onlyIdempotentInspect
Return xRocket sign-in links, the local autonomous trading setup, and canonical API documentation.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds useful behavioral context by specifying exactly what the tool returns (sign-in links, setup, docs), which goes 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that wastes no words and immediately states the resource and deliverables. Every phrase contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero parameters, a read-only annotation set, and an output schema present, the description is largely complete for invoking the tool correctly. The vague phrase 'local autonomous trading setup' leaves minor room for interpretation, but the canonical API docs reference mitigates this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters and 100% schema description coverage, so the description does not need to explain parameter semantics. The baseline for a no-parameter tool is 4, and nothing here detracts from that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Return') and names three concrete deliverables (sign-in links, local autonomous trading setup, canonical API documentation), which clearly distinguishes it from the market-data sibling tools. 'Local autonomous trading setup' is slightly vague, so it does not quite earn a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. The title 'Set up xRocket trading' and the sibling list make the onboarding-vs-market-data intent inferable, but the guidance is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
xrocket_ratesxRocket ratesBRead-onlyIdempotentInspect
Get public crypto-asset rates in one fiat base currency.
| Name | Required | Description | Default |
|---|---|---|---|
| base | Yes | Fiat base currency, for example USD | |
| assets | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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 feesARead-onlyIdempotentInspect
Get exchange trade-fee data, optionally for repeated symbols.
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
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.
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.
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.
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.
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.
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.
10 tool updates
v1.0.0- First observed
xrocket_asset_info - First observed
xrocket_market_candles - First observed
xrocket_market_orderbook - First observed
xrocket_market_snapshot - First observed
xrocket_market_symbols - First observed
xrocket_market_tickers - First observed
xrocket_market_trades - First observed
xrocket_onboarding_links - First observed
xrocket_rates - First observed
xrocket_trade_fees
TDQS
Scored across 10 tools
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.
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.
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.
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
Related MCP Connectors
Read-only MCP server for Robinhood Chain token discovery, research, and due diligence via GMGN.
Read-only MCP server for The Quiet Protocol's engines, benchmarks, proof, and business data.
Crypto market intelligence, token rug-checks, and wallet verification in one MCP server.
Live prices, perps, prediction markets and a paper trading desk over one MCP.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceA 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.1MIT
- AlicenseCqualityBmaintenanceSafe-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.2710 npm2MIT
- AlicenseAqualityBmaintenanceA 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.2120 npmMIT
- AlicenseNot gradedqualityBmaintenanceMCP 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.1MIT