Skip to main content
Glama
freeeverett

deribit-mcp

by freeeverett

deribit-mcp

Bring Deribit into your AI assistant. Works with Claude Code, Codex and any other MCP client — one command to install, and your assistant can read markets, inspect your account and manage orders.

claude mcp add deribit -- npx -y deribit-mcp

Once it is installed you can ask things like "what does the BTC option chain look like right now?", "show me the implied volatility on the March calls" or "how much free margin is left in my account?".

Two safety defaults: it connects to testnet by default, and trading is off by default. Placing a real order requires you to turn both on explicitly.


Installation

Claude Code

For market data only, no configuration is needed:

claude mcp add deribit -- npx -y deribit-mcp

To query your account and orders, add API credentials and switch to mainnet:

claude mcp add deribit \
  --env DERIBIT_ENV=prod \
  --env DERIBIT_CLIENT_ID=your_client_id \
  --env DERIBIT_CLIENT_SECRET=your_client_secret \
  -- npx -y deribit-mcp

Codex

Edit ~/.codex/config.toml (or the project's .codex/config.toml):

[mcp_servers.deribit]
command = "npx"
args = ["-y", "deribit-mcp"]

[mcp_servers.deribit.env]
DERIBIT_ENV = "prod"
DERIBIT_CLIENT_ID = "your_client_id"
DERIBIT_CLIENT_SECRET = "your_client_secret"

Other MCP clients

Any client that speaks stdio works. The command is npx -y deribit-mcp, and configuration is passed through environment variables.

Running from source (optional)

To pin a specific revision, or if you have modified the code yourself, you can point the client straight at the sources and skip having to remember to rebuild after every change:

git clone https://github.com/freeeverett/deribit-mcp.git
cd deribit-mcp && npm install
[mcp_servers.deribit]
command = "npx"
args = ["tsx", "/absolute/path/deribit-mcp/src/index.ts"]

The cost is roughly twice the startup time (about 160ms vs 77ms) and a local dependency install. For everyday use, npx -y deribit-mcp is still the recommendation.

Getting API credentials

Create a key under Deribit account settings → API.

What you want to do

Permission the key needs

Read public market data only

no key required

Query account, positions, orders and fills

trade:read

Place, edit, cancel and close

trade:read_write

Prefer least privilege: if you only want the assistant to analyse things, trade:read is enough, and then no order can be placed even if the trading switch is turned on by mistake.


Related MCP server: Crypto Options Desk MCP

Configuration

Environment variable

Default

Meaning

DERIBIT_ENV

test

test for testnet, prod for mainnet

DERIBIT_CLIENT_ID

—

API key. Without it, only the public market data tools are available

DERIBIT_CLIENT_SECRET

—

API secret; must be set together with DERIBIT_CLIENT_ID

DERIBIT_ENABLE_TRADING

false

Set to true to expose place / edit / cancel / close

DERIBIT_API_BASE

—

Custom endpoint; rarely needed

Testnet is a separate world: accounts and API keys on test.deribit.com do not work on mainnet at all, so you need to register separately at test.deribit.com. Testnet hands out free test coins, which makes it the right place to rehearse a workflow before switching to mainnet.

Full testnet integration suite

Create a git-ignored .env.test in the project root containing testnet API credentials only:

DERIBIT_CLIENT_ID=your_testnet_client_id
DERIBIT_CLIENT_SECRET=your_testnet_client_secret

Then run:

npm run test:all

That entry point reads .env.test natively and forces the connection to testnet (it will not adopt a mainnet or custom endpoint from the file). It drives all 39 tools through a real stdio MCP client and requires a key with trade:read_write: it creates, edits and cancels a limit order carrying a unique test label, briefly opens and closes a market position, and creates a test combo. On exit the script cancels anything left under that label, and the command fails if that cleanup fails. npm test runs offline regressions for request retries and order filters, followed by the public-endpoint smoke tests against testnet; it needs no credentials.


About the trading tools

The order-placing tools are not exposed by default — without DERIBIT_ENABLE_TRADING=true your assistant cannot even see them, so it cannot trip over them.

Once enabled you get: place order, edit order, cancel order, close position, create combo instrument.

Please understand:

  • These operations produce real fills on your real account, with real money

  • Rehearse on testnet first, then consider mainnet

  • On mainnet with trading enabled the server prints an explicit warning at startup, and the assistant is instructed that it must confirm with you before executing

  • But the final gate is you: when an order request appears, read it carefully before approving

If you only want analysis and would rather the assistant never touched your orders, leave the switch off — market data and account queries are entirely unaffected.


What it can do

39 tools in total.

Market data (18, no credentials needed)

Instrument and currency listings, contract specifications, expirations, option chains (open interest / implied volatility / bid-ask), live quotes and order book depth, option Greeks, historical candles, mark price history, index spot and history, historical realised volatility, the DVOL volatility index, perpetual funding rates, market-wide trades, exchange volumes, yield-bearing token APR, delivery prices, settlement and bankruptcy records, combo instruments, platform status and exchange announcements.

Account and orders (16, credentials required)

Account equity and margin, all-currency overview and account locks, position details, subaccount listing, portfolio margin simulation, transaction log, settlement and delivery records, deposit/withdrawal/transfer history, open orders, order state, order history, trigger order history, fill details, per-order fills, and order margin estimation.

Trading (5, credentials required and explicitly enabled)

Place order (limit / market / stop / take-profit / trailing stop / iceberg / advanced option pricing), edit order, cancel order, close position, create multi-leg combo instrument.


API coverage

How this server maps onto the official Deribit API, by the categories the official specification uses. It covers 81 of the 172 REST endpoints.

Category

Status

Market Data

fully implemented (30/30)

Combo Books

fully implemented (5/5)

Trading

implemented except market-maker features (29/37) — no MMP configuration/status/reset, no mass_quote / cancel_quotes, and move_positions is deliberately not exposed

Supporting

implemented — public/status and public/get_time; public/test is skipped as redundant

Authentication

public/auth only — exchange_token and fork_token are not implemented

Account Management

read-only queries only (11/41) — summaries, positions, subaccount listing, transaction log, portfolio simulation. No subaccount or API key management

Wallet

read-only history only (3/21) — transfers, deposits, withdrawals. Executing a deposit, withdrawal or transfer is not implemented

Block Trade

not implemented

Block RFQ

not implemented

Liquidity Support Program (lsp)

not implemented

Session Management

not implemented

A further 10 endpoints are WebSocket-only (subscriptions and session management) and are out of scope for a stdio JSON-RPC server.

The endpoint-level breakdown, including which tool calls which method, lives in docs/API-COVERAGE.md.


Reading the version number

A version looks like 2.20260915.0:

  • 2 — the Deribit API major version (v2)

  • 20260915 — the Deribit documentation release this is aligned to (2026-09-15)

  • 0 — the nth revision against that documentation release

In other words, the middle segment tells you which day's Deribit documentation a release tracks. When Deribit changes the API, this project follows by pushing that middle segment to the new date.


FAQ

The assistant says it cannot find the Deribit tools. Check the client's MCP log. At startup the server writes the current environment, credential status and the number of registered tools to stderr, which usually makes it obvious whether the configuration took effect.

I only see the market data tools; the account tools are missing. The credentials were not picked up. Confirm that both DERIBIT_CLIENT_ID and DERIBIT_CLIENT_SECRET are set — with only one of them the server fails to start and says which one is missing.

I cannot see the order-placing tools. They need DERIBIT_ENABLE_TRADING=true plus configured credentials. That default is deliberate.

I get invalid_credentials. The key or secret is wrong, or you are using a testnet key against mainnet (or vice versa). Accounts are not shared between the two.

I get an error about an insufficient scope. The API key lacks trade:read_write. The server raises this before placing an order rather than letting you believe one went out. Grant the permission in the Deribit dashboard, or turn the trading switch off.

I changed the configuration and nothing happened. The MCP server is launched by the client at startup, so restart the client after changing environment variables.


License

MIT

Available Tools

18 tools
deribit_get_announcementsDeribit AnnouncementsA
Read-onlyIdempotent

查询交易所公告,包括系统升级、维护窗口、新合约上线和规则变更。body 字段是 HTML。排查异常行情或下单失败前值得先看一眼这里。

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo返回条数,最大 50
start_timestampNo只返回该毫秒时间戳之前的公告,用于翻页;省略则从当前时间往前取

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnly=true, openWorld=true, idempotent=true, destructive=false, so the safety profile is covered. The description adds useful behavioral context by saying the 'body' field is HTML and that announcements may explain market/order anomalies. However, response structure and sort/return behavior remain implicit, so there is still a moderate gap.

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 three very short sentences, each adding independent value: purpose/content, HTML format warning, and when-to-use guidance. There is no repetition of schema or annotation information.

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 read-only announcements-list tool with two optional parameters and full schema coverage, this is mostly complete: it covers content scope, the HTML body caveat, and a real-world trigger scenario. Since there is no output schema, slightly more detail about returned announcement fields would push it to perfect completeness.

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%: 'count' documents default/max, and 'start_timestamp' documents pagination and inclusive-exclusive behavior. The description itself adds no parameter-specific detail, so it does not exceed the schema. Baseline 3 applies.

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

Purpose5/5

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

The description uses a specific verb ('查询') and clearly names the resource (交易所公告), then enumerates concrete content categories: system upgrades, maintenance windows, new contract launch, and rule changes. This distinguishes it from the sibling market-data tools, all of which return prices, volumes, or instrument data rather than announcements.

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

Usage Guidelines4/5

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

The description gives an explicit usage context: check announcements before troubleshooting abnormal market quotes or order placement failures. It does not name an alternative tool or state when not to use it, but no sibling tool is a direct substitute for announcements, and the guidance is sufficiently actionable.

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

deribit_get_apr_historyDeribit APR HistoryA
Read-onlyIdempotent

查询生息代币的历史年化收益率(APR),按自然日返回。仅支持 usde、steth、usdc、build 四个币种,其它币种没有这项数据。

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo返回天数,默认 365,最大 365
beforeNo翻页用,返回该 epoch day 之前的数据
currencyYes生息代币,取值为小写

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so safety is covered. The description adds behavioral context: results are per natural day and unsupported currencies will not have data. This goes beyond the annotation-provided safety profile.

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 concise sentences, front-loaded with the main action and target. Every clause adds value: purpose, granularity, supported currencies, and the negative constraint. No fluff.

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 read-only tool with full schema documentation and no output schema, the description covers the core purpose, key constraint, and data granularity. It is slightly thin on what the response looks like, but given the simplicity and good annotations, it is sufficiently complete.

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 input schema fully documents all three parameters with descriptions and enum values, making schema coverage 100%. The description restates the currency enum but adds no new parameter-level semantics beyond what the schema already provides.

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

Purpose5/5

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

The description clearly states the tool queries historical APR for interest-bearing tokens, returned by natural day. It also specifies the exact supported currencies (usde, steth, usdc, build), which differentiates it from sibling market-data tools like funding or volatility.

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

Usage Guidelines4/5

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

The description provides clear context: use this for APR history and only for the four listed currencies. It explicitly warns that other currencies lack this data, which serves as a when-not-to-use signal, though it does not name alternatives.

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

deribit_get_combosDeribit CombosA
Read-onlyIdempotent

查询交易所已有的组合合约。提供 combo_id 时返回单个组合详情;ids_only=true 时只返回该币种的组合 id 列表(载荷远小于完整列表);否则按 currency 返回完整组合列表。

ParametersJSON Schema
NameRequiredDescriptionDefault
stateNo
combo_idNo组合标识,例如 BTC-STRG-28JUN24-65000
currencyNo结算币种,省略 combo_id 时必填
ids_onlyNo为 true 时只返回组合 id 列表,不返回每个组合的腿和状态

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, so the bar is lower. Description adds behavioral details: payload reduction with ids_only, and requirement of currency when combo_id omitted. 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?

Single concise sentence, logically structured with semicolons, front-loaded with purpose, and zero wasted words.

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 no output schema and 4 optional params, the description covers all major usage scenarios and even notes payload size differences. State param is not mentioned, but its enum is self-explanatory in schema. A brief note on state usage would make it fully complete.

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

Parameters4/5

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

Schema covers 75% of parameters (state lacks description). Description explains the interplay between combo_id, currency, and ids_only, adding meaning beyond the schema's individual field descriptions. However, state remains undocumented in both.

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

Purpose5/5

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

Description clearly states the tool queries existing combo contracts and specifies three distinct modes (with combo_id, ids_only, and by currency). The verb '查询' (query) plus the specific resource (组合合约) distinguishes it from sibling market data tools.

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?

Provides clear context for when to use each parameter combination (combo_id for single detail, ids_only for lightweight list, else full list). However, it does not explicitly mention alternatives or exclusion criteria relative to siblings.

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

deribit_get_delivery_pricesDeribit Delivery PricesA
Read-onlyIdempotent

查询指定指数的历史交割价格,用于核对到期合约的结算。

ParametersJSON Schema
NameRequiredDescriptionDefault
countNo返回条数,最大 1000
offsetNo
index_nameYes指数名,例如 btc_usd、eth_usdc

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds that the data is historical and used for settlement verification, but does not elaborate on pagination, result composition, or any edge cases. This adds minimal value beyond annotations, warranting a baseline score.

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 with no filler. It states the purpose and intended use efficiently, making it easy for an agent to parse quickly.

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 simple read tool with 3 params and no output schema, the description is adequate but has gaps. It does not explain pagination behavior (offset/count), what happens when no data exists, or how it differs from settlements. The annotations and schema cover the basics, so a 3 is appropriate.

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 does not mention parameters at all. Schema coverage is 67% (index_name and count have descriptions, offset does not). With high schema coverage, the baseline is 3; the description adds no additional meaning so it stays at that baseline.

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

Purpose5/5

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

The description clearly states the tool queries historical delivery prices for a specified index, which is a specific verb+resource+scope. It distinguishes from siblings like get_index_price (current price) and get_public_settlements (settlement events) by focusing on delivery prices specifically.

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 mentions a use case ('to verify settlement of expiring contracts') but does not explicitly state when to prefer this tool over alternatives like settlements or mark price history. It provides context but lacks exclusions or comparative guidance.

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

deribit_get_expirationsDeribit ExpirationsA
Read-onlyIdempotent

列出期货或期权的可交易到期日。时间戳单位为毫秒;currency 和 kind 可使用 any 表示不过滤。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindYes
currencyYes结算币种或分组,例如 BTC、ETH、USDC、any
currency_pairNo指数名,例如 btc_usd、eth_usdc

TDQS

A4/5.0
Behavior4/5

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

The annotations already mark the tool as read-only and non-destructive, so the description does not need to repeat that. It adds useful behavioral details such as timestamps being in milliseconds and the ability to use 'any' for filtering, which are not evident from the annotations alone.

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

Conciseness5/5

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

The description is concise, consisting of two short sentences that convey all necessary information without redundancy. It is well-structured and front-loaded with the main purpose.

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 description adequately covers the tool's purpose and key behavioral aspects. Given that no output schema is provided, it is not required to explain return values; however, it could mention that it returns a list of expiration timestamps, but this is implied by the verb '列出'. Overall, it is sufficiently complete for a simple listing tool.

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

Parameters4/5

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

The schema already provides parameter types and enums, but the description adds semantic meaning: it explains that 'currency' and 'kind' can be set to 'any' to indicate no filtering. This clarifies the intended interpretation of these parameters beyond the schema definition.

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

Purpose5/5

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

The description clearly states the tool's function: listing tradable expiration dates for futures or options. It distinguishes from sibling tools like get_trade_volumes or get_instruments_info by specifying the specific data returned. The verb '列出' and resource '可交易到期日' are clear.

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 does not provide any guidance on when to use this tool versus the alternative get_* tools. It only states what it does without situational context or comparative advantages. No usage recommendations are given.

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

deribit_get_fundingDeribit Perpetual FundingA
Read-onlyIdempotent

查询永续合约在指定时间范围内的累计资金费率和资金费历史;给 length 时额外返回该长度的资金费走势图数据。时间戳单位为毫秒。

ParametersJSON Schema
NameRequiredDescriptionDefault
lengthNo资金费走势图长度。该接口按固定长度取最近数据,不受上面的时间范围影响
end_timestampYes毫秒 UNIX 时间戳
instrument_nameYes永续合约名,例如 BTC-PERPETUAL
start_timestampYes毫秒 UNIX 时间戳

TDQS

A3.9/5.0
Behavior4/5

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

Annotations declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint=false, which already convey non-destructive behavior. The description adds that the length parameter overrides the time range ('不受上面的时间范围影响'), which is a behavioral nuance not obvious from the schema. It also mentions the 'length' chart data addition, adding beyond annotations. No contradiction observed.

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 compact sentence that conveys core purpose and the length parameter's behavior. No filler, no redundancy with schema descriptions. Front-loaded with the main query objective, then the additional feature. Perfectly concise for the information provided.

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 4 parameters, 100% schema coverage, and no output schema. Description explains the main function and the special behavior of 'length'. For a read-only query tool with clear parameter definitions, this is adequate. However, it doesn't mention what the output looks like (no output schema) or potential edge cases like empty results, but the openWorldHint suggests flexibility in results. Given the complexity, it's quite complete.

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

Parameters4/5

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

Schema already describes all parameters with 100% coverage, so baseline is 3. The description adds value by explicitly stating that 'length' returns additional chart data and that it's independent of the time range, which is not clear from the enum alone. The time unit (milliseconds) is reiterated in the description, reinforcing schema hints. This elevates beyond baseline.

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?

Description explicitly states the tool queries cumulative funding rates and funding rate history for perpetual contracts within a specified time range, and optionally returns chart data for a given length. It clearly identifies the resource (Deribit perpetual funding) and the action (query), but doesn't explicitly contrast with sibling tools like market quotes or trade volumes, though the funding-specific focus is unambiguous.

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 usage for fetching funding data, but provides no explicit when-to-use or when-not-to-use guidance, nor alternatives. The sibling tools are mostly price/history related, so an agent might infer this is for funding-specific needs, but the description doesn't explicitly exclude other scenarios or mention fallback options.

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

deribit_get_historical_candlesDeribit Historical CandlesB
Read-onlyIdempotent

查询指定合约的历史 K 线和成交量。时间戳单位为毫秒。

ParametersJSON Schema
NameRequiredDescriptionDefault
resolutionYesK 线周期,数字为分钟数,1D 为日线
end_timestampYes毫秒 UNIX 时间戳
instrument_nameYes合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C
start_timestampYes毫秒 UNIX 时间戳

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds that timestamps are in milliseconds, but this is also present in the schema parameter descriptions. No other behaviors (e.g., response format, limits) are disclosed, but there is no contradiction with annotations.

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

Conciseness5/5

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

Description is a single concise sentence that states the primary action (query historical K-line and volume) followed by a note on timestamp units. No filler, front-loaded with purpose, and efficient.

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

Completeness2/5

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

No output schema exists, so the description should explain the return format. It only mentions 'K线和成交量' without details on OHLCV structure, volume units, limits, or pagination. For a tool with 4 required parameters and no output schema, this is insufficient.

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

Parameters3/5

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

Schema coverage is 100% with detailed descriptions for all four parameters. The tool description provides no additional parameter meaning beyond reiterating 'specified contract' and timestamp units, both already in the schema. Baseline of 3 applies due to high schema coverage.

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?

Description clearly states the tool queries historical K-line and volume for a specified contract, which distinguishes it from siblings like mark_price_history or historical_volatility. However, it does not explicitly name alternatives or provide differentiation beyond the resource and type of data.

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?

No usage context is provided. The description only states the function without indicating when to choose this over similar tools like deribit_get_mark_price_history or deribit_get_historical_volatility, nor does it mention any exclusions or alternative references.

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

deribit_get_historical_volatilityDeribit Historical VolatilityA
Read-onlyIdempotent

查询指定币种的历史已实现波动率序列,单位为年化百分比。

ParametersJSON Schema
NameRequiredDescriptionDefault
currencyYes结算币种,例如 BTC、ETH、USDC、USDT、EURR

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds the specific data type (historical realized volatility series) and unit, which is useful context beyond the schema. It does not contradict 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, direct sentence that is front-loaded and contains no superfluous words. Ideal in length for the tool's simplicity.

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?

The description covers the core functionality and unit but omits potential details like time range, response format, or default behavior. Given no output schema, it could be more informative, though it is adequate for a basic one-parameter tool.

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

Parameters3/5

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

Schema coverage is 100%, and the parameter 'currency' is well described with examples. The description only reiterates 'specified currency' without adding new meaning, so it contributes no additional value beyond the schema.

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 queries historical realized volatility series for a specified currency, with unit annualized percentage. It distinguishes from sibling tools like deribit_get_volatility_index by explicitly mentioning 'realized volatility' and 'historical', though not naming alternatives.

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?

No guidance on when to use this tool versus alternatives (e.g., volatility index, historical candles). It simply states the action without providing context on scenarios or exclusions.

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

deribit_get_index_priceDeribit Index PriceA
Read-onlyIdempotent

查询指定指数的当前价格;给 range 时同时返回该区间的指数价格历史;省略 index_name 时返回可用指数名称。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo过滤 supportedIndexNames,仅在省略 index_name 时生效
rangeNo指数价格历史区间,仅在指定 index_name 时生效
index_nameNo指数名,例如 btc_usd、eth_usdc

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already indicate readOnly, idempotent, and non-destructive behavior; the description adds non-obvious behaviors beyond annotations: omitted index_name returns available names, and range triggers simultaneous history return. 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 compact Chinese sentence conveys all key behaviors with semicolon-separated conditions; no filler or redundancy.

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

Completeness5/5

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

For a 3-optional-parameter price/getter tool with no output schema and good annotations, the description covers all invocation modes and edge cases (omitted index_name, range with index_name). It is sufficient for an agent to select and call correctly.

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

Parameters4/5

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

Schema coverage is 100% with detailed param descriptions and enums; the description adds conditional meaning by linking range to history and omitted index_name to list output. This goes beyond the baseline schema documentation.

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 uses a specific verb (查询/query) and resource (index price), and clearly distinguishes three behaviors: current price for a named index, history when range is provided, and index-name listing when index_name is omitted. This separates it from sibling market-data tools.

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?

It explicitly describes conditional usage: provide index_name for current price, add range for history, or omit index_name to list available indices. It does not name alternatives or say when not to use it, but the context is clear.

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

deribit_get_instruments_infoDeribit Instruments InfoA
Read-onlyIdempotent

查询 Deribit 支持的币种和可交易合约。省略全部参数时仅返回币种;给 currency 返回该币种的合约列表;给 instrument_name 返回单个合约的详细规格(含 tick size、合约乘数、手续费率、到期时间和 instrument id)。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo
currencyNo结算币种,例如 BTC、ETH、USDC、USDT、EURR
instrument_nameNo合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C。与 currency/kind 互斥

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructiveHint. The description adds valuable parameter-specific behavior, such as the detailed fields returned for instrument_name (tick size, multiplier, fee rates, expiration, instrument id), which beyond 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?

The description is one concise sentence in Chinese, front-loaded with the main purpose, followed by logical conditional clauses. Every phrase earns its place, with no fluff or redundancy.

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?

The description covers the three primary usage modes well, but it omits behavior for the 'kind' parameter and combinations like currency+kind. With no output schema, the return format for currency and list cases is not fully specified, leaving some ambiguity for an agent.

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

Parameters4/5

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

The description adds semantic relationships beyond the schema: it explains that no parameters yields currencies, currency alone yields a list, and instrument_name yields detailed specs. However, the 'kind' parameter is not mentioned at all, leaving its purpose unclear despite the enum-only schema definition, so it is not fully comprehensive.

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

Purpose5/5

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

The description clearly states it queries Deribit supported currencies and tradable contracts ('查询 Deribit 支持的币种和可交易合约'), and differentiates itself from siblings by specifying three parameter-dependent response modes. The verb '查询' plus resource scope makes the purpose unambiguous.

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

Usage Guidelines4/5

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

The description provides explicit parameter-usage context: omit all parameters to get currencies, pass currency to get the contract list, and pass instrument_name to get detailed specs. It does not mention alternatives or when to prefer this tool over siblings, but the usage context is clear.

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

deribit_get_market_quoteDeribit Market QuoteA
Read-onlyIdempotent

查询指定合约的实时行情、盘口深度、隐含波动率和期权 Greeks。instrument_name 与 instrument_id 二选一,用 id 查询时只返回盘口。

ParametersJSON Schema
NameRequiredDescriptionDefault
depthNo盘口档位数,省略时由 Deribit 返回默认深度
instrument_idNo合约数字 id,可从 deribit_get_instruments_info 的 instruments 里取得
instrument_nameNo合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive behavior. The description adds valuable behavioral nuance by stating that querying with instrument_id returns only order book data, which is not visible in the schema. This appropriately extends beyond structured fields without contradicting them.

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

Conciseness5/5

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

The description is a single dense sentence that covers the purpose, key parameter relationship, and an important behavioral exception. There is no filler, and the most important information appears first.

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 quote tool with no output schema, the description is mostly complete. It could slightly improve by noting whether IV/Greeks only apply to options or by naming the default depth in words, but the provided context is already sufficient for correct invocation.

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

Parameters4/5

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

Schema coverage is 100%, so the schema already describes depth, instrument_id, and instrument_name. The description adds critical semantic value by explaining that instrument_name and instrument_id are alternatives and that id changes the returned data scope.

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

Purpose5/5

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

The description clearly states the tool queries real-time market quotes, order book depth, implied volatility, and option Greeks for a specified contract. This specific verb-object structure distinguishes it from sibling tools like historical candles, trade volumes, or mark price history.

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?

It gives clear usage context: instrument_name and instrument_id are alternatives, with a distinct behavioral consequence when using id. It does not explicitly name sibling tools or provide exclusions, but the domain of real-time quote/order book/Greeks is sufficiently clear.

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

deribit_get_mark_price_historyDeribit Mark Price HistoryA
Read-onlyIdempotent

查询指定合约的历史标记价格序列,返回 [时间戳, 标记价] 数组对。时间戳单位为毫秒。注意:Deribit 只对参与波动率指数计算的那部分期权保留标记价格历史,期货和永续会返回空数组,空结果属于正常情况而非故障。

ParametersJSON Schema
NameRequiredDescriptionDefault
end_timestampYes毫秒 UNIX 时间戳
instrument_nameYes合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C
start_timestampYes毫秒 UNIX 时间戳

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already establish read-only, idempotent, non-destructive behavior. The description adds crucial expected behavior: mark price history is only retained for options involved in volatility index calculation, and empty results for futures/perpetuals are normal. This disclosure prevents misinterpretation of empty arrays as errors, which is highly valuable beyond the annotations.

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

Conciseness5/5

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

The description is two sentences: the first states the action and return format, the second provides a critical caveat. No redundant information, and the important behavioral note is included without extra verbosity.

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

Completeness5/5

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

For a simple 3-parameter read-only history tool, the description covers what it returns, the units, and the unusual empty-result case. Annotations cover safety, and the schema covers parameters fully, so nothing critical is missing for an agent to use the tool correctly.

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

Parameters3/5

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

Schema coverage is 100% with all parameters documented (instrument_name with examples, timestamps with units). The description only confirms the millisecond unit for timestamps, which is already present in the schema. Thus, the description adds little beyond the structured schema, so a baseline score of 3 is appropriate.

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

Purpose5/5

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

The description uses a specific verb ('query') and specifies the resource ('historical mark price series for a contract') plus the exact return format ([timestamp, mark price] pairs). The note about futures/perpetuals returning empty arrays distinguishes it from similar market data tools.

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

Usage Guidelines4/5

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

The description clearly notes that futures and perpetuals will return empty arrays, which implies this tool is intended for options that participate in volatility index calculation. While it doesn't explicitly name alternative tools when futures/perpetuals are queried, the behavior warning provides enough context for an agent to decide when this tool is appropriate.

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

deribit_get_option_chainDeribit Option ChainA
Read-onlyIdempotent

查询合约摘要,包括持仓量、隐含波动率、成交量和买卖价。给 currency 返回整条期权链或该币种其它类型的合约摘要;给 instrument_name 只返回单个合约的摘要。两者必须二选一。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo仅按 currency 查询时生效,默认 option
currencyNo结算币种,例如 BTC、ETH、USDC、USDT、EURR
instrument_nameNo合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is covered. The description adds what fields are returned and explains the two operational modes, which is valuable context beyond the annotations. It does not mention rate limits or pagination, but that is not essential given the read-only nature.

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 two sentences, front-loaded with the core function and then the usage modes. Every sentence carries essential information without redundancy. It is efficiently structured for quick agent comprehension.

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 read-only query tool with 3 documented parameters and no output schema, the description adequately explains the two possible queries and the key returned fields. It lacks details on output formatting or potential large-response limits, but given the tool's simplicity and strong annotations, it is sufficiently complete.

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

Parameters4/5

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

Schema coverage is 100% with descriptions for all parameters, but the description adds the key mutual-exclusivity constraint and clarifies that kind only applies in currency mode. This goes beyond the schema's static property definitions, making the semantics clearer for correct invocation.

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

Purpose5/5

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

The description clearly states the tool queries contract summaries including open interest, implied volatility, volume, and bid/ask prices. It also distinguishes two modes (by currency for a full chain or other contract types, or by instrument_name for a single contract), which sets it apart from siblings like get_market_quote or get_instruments_info.

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

Usage Guidelines4/5

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

The description explicitly states mutual exclusivity between currency and instrument_name, and that kind only applies when using currency. This gives clear context on when each parameter is appropriate, but it does not explicitly name alternative tools for similar purposes, so a small deduction.

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

deribit_get_public_settlementsDeribit Public SettlementsA
Read-onlyIdempotent

查询全市场的结算、交割和穿仓事件,不含个人持仓损益。currency 与 instrument_name 必须二选一。个人的期权交割和结算结果请用 deribit_get_settlement_history。

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo
countNo返回条数,最大 1000
currencyNo结算币种,例如 BTC、ETH、USDC、USDT、EURR
continuationNo翻页游标,取自上一次响应的 continuation
instrument_nameNo合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C
search_start_timestampNo毫秒 UNIX 时间戳

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds useful context: the tool covers market-wide events only, not personal P&L, and clarifies the mutual exclusivity constraint. This goes beyond the annotations without contradicting them.

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

Conciseness5/5

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

Three sentences, each earning its place: purpose with exclusions, a mutual-exclusivity constraint, and a pointer to the alternative tool. No redundancy or fluff.

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 description is concise but covers the core purpose, a key input constraint, and the alternative for personal data. With 6 parameters and no output schema, a bit more detail on return structure could be helpful, but the annotations and schema cover important aspects. Overall adequate for this market-data tool.

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

Parameters4/5

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

Schema coverage is high (83%), so the schema already documents most parameters. The description adds the critical semantic detail that currency and instrument_name must be mutually exclusive and one is required, which is not expressed in the schema. This is valuable added meaning.

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

Purpose5/5

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

The description clearly states the tool queries market-wide settlement, delivery, and bankruptcy events, explicitly excluding personal position P&L. This distinguishes it from the sibling tool deribit_get_settlement_history, which handles personal results. The verb '查询' (query) is specific.

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

Usage Guidelines5/5

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

Explicitly states that currency and instrument_name are mutually exclusive and one must be provided. It also provides a clear alternative for personal settlement/delivery results: deribit_get_settlement_history. This is strong usage guidance.

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

deribit_get_public_tradesDeribit Public TradesA
Read-onlyIdempotent

查询全市场公开成交,不包含个人成交。currency 与 instrument_name 必须二选一。给时间戳会走官方的时间窗口专用端点,给 start_seq/end_seq 则按成交序号翻页,两种过滤方式不能混用。

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNo仅按 currency 查询时生效
countNo返回条数,最大 1000
end_seqNo结束成交序号,只能与时间戳二选一
sortingNo
currencyNo结算币种,例如 BTC、ETH、USDC、USDT、EURR
start_seqNo起始成交序号,只能与时间戳二选一
end_timestampNo毫秒 UNIX 时间戳
instrument_nameNo合约名,例如 BTC-PERPETUAL、BTC-27JUN25-100000-C
start_timestampNo毫秒 UNIX 时间戳

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnly, openWorld, idempotent, non-destructive), the description discloses meaningful behavior: this endpoint only returns public trades (not personal), timestamp queries route to a dedicated time-window endpoint, and sequence parameters enable sequence-based pagination. These are non-obvious traits not present in structured fields.

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 three short sentences, front-loaded with the primary purpose, and every sentence adds unique guidance. No redundancy or unnecessary detail.

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

Completeness5/5

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

For a 9-parameter tool with no required fields and no output schema, the description covers the essential constraints (public-only, parameter mutual exclusions, endpoint selection). The remaining parameters are well-documented in the schema, and annotations cover safety. This is a complete, self-sufficient description.

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

Parameters4/5

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

Schema coverage is high (89%), so baseline is 3. The description adds value by stating the mandatory currency/instrument_name choice and the exclusivity between timestamp and sequence parameters, which the schema does not enforce. It clarifies endpoint behavior per parameter group beyond the individual descriptions.

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

Purpose5/5

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

The description clearly states the tool queries all-market public trades and explicitly excludes personal trades, giving a specific verb + resource + scope. This distinguishes it from sibling tools like trade volumes or quotes.

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

Usage Guidelines4/5

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

The description provides clear usage context: currency and instrument_name are mutually exclusive, and timestamp-based vs sequence-based filtering are separate modes that cannot be mixed. It does not explicitly name alternatives among siblings, but the parameter guidance is strong.

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

deribit_get_statusDeribit Platform StatusA
Read-onlyIdempotent

查询 Deribit 平台状态和服务器时间,可用于确认维护或结算窗口。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds the context of maintenance/settlement windows, which is useful but doesn't disclose any additional behavioral details beyond annotations (e.g., output format, latency). Slightly above baseline, but not substantial.

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, compact Chinese sentence that efficiently states the purpose and a key use case. No fluff, no redundancy. It's front-loaded and earns its place in every word.

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

Completeness5/5

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

Given zero parameters, a simple purpose, and no output schema, the description is fully complete for a status tool. It explains what it does and why you'd use it (to check maintenance or settlement windows). No gaps remain.

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

Parameters4/5

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

The tool has zero parameters, so the description carries no parameter burden. Baseline is 4 for zero-parameter tools. The description does not need to explain parameter semantics, and it doesn't add or omit relevant info.

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 action ('查询' = query) and the resource (Deribit platform status and server time), which distinguishes it from sibling market data tools. However, it doesn't explicitly name any sibling or alternative, so it's clear but not fully differentiated.

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 mentions a use case ('可用于确认维护或结算窗口' - can be used to confirm maintenance or settlement windows), implying when to use it. But it provides no explicit guidance on when not to use it or how it compares to alternatives like deribit_get_announcements or other status-related tools.

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

deribit_get_trade_volumesDeribit Trade VolumesA
Read-onlyIdempotent

查询 Deribit 全交易所按币种汇总的 24 小时成交量,分为看涨期权、看跌期权、期货和现货。extended=true 时额外返回 7 日和 30 日成交量。这是交易所整体数据,与个人成交无关。

ParametersJSON Schema
NameRequiredDescriptionDefault
extendedNo为 true 时额外返回 7 日和 30 日成交量

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safe read-only nature is known. The description adds that it returns aggregated data for the whole exchange and mentions the optional extended parameter's effect, but does not describe other behaviors like pagination or rate limits. This is adequate given the annotation coverage, hence a 3.

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 starts with the core purpose, then details the breakdown, mentions the extended parameter, and ends with a clarifying statement about scope. Every clause adds value without redundancy.

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

Completeness4/5

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

Given the tool's simplicity (one optional parameter, no output schema, read-only), the description is reasonably complete. It explains what data is returned (24h volumes by product type, optionally 7/30 days) and clarifies scope. It does not describe output structure, but that is acceptable without an output schema for a simple metric tool. A 4 seems right given the simplicity.

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% for the only parameter 'extended', which is described in the schema as returning 7-day and 30-day volumes. The description repeats this but does not add extra details like default value or behavior when false. Baseline 3 is appropriate as the schema already handles the parameter description.

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

Purpose5/5

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

The description clearly states the verb (查询/query) and resource (Deribit trade volumes aggregated by currency), and explicitly distinguishes it from personal trades ('与个人成交无关'). It also mentions the specific breakdown (calls, puts, futures, spot), which distinguishes it from other market data tools among siblings.

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

Usage Guidelines4/5

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

The description makes clear it is exchange-wide data, not personal, which guides when to use it. It does not explicitly name alternative tools for personal trades or other volume queries, but the context is sufficient for typical use cases. A 4 is appropriate because it clearly scopes the use case without explicit when-not-to-use references.

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

deribit_get_volatility_indexDeribit Volatility Index (DVOL)A
Read-onlyIdempotent

查询 DVOL 波动率指数的 OHLC 数据。时间戳单位为毫秒。

ParametersJSON Schema
NameRequiredDescriptionDefault
currencyYes结算币种,例如 BTC、ETH、USDC、USDT、EURR
resolutionYes秒数,或 1D 表示日线
end_timestampYes毫秒 UNIX 时间戳
start_timestampYes毫秒 UNIX 时间戳

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the OHLC data scope and millisecond timestamp convention, but does not disclose response shape, pagination, or other runtime behavior.

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

Conciseness5/5

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

Single sentence, front-loaded with the core action and resource, no filler. Every word contributes.

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

Completeness5/5

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

For a read-only OHLC query with four fully described parameters, strong annotations, and no output schema, the description is adequate. The simple nature of the tool means no further context is essential.

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%, so the parameters carry full meaning independently. The tool description adds little beyond the schema; the mention of millisecond timestamps is already present in 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?

Description states a specific verb ('查询' / query) and a specific resource (DVOL volatility index OHLC data), clearly distinguishing it from siblings such as historical volatility or index price. The timestamp unit clarification adds useful precision.

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?

No guidance on when to use this tool versus alternatives like deribit_get_historical_volatility or deribit_get_index_price. The description only states what the tool does, not when it should be preferred.

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. 18 tool updatesv2.20260721.0
    • First observedderibit_get_announcements
    • First observedderibit_get_apr_history
    • First observedderibit_get_combos
    • First observedderibit_get_delivery_prices
    • First observedderibit_get_expirations
    • First observedderibit_get_funding
    • First observedderibit_get_historical_candles
    • First observedderibit_get_historical_volatility
    • First observedderibit_get_index_price
    • First observedderibit_get_instruments_info
    • First observedderibit_get_mark_price_history
    • First observedderibit_get_market_quote
    • First observedderibit_get_option_chain
    • First observedderibit_get_public_settlements
    • First observedderibit_get_public_trades
    • First observedderibit_get_status
    • First observedderibit_get_trade_volumes
    • First observedderibit_get_volatility_index

TDQS

A4/5.0

Scored across 18 tools

Disambiguation5/5

Each tool targets a distinct data type (volumes, instruments, expirations, quotes, candle history, funding, etc.) with no overlapping purposes. The descriptions clearly differentiate between exchange-level aggregates and instrument-specific data, making misselection unlikely.

Naming Consistency5/5

All 18 tools follow the exact pattern 'deribit_get_<noun_phrase>', using consistent snake_case and a uniform verb. The names are descriptive and predictable, enabling agents to infer what each tool does without ambiguity.

Tool Count4/5

18 tools is on the high end but still reasonable for a comprehensive public market data server covering quotes, histories, volatility, funding, settlements, and announcements. The scope justifies the count, though it pushes slightly beyond the typical 3-15 range.

Completeness5/5

The server covers the full spectrum of public Deribit data: instruments, quotes, order books, options chains, historical candles, mark prices, indices, volatility, funding, trades, settlements, combos, and announcements. No obvious gaps exist for public market data; the mention of a personal settlement tool indicates a clear boundary between public and private data.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    A comprehensive MCP server providing full access to Bybit's v5 API for real-time market data, trading operations, and account management. It enables AI assistants to execute trades, manage positions, and monitor wallet balances with built-in safety controls for both testnet and production environments.
    22
    6
    -
  • A
    license
    B
    quality
    B
    maintenance
    An MCP server that gives an LLM agent a typed, audited tool surface over quant crypto-options desk analytics: gamma exposure, vanna, skew, vol surface, options flow, technicals, portfolio greeks, scenario analysis, and live positions.
    22
    2
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    A production-ready MCP server for Bybit — 206 tools covering market data, trading, positions, account management, assets, and real-time WebSocket streams. Enables AI assistants to interact directly with the Bybit cryptocurrency exchange through natural language.
    384
    1,332 npm
    37
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for cryptocurrency trading across multiple exchanges (Bybit, Binance, KuCoin, etc.) with real-time price data, comparison, and natural language query support. Integrates with AI assistants via the Model Context Protocol.
    MIT