Get orderbook
get_orderbookGet the live orderbook (bids/asks) for a market, optionally truncated to a depth.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Max levels per side | |
| market | Yes | Market ticker, e.g. BTC-USD |
get_orderbookGet the live orderbook (bids/asks) for a market, optionally truncated to a depth.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Max levels per side | |
| market | Yes | Market ticker, e.g. BTC-USD |
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. Description adds 'live' and 'truncated' but no additional behavioral traits like rate limits or data freshness.
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?
Single clear sentence with no waste. Perfectly concise.
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 read-only retrieval tool with no output schema, the description is sufficient. No missing information required for agent to use correctly.
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 covers both parameters fully (100% coverage). Description only loosely echoes parameter info ('optionally truncated to a depth') without adding new meaning.
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?
Clearly states verb 'Get', resource 'live orderbook', and scope 'for a market, optionally truncated to a depth'. Distinguishes from sibling tools like get_market or get_candles.
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?
No guidance on when to use this tool versus alternatives (e.g., get_market, get_candles). Does not mention prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most tools are clearly distinct, but there is overlap among the read-heavy account tools: get_balance/get_funding_status/fund virtually duplicate each other, and get_equity/get_portfolio/get_position_risk/get_open_orders/get_positions all converge on equity and open-position data. The detailed descriptions help an agent choose, but several tools have fuzzy boundaries.
The overwhelming majority follow the expected verb_noun convention: get_*, place_*, cancel_*, close_*. Minor deviations such as batch_cancel, get_candles_multi, top_up_gas, and whoami make the pattern not perfectly uniform, but the inconsistency is small.
At 33 tools, the surface is beyond what most agents need and includes several redundant query helpers rather than genuinely distinct operations. A broad exchange can justify a large surface, but get_balance/get_funding_status, get_equity/get_portfolio/get_position_risk, and get_candles/get_candles_multi make the set feel top-heavy.
The core lifecycle is well covered: market discovery, market data, order placement/cancellation, position management, risk, funding transfers, PnL, and account status. Obvious gaps are limited to historical order lookup by order ID, a way to cancel across all markets in one call, and a few optional account-history conveniences.