xRocket Exchange MCP
xRocket Exchange MCP
日次価値上限を1つ設定するだけで、MCP対応のAIエージェントが、その上限内でxRocketのスポット注文を自律的に発注・キャンセルできるようにします。送金と出金は引き続き明示的な承認を必要とする個別の操作として扱われます。
ホステッドエンドポイントは引き続き公開マーケットデータのデモとオンボーディング経路です。アカウントの認証情報を受け取ることはなく、取引もできません。このパッケージはxRocketとは提携しておらず、xRocketからの推薦も受けていません。取引を設定するか、xRocketを開くしてください。
取引クイックスタート
xRocketにサインインし、メニュー → 設定 → 取引所設定 → APIトークン を開きます。
日次上限付きのテストネット優先MCP設定を生成します:
npx -y xrocket-mcp@0.6.0 trading-config --limit 100 --asset USD出力されたJSONをローカルのMCPクライアントに貼り付けます。
SET_YOUR_XROCKET_API_TOKEN_LOCALLYは、クライアントのローカルシークレットまたは環境設定でのみ置き換えます。クライアントに戦略を与えます。設定した日次価値または内蔵の注文回数上限に達するまで、利用可能なスポットペアで成行注文または指値注文を発注・キャンセルできます。
テストネットで検証した後のみ、npx -y xrocket-mcp@0.6.0 trading-config --limit 100 --asset USD --mainnet を使用してください。送金と出金は無効のままです。
上流のトークンには、文書化された細かなスコープではなく、アカウントに対する広範なアクセス権があります。チャット、ホステッドエンドポイント、コミット済みファイル、イシュー、ログには絶対に入れないでください。
Related MCP server: tossinvest-openapi-mcp
ホステッドマーケットデモ
接続ページを使用するか、何もインストールせず認証情報も指定せずに公開メインネットエンドポイントをコピーします:
https://xrocket-mcp-production.up.railway.app/mcp公開ツールは10個のみを公開し、アカウントトークンを読み取ったり、金融書き込みを有効にしたりすることはできません。取引を求められた場合、オンボーディングツールはユーザーを上記のローカル設定へ案内します。
ローカルクイックスタート
npx -y xrocket-mcp@0.6.0 doctor
npx -y xrocket-mcp@0.6.0 configNode.js 20以上が必要です。公開マーケットデータの読み取りは、設定なしで動作します:
XROCKET_PROFILE=public
XROCKET_ENVIRONMENT=mainnetリポジトリのマーケットプレイスから、オールインワンのCodexプラグインをインストールします:
codex plugin marketplace add nakazanie-ton/myrocket --ref main
codex plugin add xrocket-exchange@xrocket-agentsMCPクライアントの例:
{
"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"
}
}
}
}ローカルソースを開発する場合は、このディレクトリで npm ci、npm test、および npm run build を実行してください。
プロファイルと書き込みゲート
public: 合成されたxrocket_market_snapshotを含む10個の認証不要ツールを提供します。private-read: 公開のツールと、残高、アカウント全体の概要、注文、送金、出金、クォータを提供します。XROCKET_API_TOKENが存在する場合は自動で判定されます。full: 自律的な取引と明示的な送金・出金ワークフローを含む全ツールを提供します。各機能は、そのゲート自体がtrueにならない限り無効のままです。
書き込みゲートは XROCKET_ENABLE_TRADING、XROCKET_ENABLE_TRANSFERS、XROCKET_ENABLE_WITHDRAWALS で、デフォルトはすべて false です。メインネットへの書き込みには XROCKET_ALLOW_MAINNET_WRITES=true も必要です。
xrocket_agent_trade は、各注文を提出する前に一度だけ見積もって評価します。ローカルの永続台帳は、再起動を超えて設定した日次価値上限を強制し、今日の xrmcp-… 取引履歴から別のローカルプロセスが作成した利用量も復元します。日次の注文回数とアクティブ注文数のガードは内蔵されたままです。デフォルトではすべてのスポットシンボルが許可されますが、上級構成ではシンボルの許可リストも利用できます。注文結果が曖昧な場合は、上限に対して確保され、再試行されません。
送金と出金は引き続き正確に準備したインテントを保存し、その短命で一度きりの承認レシートのみを受け付けます。通常の取引構成では、両方の書き込みゲートはずっと無効のままです。
境界
Exchange API に入金アドレスエンドポイントはありません。オンボーディングはUIガイドのみです。
Exchange の送金は、ユーザー間の送金ではなく内部の
funding↔trading間の送金です。xRocket Pay は別の製品であり、含まれません。
WebSocketチャンネルは監査されていますが、0.6.0 では上限付きのRESTスナップショットを使用します。
金融上の値は10進数文字列として保持し、現在のAPIが要求する箇所では
TONCOINを使用してください。
完全のドキュメント、テストカバレッジ、セキュリティポリシー、プライバシー通知、利用条件は、プロジェクトリポジトリ にあります。
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.
Robinhood Chain MCP server: rug checks, deployer records, measured X callers. For agents and bots.
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.2MIT
- AlicenseCqualityCmaintenanceSafe-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.27229 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.295 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