Binance MCP Server
The Binance MCP Server provides 76+ tools for interacting with Binance USD-margined futures, covering market data, technical indicators, risk analysis, statistical utilities, and futures trading.
Market Data
Real-time prices, order book depth, best bid/ask quotes
K-line (candlestick) historical data with various intervals
24h ticker statistics (price change, high/low, volume)
Mark prices, funding rates (current and historical), open interest
Aggregated/recent trades, exchange info, and API connectivity tests
Technical Indicators
Trend: SMA, EMA, DEMA, RMA, WMA, WSMA, DMA, ADX, Linear Regression, PSAR, VWAP, Zigzag
Momentum: RSI, Stochastic RSI, Stochastic Oscillator, MACD, AO, MOM, ROC, CCI, Williams %R
Volatility: Bollinger Bands, ATR, Acceleration Bands, OBV
Signals: EMA cross, MACD+RSI combo, Bollinger Bands+RSI, MA cross (golden/death cross); multi-indicator batch tool
Risk & Statistical Analysis
Sharpe, Sortino, and Calmar ratios; max drawdown; VaR and CVaR
Statistical utilities: mean, min/max, median, quartile, standard deviation
Win rate, profit/loss ratio, streak analysis, grid level calculation (arithmetic/geometric)
Futures Trading (requires API key)
Account: Balance, positions, income history, commission rates
Order Placement: Limit, market, stop, take-profit, and trailing stop orders; batch orders (up to 5)
Order Management: Modify, cancel single/batch/all orders; query order status and history
Quick Orders: One-click stop-loss or take-profit with percentage-based offset
Configuration: Leverage (1–125x), margin type (isolated/cross), position margin, position mode
History: Trade history, force liquidation orders, margin change history
Provides tools for interacting with Binance's futures API, enabling AI agents to access real-time market data, trade orders, and technical indicators.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Binance MCP ServerWhat is the current price of BTCUSDT?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Binance MCP Server
A Binance USDT-M futures MCP server based on Model Context Protocol, providing AI assistants with 61 MCP tools covering market data, technical indicators, risk analysis, and futures trading.
Built on the MCP server v2 SDK and Binance's official SDK (@binance/derivatives-trading-usds-futures), all values are automatically normalized according to exchange precision rules, with two-level market data caching, -1007 timeout idempotent recovery, and clock skew detection.
Quick Start
Zero-Configuration Experience (Analysis Only, No Trading)
npx @iuk-ink/binance-mcp-serverNo API key is required. Connect to the testnet by default and use the market data, indicator, and risk analysis tools.
Configuring an MCP Client
{
"mcpServers": {
"binance": {
"command": "npx",
"args": ["-y", "@iuk-ink/binance-mcp-server"],
"env": {
"BINANCE_TESTNET": "true"
}
}
}
}If you need trading features, add BINANCE_API_KEY and BINANCE_API_SECRET.
Environment Variables
Variable | Required | Default | Description |
| No |
| Testnet (virtual funds) / Mainnet |
| No |
| Demo trading environment (shares credentials with mainnet) |
| No | — | Custom REST endpoint (highest priority) |
| No | — | Trading tools are not registered if not set |
| No | — | Same as above |
| No | — | HTTP/HTTPS proxy address |
| No |
| Request timeout (ms) |
| No |
| Network retry count |
| No |
| Retry backoff base (ms) |
| No |
| Signature time window (ms) |
| No | All | Tool domain filter, comma-separated: |
| No |
| MCP server name |
| No |
| debug / info / warn / error |
Related MCP server: Binance MCP Server
Tool List (61, Mainnet)
On testnet, there are 57 tools (the 4 sentiment endpoints are only available on mainnet and are not registered).
Market Data (18)
Tool | Description |
| Latest trade price |
| Best bid/ask price + quantity (much lighter than orderbook) |
| Multi-level order book depth (5/10/20/50/100/500/1000) |
| Historical K-line data |
| 24h change / high / low / volume |
| Mark price (= liquidation reference price, includes funding rate) |
| Open interest (OI) |
| Current funding rate and bounds |
| Historical funding rates |
| Perpetual / quarterly / next quarter continuous contract K-lines (basis analysis) |
| Trading rules / precision / minimum order size |
| One-stop snapshot: market data + indicators + funding rate + order book, in a single call |
| Connectivity test / server clock calibration |
| OI historical statistics (mainnet only) |
| All-account long/short ratio (mainnet only) |
| Aggressive buy/sell volume ratio (mainnet only) |
| Large trader position long/short ratio (mainnet only) |
Technical Indicators (19)
Direct-connection design: complete "fetch K-lines → calculate indicator" in one step, without needing to call market_klines.
Category | Tools |
Trend |
|
Momentum |
|
Volatility |
|
Composite signals |
|
Batch |
|
Risk Analysis (3)
Tool | Description |
| Sharpe + Sortino + annualized return / volatility (annualization factor automatically inferred from the K-line timeframe) |
| Maximum drawdown (including peak/trough prices and positions) |
| VaR / CVaR (confidence level 0.5~0.99 adjustable) |
Futures Trading (21, API Key Required)
Category | Tools |
Account |
|
Order |
|
Query |
|
Configuration |
|
Orders are automatically handled: price / quantity precision rounded down (tickSize / stepSize), minimum notional value validation, and after a -1007 match timeout, it verifies whether the order was filled using an idempotent order ID before deciding whether to retry.
Migrating from 2.x to 3.x
Breaking Changes
MCP SDK:
@modelcontextprotocol/sdk@1→@modelcontextprotocol/server@2(official package rename)Binance integration: community package
binance@3→ official@binance/derivatives-trading-usds-futures@38Node.js:
>=18→>=20Proxy environment variable:
HTTP_PROXY→BINANCE_PROXY_URLToolset 76 → 61: removed the statistics helper domain (10 tools for mean / extremes / quartiles, etc.) and redundant standalone / signal variants of indicators; the legacy
_directtools are now direct-connect tools without the suffix (for example,rsi_direct→indicator_rsi); risk tools renamed (analysis_*fromrisk_*)Tool name prefixes: all tools have a domain prefix (
market_/indicator_/analysis_/trading_); existing AI client prompts and workflows must adapt to the new names
New Capabilities
market_overviewone-stop snapshot (aggregates market data / indicator / funding rate / order book in a single call)MCP_TOOL_DOMAINStool domain filtering,BINANCE_USE_DEMO/BINANCE_BASE_URLenvironment configurationTwo-level cache (exchangeInfo 5min + klines 3s, in-flight deduplication)
-1007match timeout idempotent recovery, clock skew detection at startupAutomatic order precision rounding + upfront-order minimum notional validation
Parameter validation fully aligned with official constraints (
clientOrderIdcharacter set, GTD upper bound, trailing drawdown rate 0.1~10, etc.)
AI Usage Guide (Skill)
The repository includes skills/binance-trader/SKILL.md — a usage manual written for AI assistant, covering tool selection decisions, cross-tool workflows, trading safety discipline, and error recovery scripts. Clients that support the Skill mechanism (Claude Code / Trae, etc.) can mount it directly, allowing the AI to upgrade from "can use tools" to "use tools well".
Local Development
git clone https://github.com/iuk-ink/binance-mcp-server
cd binance-mcp-server
npm installCommands
Command | Description |
| Direct startup with tsx for development |
| TypeScript type checking |
| Run all 196 tests with |
| Compile to |
| Run the compiled output |
License
MIT
Available Tools
57 toolsanalysis_drawdown最大回撤ARead-only
直连版:拉取 K 线以收盘价为净值序列,计算标的最大回撤(负数)与峰谷位置(非账户绩效)。窗口越大越接近历史极值,建议 1d×365 起评估最大可能回撤。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| peak | Yes | |
| trough | Yes | |
| maxDrawdown | Yes | |
| sampleCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The read-only/open-world annotations already cover safety, and the description adds value by explaining that closing prices are used as the net-value series, results are negative numbers, peak positions are returned, and larger windows approach historical extremes. No contradictions 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?
Two succinct sentences, no redundancy; the first sentence states the operation, the second gives actionable guidance. Every sentence earns its place.
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 is simple, has an output schema for return details, and the description gives the key use recommendation. It is complete enough for an agent to invoke it correctly, though it could strengthen explicit routing away from account-performance 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 description coverage is 0%, so the description matters. It communicates the recommended interval limit 1d×365 and connects 'window' to limit, but it does not directly explain symbol or interval beyond the schema enum. It partially compensates for the missing parameter descriptions.
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 identifies a specific verb and resource: fetching K-line data and calculating the asset's maximum drawdown and peak-trough positions. It also explicitly notes that this is not account performance, which distinguishes it from analysis_sharpe and analysis_var.
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?
It provides clear practical context for how to choose the window: 'larger windows approach historical extremes; suggest starting at 1d×365'. It does not name alternatives, but the 'non account performance' note acts as a when-not-to-use signal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analysis_sharpe夏普·索提诺ARead-only
直连版:拉取 K 线推导标的收益率序列,计算年化收益/波动、夏普与索提诺。度量对象为标的价格序列的风险特征(非账户绩效);periodPerYear 缺省按 interval 自动推断(1h→8760、1d→365);严肃评估建议使用 1d×365 及以上大窗口(小窗口年化统计意义有限)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| riskFreeRate | No | 单周期无风险利率(小数,如 0.0001 = 0.01%),默认 0 | |
| periodPerYear | No | 年化系数(每年 K 线根数),缺省按 interval 自动推断 |
Output Schema
| Name | Required | Description |
|---|---|---|
| sharpe | Yes | |
| sortino | Yes | |
| sampleCount | Yes | |
| annualReturn | Yes | |
| periodPerYear | Yes | |
| annualVolatility | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and openWorldHint=true. Beyond that, the description discloses the derivation path ('拉取 K 线推导收益率'), what is computed ('年化收益/波动、夏普与索提诺'), and the auto-inference behavior of periodPerYear. It also discloses the limitation that small windows have limited statistical meaning, which is honest and useful. This is more than annotations provide.
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 compact and information-dense: three sentences, each contributing a distinct semantic block (what it computes, what it measures, how periodPerYear is defaulted, and a usage caveat). It is well-structured for an AI consumer.
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 description explains the core behavior, the derivation approach, the parameter defaulting strategy, and a statistical caution. It doesn't describe the return value shape beyond an available output schema, so the output_schema likely covers that. Missing details such as how to treat riskFreeRate defaults or exact timezone conventions are minor against the available annotations and schema.
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's description coverage is about 40% (only periodPerYear and riskFreeRate have descriptions). The description adds meaning by explaining the default behavior of periodPerYear (auto-inferred by interval) and the meaning of riskFreeRate remains opaque, but the description doesn't detail all five parameters. It adds semantics for the timing, but not the format of symbol, limit, or riskFreeRate; the schema already provides some parameter domains. The description partially compensates for the schema gaps.
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 ('拉取 K 线推导标的收益率序列') and resource ('标的收益率'), and explicitly scopes the metric to '标的价格序列的风险特征(非账户绩效)', distinguishing it from account-focused tools. However, it doesn't name a specific sibling alternative, so differentiation from other analysis/indicator siblings is implicit rather than explicit.
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 clearly scopes the tool to '标的收益率序列' and explicitly excludes '账户绩效', noting that 'serious evaluation' should use larger windows. However, it doesn't explicitly describe when to use this tool instead of other indicators/analysis tools, leaving some inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
analysis_varVaR · CVaRARead-only
直连版:拉取 K 线推导收益率,按历史模拟法计算置信度下的 VaR 与 CVaR(负值=损失;度量标的单根 K 线尾部风险,非账户绩效)。可作止损距离参考:止损应 ≥ 单根 VaR × 杠杆,否则易被正常波动扫损。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| confidence | No | 置信度(0.5~0.99) |
Output Schema
| Name | Required | Description |
|---|---|---|
| var | Yes | |
| cvar | Yes | |
| confidence | Yes | |
| sampleCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
在注解已有 liveHint=true 与 openWorldHint=true 的基础上,描述补充分传了额外行为:历史模拟法、计算对象为收益率序列、单一 K 线对象的含义,以及重要符号约定'负值=损失'。这些信息能防止把结果直接读作另一层含义,帮助智能体正确理解调用后的结果。
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?
全部内容只有两条有效句子:第一句讲计算对象、方法、结果并通过符号约定;第二句给出阈值且是真正可执行的止损指导。每句都有独立价值,无冗余,起点句在句首,结构紧凑清晰。
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?
在已有输出 schema 以及 readonly/openWorld 注解的前提下,描述已覆盖计算全员向量、统计方法、置信度、结果定义容忍、适用配置六个关键,能让智能体有安全决策所需的信息。只差少量有关结果输出格式与极端置信度(limit 过小)注意事项的更多补充,不给失去完整分。
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 文本覆盖率仅 25%(只有 confidence 有描述),需要描述补齐参数含义。描述通过'K线——收益率——VaR/CVaR'的链路让 symbol 与 interval 的实际角色自然成立,也暗示了 limit 的效率与样本采样意义。虽然没有逐参数列名说明,但已能给充分弥补了 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?
描述正确定义了动词与资源:拉取 K 线推导收益率,按历史模拟法计算置信度下的 VaR 与 CVaR。通过'度量工具后单根 K 线尾部风险,非账户绩效'进一步将它与 analysis_sharpe、analysis_drawdown 等账户/策略类评估分开,属于清晰的用途定义。
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?
明确说明了该工具的核心情境——单根 K 线尾部风险——并提出了参考规则:止损 ≥ 单根 VaR × 杠杆,否则可能被正常波动扫损。'非账户绩效'是对应用范围的明确排除,可视为一种边界说明;缺点是没有直接指出应与哪个具体兄弟工具对比使用中选择。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_adx平均趋向指标ARead-only
直连版:拉取 K 线后计算 ADX,返回稳定序列(衡量趋势强度,0-100,与方向无关)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark this as read-only and open-world. The description adds useful behavioral detail beyond annotations by stating the internal flow: it fetches K-lines, calculates ADX, and returns a stable sequence. It also clarifies the numeric output domain and that the value is direction-independent, which helps an agent understand what the tool actually returns.
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 one compact sentence that front-loads the tool's access mode and calculation flow, then adds the key context about the output range and interpretation. There is no wasted text or redundant schema re-statement.
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 read-only indicator with output schema and annotations, the description is reasonably complete for a basic call. It does not provide explicit guidance about the period/limit parameters or how to choose this tool over sibling indicators, but the output schema and defaults make an ordinary symbol/interval call feasible.
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 needs to compensate. However, the description only mentions K-lines and ADX, providing no explanation of period (default 14), limit (default 200), or how these affect the calculation and returned series. The agent must infer meaning from parameter names and defaults alone.
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 gives a clear verb and resource: it pulls K-lines and computes ADX, returning a stable trend-strength sequence. The additional context that the result is 0-100 and direction-independent clearly identifies the indicator's purpose, although it does not explicitly distinguish itself from the many sibling indicator 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?
The description implies the tool is appropriate when trend strength is needed regardless of direction, but it does not explicitly say when to use ADX instead of another indicator such as indicator_rsi or indicator_bb. There is no when-not-to-use information or explicit sibling alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_atr平均真实波幅ARead-only
直连版:拉取 K 线后计算 ATR,返回稳定序列(衡量波动,默认 Wilder 平滑)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
除注解readOnlyHint已经说明只读外,描述额外说明了计算过程(拉取K线、计算ATR)、默认平滑方式(Wilder)和返回特性(稳定序列),这补充了注解之外的实际执行行为。没有与注解矛盾。
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?
描述仅用一句话就包含了类型、计算方式、结果特性和默认参数,语义紧凑,前置了对“直连版”的限定,没有任何冗余。
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?
在已有输出schema和只读注解的加持下,描述基本覆盖了核心调用背景,但“直连版”的设定没有上下文说明,也没有提及与潜在非直连版或交易类工具的边界。对于多工具开放环境,仍有模糊空间,尚算刚刚及格。
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?
当前参数有4个,schema描述覆盖率为0%,描述中几乎没有对参数进行额外解释。只通过“默认Wilder平滑”间接暗示了period的默认风格,但symbol、interval、limit等参数均未在描述中说明对应语义或使用建议,描述未帮助填充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?
明确说明直接获取K线后计算ATR,并指出其为波动率工具,同时提到默认Wilder平滑。与其他指标工具(SMA/EMA/MACD等)在功能上有明显区分,动词和资源明确。
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?
描述中通过“衡量波动”点明了使用场景,且在指标类工具中能自然引导Agent在需要波动率时选择该工具。但未明说何时不应使用或与其他波动率工具的取舍,缺少明确的排除性指引。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_bbands布林带CRead-only
直连版:拉取 K 线后计算布林带,返回稳定三元组序列(lower / middle / upper)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| deviationMultiplier | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark the tool as read-only and open-world safe. The description adds that it first pulls K-lines and returns a stable triple sequence, which is useful context beyond the annotations. However, it does not clarify what 'stable' means, how limits are applied, or whether the output aligns with the K-line history length, so transparency remains partial.
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, focused sentence with the key behavioral fact and output shape front-loaded. It is concise and easy to parse. It is slightly sparse, but there is no waste or unnecessary repetition.
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 five-parameter indicator tool with no output schema, the description leaves too much unspecified: the meaning and defaults of the parameters, how the returned triple is structured over the K-line window, and how it behaves with different limits. The annotations cover safety but not operational details, so an agent still lacks enough to use the parameters confidently.
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%, and the description does not compensate: it does not explain 'limit', 'period', 'deviationMultiplier', 'symbol', or 'interval'. Although the description ties the calculation to K-lines and the Bollinger output, it provides almost no semantic value for the five parameters, which are critical for correct invocation.
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 concrete behavior: it pulls K-line data, computes Bollinger Bands, and returns a lower/middle/upper triple sequence. It goes beyond restating the title and gives the return shape. It does not explicitly differentiate from sibling indicators, though 'direct version' hints at an implementation distinction.
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 guidance about when to use this tool instead of the many sibling indicator tools such as indicator_bb_rsi or indicator_sma. The phrase '直连版' hints at a direct-vs-composite usage context, but no conditions, alternatives, or exclusions are provided, leaving the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_bb_rsi布林带 + RSI 组合BRead-only
直连版:拉取 K 线后同时计算布林带完整数据、RSI、%B 与价格分区。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| rsiPeriod | No | ||
| deviationMultiplier | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| rsi | Yes | |
| zone | Yes | |
| lower | Yes | |
| upper | Yes | |
| middle | Yes | |
| percentB | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds useful behavioral context — it fetches K-line data (拉取 K 线) and performs all computations in one pass — which conveys the dependency on exchange data. However, the term '直连版' is ambiguous and unexplained, and the meaning of '%B 与价格分区' outputs is not clarified, so the added value is moderate rather than strong.
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 Japanese sentence that front-loads the action and lists the computable outputs without any filler or repetition of the input schema. The '直连版' prefix is cryptic and slightly undermines the line, but the rest of the description is economical and well-ordered.
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 output schema exists and covers return values, so that par is not needed here. However, the meaning of '直连版', the mapping of parameters to each sub-computation, and any notion of K线 history depth/limits are missing. plus no hint to differentiate selection from the close sibling indicators. A complete definition for a combined-indicator tool should add these.
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 full burden for explaining parameters, but it does not return an instruction for any parameter: how period relates to BB, how rsiPeriod relates to RSI, what limit governs, or what deviatiate+multiplier does. Only the implicit mapping — K-lines to limit and the BB/RSI sections to the two period parameters — is guessable. For a 6-parameter tool with zero schema coverage, this does not compensate for the gap.
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 verb-resource combination: pull K-lines and simultaneously compute full Bollinger Band data, RSI, %B, and price zones, which is clear and distinct from the name alone. It differentiates from siblings like indicator_bbands and indicator_rsi by the '同时' (simultaneously) framing, though the term '直连版' is never explained and the distinction from other combo indicators like MACD+RSI is left implicit.
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?
Usage context is only implied: an agent can infer this tool should be chosen when both Bollinger and RSI are needed simultaneously, and the title supports the combination intent. However, there is no explicit when-to-use statement, no exclusions, and no routing guidance against the many sibling indicators like indicator_bbands, indicator_rsi, or indicator_macd_rsi.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_cci顺势指标BRead-only
直连版:拉取 K 线后计算 CCI,返回稳定序列(以典型价离差归一,可正可负)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
annotations 已具备 readOnlyHint=true 和 openWorldHint=true,安全画像无需描述额外承担。描述补充了有价值的行为:该工具会自行拉取 K 线数据('直连版',暗示每次调用有网络数据成本),并说明输出序列经过典型价离差归一、可正可负,这对输出解读有帮助。但'直连版'与'稳定序列'均为未定义术语,行为信息整体有仍显单薄。
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?
全文一句,简短且关键信息(计算对象、计算方式、输出特性)靠前集中,无明显冗余。'直连版'和'稳定序列'两个术语富有信息量但仍需解释,既保持压缩的评价则不算5。
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?
存在 output schema 和 input 枚举/默认值,承担了返回结构与合法取值的一部分职责,因此描述不必解释返回值字段。但对一个需要 symbol/interval/period/limit 的调用,描述中的参数说明缺失如 period 对计算的影响、limit 对序列长度的行为,'直连版'的语义也未澄清,中等复杂二元完整度仅达基本线。
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 的参数描述覆盖率为 0%,描述必须补偿,但描述几乎未涉及参数。'拉取K线'间接指向 symbol 与 interval,却完全没有说明 period 的含义(只能凭默认值20和CCI常识硬推),limit 更是完全未提及。对 0% 覆盖率的 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?
描述明确说明了动作(拉取K线后计算CCI)和结果(返回归一化、可正可负的稳定序列),并交代了计算口径(以典型价离差归一),不是对工具名的简单复述。但未与同组大量 indicator_* 兄弟工具做任何区分,依赖工具名自身传达'这是CCI指标',因此不足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?
描述只说明了工具做什么(拉K线算CCI),没有给出任何'何时用本工具而非替代品'的指引。面对 indicator_multi、indicator_macd_rsi、indicator_bb_rsi 等复合工具,以及十余个单指标工具,描述未说明何时应选 CCI、何时应选其他指标或复合工具。'直连版'一词似乎暗示存在非直连版本,但没有解释其适用取舍,属于不完整或无用的指引。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_divergenceRSI 背离检测ARead-only
直连版:拉取 K 线后检测价格与 RSI 的顶背离 / 底背离(前后半窗极值对比),返回背离类型与全部极值明细。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| lookback | No | 背离检测分析窗口(K 线根数) | |
| rsiPeriod | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| rsi | Yes | |
| type | Yes | |
| price | Yes | |
| window | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds meaningful behavioral detail beyond that: it internally pulls K-lines ('拉取 K线后检测') and explains the half-window extreme-comparison algorithm, so the agent knows the tool has internal data dependencies and what computation drives the result. No contradiction with the read-only 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 compact Chinese sentence conveys purpose, pipeline (K-line fetch --> detect), and return concept (divergence type + extreme details) with little waste. A very small deduction for the '直连版' prefix, which may confuse agents by hinting at a nonexistent sibling version.
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 tool has 5 parameters, covers output schema, and a read-only annotation, the description covers the core 'what' and 'algorithm' but not edge behavior (e.g., what happens when there is insufficient data, how many divergence results are returned, or the relation between lookback/limit/rsiPeriod. An agent can call it correctly with schema-provided defaults, but may be surprised by edge-case results.
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 20% (only lookback is explained), so the description should compensate. It partially does: '前后半窗极值对比' gives context for lookback's window semantics. But rsiPeriod, limit, symbol, interval and their interplay are not elaborated in either the schema or the description, and defaults (14/200/20) are standard enough that agents are likely to call correctly without further detail.
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?
States a specific verb+resource: it detects price-vs-RSI top/bottom divergence ('检测价格与 RSI 的顶背离 / 底背离'). The '前後半窗极值对比' mechanism makes the function concrete, and divergence is a unique concept among the indicator siblings, distinguishing it from indicator_rsi, indicator_macd, etc. It loses a point only because it never explicitly names an alternative or a differentiation against the other indicator 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?
The intended use — проверка divergence between price and RSI — is clear, so when an agent needs divergence detectentation this tool is the obvious choice. But there is no guidance on when NOT to use it, no mention of raw-als indicators like indicator_rsi for plain RSI values, and no statement about alert-window tuning. Usage 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.
indicator_ema指数移动平均BRead-only
直连版:拉取 K 线后计算指数移动平均,返回 EMA 序列(以首价为平滑种子,period 为周期)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the tool's non-destructive nature is known. The description adds context by revealing that the tool pulls K-lines internally and uses the first price as the smoothing seed, but it does not specify behavior for insufficient data or limit/period pitfalls. No contradiction exists.
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?
It is a single front-loaded sentence that introduces the main action before modifiers, and adds only concise formula-relevant detail. The term "直连版" is a slight ambiguity that could be clearer, so it is not a perfect score.
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 output schema and read-only annotation covered return structure and safety, and the description covers the core algorithm. However, with four poorly specified parameters, no sibling differentiation, and no usage alternatives, the definition does not fully equip an agent to choose and calibrate the call across similar indicators.
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 must supply parameter meaning. It only elaborates on period, calling it the周期, and gives the smoothing-seed behavior; it does not explain limit, interval usage, or how symbol/interval parameterize the K-line pull. This leaves much of the parameter understanding to inference.
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 clear operation and resource: "拉取 K 线后计算指数移动平均" and returns an "EMA 序列". It also gives a useful formula detail (first price as smoothing seed). It does not explicitly contrast with sibling tools like indicator_sma or indicator_macd, which prevents 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 provides no when-to-use direction, no stated preference compared to other indicator tools, and no examples of scenarios where EMA is appropriate. The only contextual phrase "直连版" is ambiguous and does not explain selection between this and sibling indicators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_macdMACDCRead-only
直连版:拉取 K 线后计算 MACD,返回稳定三元组序列(macd / signal / histogram)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| longPeriod | No | ||
| shortPeriod | No | ||
| signalPeriod | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds some behavioral context beyond the annotations by revealing that the tool pulls K-lines, computes MACD, and returns a stable sequence of triples. The annotations already cover read-only and open-world hints, so the burden is lower. However, it does not mention edge cases, error conditions, or how the return sequence is structured relative to time or limit.
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 short sentence that front-loads the core behavior (K-line fetch, MACD calculation, output shape). Every phrase earns its place, though the '直连版本' wording is fuzzy and consumes space without being fully informative.
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 schema coverage of 0%, six parameters, and a sibling ecosystem full of choosing ambiguity, this description is far from complete. It provides an output shape, so the output schema can carry some burden, but it totally fails to explain parameter semantics or give usage context, making the tool under-specified for an 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?
Schema description coverage is 0%, and the description does not mention or explain any of the 6 parameters. Even the key MACD parameters like longPeriod, shortPeriod, and signalPeriod are omitted entirely, so the agent receives no semantic explanation for the parameters beyond raw schema defaults.
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 and resource ('拉取 K 线后计算 MACD') and identifies the output as a stable triple sequence (macd / signal / histogram). '直连版' hints at a distinguishing mode and distinguishes this from combined indicator siblings like indicator_macd_rsi, though the meaning of '直连版' is not fully explained.
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 is provided on when to use this tool instead of the many sibling indicators (e.g., indicator_macd_rsi, indicator_multi, indicator_rsi). The phrase '直连版' implies some mode difference, but it never states when an agent should choose this tool or when it should not. There is no explicit exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_macd_rsiMACD + RSI 组合BRead-only
直连版:拉取 K 线后同时计算 MACD 与 RSI 最新值,返回完整数据(不输出主观信号)。
| Name | Required | Description | Default |
|---|---|---|---|
| fast | No | ||
| slow | No | ||
| limit | No | ||
| signal | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| rsiPeriod | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| rsi | Yes | |
| macd | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
annotations 已提供 readOnlyHint=true 和 openWorldHint=true;描述额外说明该工具会先拉取 K 线再计算指标并返回完整数据,且不会产生主观信号,这增加了对调用行为和输出边界的透明性。
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?
描述只有一句话,结构紧凑且信息密度高:先讲数据来源,再讲计算内容,再讲返回方式,最后标注边界。没有冗余或重复 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?
有输出 schema 和 readOnly annotations 的情况下,工具行为的核心部分得到覆盖;但该工具参数较多,且描述既未解释参数语义,也未提供使用边界或替代工具指引,整体上下文仍不够完整。
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 参数覆盖率为 0%,描述也没有说明 fast、slow、signal、rsiPeriod、limit 等参数的含义或默认值关系。对于 7 个参数的组合指标工具,参数语义完全缺失,描述本身无法帮助 Agent 理解除符号和时间周期外的输入。
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?
描述明确说明了工具动作:拉取 K 线后计算 MACD 与 RSI 的最新值,并指出返回完整数据、不输出主观信号。结合工具名“MACD + RSI 组合”可以看出它区别于单独计算 MACD 或 RSI 的兄弟工具,但没有显式点名区分边界。
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?
描述中没有给出“何时应该使用本工具、何时应改用 indicator_macd/indicator_rsi/indicator_multi”等指引。“不输出主观信号”只是对输出的限制,不是调用时机的指导。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_ma_cross均线交叉ARead-only
直连版:拉取 K 线后检测双均线交叉状态(golden_cross / death_cross / none)与多空偏向。
| Name | Required | Description | Default |
|---|---|---|---|
| fast | No | ||
| slow | No | ||
| type | No | 均线类型 | EMA |
| limit | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| bias | Yes | |
| fast | Yes | |
| slow | Yes | |
| cross | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as read-only and open-world, so the safety profile is known. The description adds meaningful behavioral context by stating that it fetches K-lines before computing crossover status and that it produces a directional bias classification, 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 concise sentence that front-loads the tool identity and immediately lists the key output categories. There is no redundant writing or repetition of schema defaults.
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 an output schema and readOnly annotations, the description does not need to repeat return values or safety guarantees. However, given six parameters and low schema coverage, the description is thin on parameter-level context and does not help an agent decide between this and related indicator tools. It is minimally sufficient but not fully 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 very low at 17%, and the description only vaguely compensates by mentioning "dual moving average." It does not explain how fast, slow, type, limit, symbol, or interval interact, nor does it clarify fast vs slow behavior. Schema fields like symbol and interval are self-explanatory, but the important indicator parameters remain under-documented.
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 a specific action and resource: it pulls K-line data and detects dual moving average crossover state, listing explicit outputs (golden_cross / death_cross / none) and bullish/bearish bias. This distinguishes it from sibling tools like indicator_sma, indicator_ema, and indicator_macd, which either return raw indicator values or use a different construction.
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 its use case: an agent should call this when the user wants dual moving average crossover detection. However, it gives no explicit when-to-use or when-not-to-use guidance, nor does it mention alternative tools such as indicator_macd or indicator_multi for similar signal detection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_mfi资金流量指标BRead-only
直连版:拉取 K 线后计算 MFI,返回稳定序列(0-100,带成交量的 RSI 变体)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only behavior, and the description adds meaningful context about the data source (K-line pull) and the output format (stable 0-100 series). It does not contradict the annotations and adds transparency beyond them, though it omits edge cases or failure behavior.
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 compact sentence that packs the action, formula basis, and output range without redundancy. It is appropriately front-loaded with the operation and delivers high information density.
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 is a standard technical indicator with an output schema, so the return structure is already covered. The description adds the key conceptual distinction (volume-weighted RSI) and data dependency (requires K-lines), which is nearly sufficient for correct invocation by an agent familiar with MFI.
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%, and the description does not explain any of the four parameters. Even common MFI semantics like 'period' as lookback window or 'limit' as data length are left completely implicit, forcing the agent to rely on naming heuristics.
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 action: pull K-lines and compute MFI, returning a bounded 0-100 series that is a volume-weighted RSI variant. This makes the tool's purpose unambiguous, though it does not explicitly distinguish it from sibling indicators by name.
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 is provided on when to use this tool versus alternative indicator tools such as indicator_rsi or indicator_obv. The phrase '直连版' hints at a variant but does not explain trade-offs or selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_multi批量指标ARead-only
直连版:单次拉取 K 线,批量计算 RSI(14) + MACD(12/26/9) + BBands(20/2) 最新值。可选启用 ATR / ADX / Stoch。替代逐个调用 3-6 次网络往返。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| includeADX | No | ||
| includeATR | No | ||
| includeStoch | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| adx | No | |
| atr | No | |
| rsi | Yes | |
| macd | Yes | |
| stoch | No | |
| bbands | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
annotation已经标记readOnlyHint和openWorldHint,描述不需要重复安全说明。描述额外补充了“直接拉K线”“只算最新值”“一次网络往返间接完成多个指标计算”,这些不是schema能直接看出的行为上下文,很有价值。
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?
两句中文,先给最核心的用途,再给可选参数,最后给网络收益。没有任何冗余句子,信息密度很高。
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?
在存在输出schema、readOnlyHint且参数schema已含default/enum/range的情况下,描述已经覆盖了“何时用、算什么、有哪些可选开关和最大收益”,没有明显缺口。选择正确的所需信息已足够。
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,覆盖率为0%,而描述主动讲解了默认指标周期和includeATR/includeADX/includeStoch三个布尔参数的含义。但没有说明limit对指标 lookback 窗口的具体影响,也没显式对应symbol/interval,所以扣掉一分。
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?
明确说明动作是“单次拉取K线,批量计算”,并列出默认计算 RSI(14)+MACD(12/26/9)+BBands(20/2),可选用ATR/ADX/Stoch。它与indicator_rsi、indicator_macd、indicator_bbands等单个指标工具显著区分,不依赖打开schema也知道这是批量版。
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?
清楚写明“替代逐个调用 3-6 次网络往返”,即当需要多个指标时优先使用本工具。缺点是没有显式说明“如果只需一个指标,应改用单个indicator_*”,所以不算完全满足when-not的边界。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_obv能量潮CRead-only
直连版:拉取 K 线后计算 OBV,返回稳定序列(结合开盘与收盘方向的累计成交量)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注释已经声明 readOnlyHint=true 和 openWorldHint=true,工具安全属性已有保障。描述在此基础上补充了它会先拉取 K 线、基于开盘与收盘方向累计成交量的计算逻辑,并指出返回的是‘稳定序列’,这些信息有一定价值。不过没有说明数据缺失、K线不足、边界情况等行为,也只能算中等透明。
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?
描述非常简短,前置说明了核心功能,没有冗余信息。除“直连”一词与为何要“稳定序列”外,整体表达紧凑,值得给较高评分。
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?
有输出 schema 且是只读计算类工具,降低了部分负担,但仍有 4 个参数、0% schema 描述覆盖、且存在大量指标类兄弟工具,描述未提供使用场景、参数含义或与其他指标工具的区别,上下文信息不充分,不足以支持可靠的工具选择与调用决策。
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 的参数描述覆盖率为 0%,且描述文本没有对 symbol、interval、limit、period 四个参数做出进一步解释。描述只提到“先拉取 K 线”,但未说明 period 如何参与 OBV 计算,也未说明 limit 与 period 的关系,agent 无法从描述中获得额外参数语义。
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?
描述明确说明了‘拉取 K 线后计算 OBV’,即该工具的核心动作与计算对象,并指出返回的是结合开盘/收盘方向的累计成交量序列。虽然没有点名区分某个具体兄弟工具,但‘OBV/能量潮’这一指标身份清晰,足以与 VWAP、RSI 等其他指标区分。
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?
描述完全没有说明何时应使用 OBV,而非其他工具,如 MACD、RSI 或成交类指标。多个兄弟指示器之间也没有任何引导或排除关系,仅靠‘直连版’无法帮助 agent 判断该工具最适合的场景。没有提供任何条件或备选项说明。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_rsi相对强弱指标ARead-only
直连版:拉取 K 线后计算 RSI,返回稳定序列(0-100,Wilder 平滑,period 为周期)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注解已声明只读和公开数据访问,描述在此基础上补充了关键运行行为:基于K线计算、使用 Wilder 平滑、输出被限定在 0-100 的稳定序列。没有与注解矛盾,也不需要再说明副作用。
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?
一句话涵盖数据来源、计算方式、输出范围和关键参数,没有冗余。关键信息前置,便于快速定位;对于简单的指标工具,这种长度是合适的。
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?
该工具是相对简单的指标计算工具,且已有输出 schema 和只读注解,描述提供了足够的核心语义,如周期、平滑算法和数值范围。虽缺少参数选型说明和与替代工具的边界,但对调用本身已比较完整。
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 的字段描述覆盖率为 0%,描述也未对 symbol、interval、limit 给出额外语义,只提到“period 为周期”,这基本是参数名本身的同义重复。因此参数意义更多依赖字段命名和交易常识,工具描述补偿不足。
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?
描述直接说明“拉取 K 线后计算 RSI”,给出具体动作、资源与输出特点(0-100、Wilder 平滑),明确区分于其他指标类工具。标题只是指标名称,但描述补充了计算方式和返回序列,使目的非常清晰。
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?
描述没有说明何时应使用本工具,也没有在 RSI 与 MACD/RSI、背离、多指标等其他关联指标之间给出选型指引。“直连版”暗示了一种实现差异,但未解释与替代方案的区别或适用场景。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_sma简单移动平均ARead-only
直连版:拉取 K 线后计算简单移动平均,返回稳定 SMA 序列(period 为周期)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark the tool as read-only, so the description's main job is to explain how it behaves beyond safety. It does this by disclosing that the tool itself pulls K-line data before computing the SMA, and returns a stable SMA series. This is meaningful behavioral context, though it could say more about caching or how missing data is handled.
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 directly explains the calculation pipeline and output. There is no filler, repetition, or unnecessary qualification; every clause contributes useful information.
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 indicator tool with read-only annotations and an output schema already present, the description is mostly complete. The main gap is the missing explanation of the 'limit' parameter and how the pull length influences the returned SMA series, which is important for a 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?
Schema description coverage is 0%, so the description must compensate for parameter meanings. It only clarifies that 'period' is the cycle length; it does not explain what 'limit' means, how 'interval' relates to the K-line fetch, or what constraints affect the output series. The parameter semantics are far from fully covered.
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's action and resource: pulling K-lines and calculating a simple moving average. It also mentions the return value ('稳定 SMA 序列') and the meaning of period. This sharply distinguishes indicator_sma from siblings like indicator_ema, indicator_rsi, or indicator_macd.
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 usage: when a simple moving average over K-lines is needed, this tool should be used. However, it provides no explicit when/when-not guidance or alternatives, and the term '直连版' hints at a particular mode without fully explaining it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_stoch随机指标 KDJBRead-only
直连版:拉取 K 线后计算随机指标,返回稳定 K / D / J 三元组序列(kPeriod / kSmoothing / dPeriod 可调)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| dPeriod | No | ||
| kPeriod | No | ||
| interval | Yes | ||
| kSlowing | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark it readOnly and openWorld, and the description adds that it computes from pulled K-line data and returns a K/D/J sequence. It does not cover failures or odd-specific shape, but the readOnly annotation reduces the need for mutation/risk disclosure.
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 that states the input action, the output format, and the tunable parameters with minimal filler.
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 output schema and read-only annotations exist, the definition is almost sufficient for simple invocation. However, the kSmoothing/kSlowing mismatch and lack of usage context leave a meaningful gap in advisory quality.
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 tries to add parameter meaning by listing kPeriod/kSmoothing/dPeriod as adjustable, but the schema only contains kSlowing, not kSmoothing, so an agent could generate an invalid parameter. Since schema description coverage is 0% and limit/symbol/interval meanings are left unstated, the description does not fully compensate for the schema gap.
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?
Description clearly states it pulls candlesticks and computes a KDJ stochastic indicator, returning a K/D/J triple series. This specific output distinguishes it from generic 'indicator_*' 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?
No guidance is given on when to choose KDJ versus the many sibling indicator tools, and no exclusions or alternative conditions are stated. '直连版' hints at a variant but does not explain when to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_super_trendSuperTrendARead-only
直连版:拉取 K 线后计算 SuperTrend,返回稳定序列(supertrend 值 + BULLISH/BEARISH 方向)。period 为 ATR 周期,multiplier 为通道倍数。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| period | No | ||
| symbol | Yes | ||
| interval | Yes | ||
| multiplier | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注解已声明 readOnlyHint=true,描述补充了“拉取 K 线后计算”和“返回稳定序列”,这增加了对于工具行为的理解。但没有对数据源、稳定序列的含义或限制、是否依赖历史K线等做进一步披露。
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?
描述只有两句话,并且把主要行为、返回内容放在第一句,参数说明放在第二句,无冗余信息,阅读成本低。
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?
有输出 schema 作为补充,描述已覆盖算法来源和返回形态,但缺少 limit 的含义、直连版本的适用场景以及与其他 indicator 类工具的区分。对于一个需要 5 个参数的工具而言,本描述的信息仍不够完整。
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?
描述补充了 period 为 ATR 周期、multiplier 为通道倍数的语义,这两个定义是 schema 中缺失的。但它没有描述 symbol、interval、limit 的确切含义做到,另外定义不够完整;至少覆盖了部分核心参数。
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?
描述明确说明“直连版”是拉取 K 线线后后计算 SuperTrend 并返回“supertrend 值 + BULLISH/BEARISH 方向”,给出了具体动词、资源和输出形态,能够清晰区分。
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?
描描述没有说明在什么场景下优选此工具、何时应使用其他替代工具,也没有给出排除条件。虽然提到“直连版”,但这并不能让 agent 清楚它与其它 indicator 类工具的分工
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_volatility_regime波动率状态分类BRead-only
直连版:基于布林带宽百分位判断 squeeze / low_volatility / normal / high_volatility / expansion,辅助仓位管理。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| bbPeriod | No | ||
| interval | Yes | ||
| lookback | No | 带宽百分位历史比较窗口(K 线根数) |
Output Schema
| Name | Required | Description |
|---|---|---|
| regime | Yes | |
| bandwidth | Yes | |
| percentile | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true and openWorldHint=true, so the description only needs to supplement actual behavior. It adds the algorithm source (Bollinger bandwidth percentile) and output categories, which give useful transparency. It still omits minor behavioral details such as what happens with insufficient data or whether the output is a series or single-of-state, though output schema metrics may cover some of this.
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 compact one-liner that carries the formula, categories, and intended purpose without redundant wording. The qualifier '直连版' is slightly unexplained but does not bloat the sentence. It is near-ideal in size and accessibility.
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?
An output schema exists, so the return-value description is not strictly needed. The formula, output states, and position-management purpose give the core context, but the absence of sibling-tool routing and full parameter population left the agent somewhat limited when disambiguating this tool, from Bandwidth and ATR or setting the right limit.
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 20% since only, lookback has a schema description. The description indirectly connotes meaning for bbPeriod and lookback via '布林带宽百分位', but it does not expressly name or explain all parameters like limit, symbol, or interval. It partially compensates for the missing schema documentation, so semantics are clearer than a bare param-list but still incomplete.
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 clear verb-based role: it classifies volatility regimes from Bollinger bandwidth percentile and enumerates the five output states (squeeze, low_volatility, normal, high_volatility, expansion). This makes the tool functional-purpose obvious, though it does not explicitly contrast with sibling volatility indicators such as bbands or ATR.
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 '辅助仓位管理' provides a plausible use context (position sizing decisions). However, it does not say when to choose this over alternations like indicator_bbands or indicator_atr, nor defines exclusion conditions or setup prerequisites. The use case is inferred, not explicitly routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indicator_vwap成交量加权平均价BRead-only
直连版:拉取 K 线后计算累计 VWAP,返回稳定序列。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark the tool readOnlyHint/openWorldHint, and the description adds useful behavior beyond that: it fetches K-lines, computes a cumulative rather than rolling VWAP, and returns a stable sequence. This gives real insight into the computation model without contradicting 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?
One short sentence with no filler. The core mechanism is front-loaded ('直连版') and the computation objective is stated directly, making the description easy to process.
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 indicator with only three parameters and an output schema, the description is nearly sufficient for calling the tool. However, the vague '直连版' term and the absence of parameter and usage context leave some room for an agent to mis-model when and how to invoke it.
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%, and the description does not compensate by explaining symbol, interval, or limit. It only implies K-line context, so the agent must rely entirely on the property names and enum values without any descriptive clarification.
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 clear action and resource: pull K-lines, compute cumulative VWAP, and return a series. It clearly distinguishes this from trading tools, but it does not explicitly contrast it with the sibling indicator tools such as indicator_sma or indicator_ema. The overall purpose is clear even without sidder differentiation.
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 guidance about when to use VWAP relative to other indicators, or which conditions favor this '直连版' over any alternative. '直连版' hints that another version may exist, but no alternative, tradeoff, or exclusion is described.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_24hr_ticker24h 行情统计ARead-only
获取 24h 滚动统计(涨跌幅/高低价/成交量额)。缺省 symbol 返回全市场(weight 高,慎用)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
annotations 已声明 readOnlyHint 和 openWorldHint,描述在此基础上补充了全市场调用成本高的风险提示,对 agent 实际调用有实质价值。未提限频、返回体量等,但已有注解覆盖安全性,这仍高于基本要求。
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?
整个描述一句话完成,主行为在前,调用警告在后,没有重复 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?
对单参数、有安全注解、无输出 schema 的工具来说,已交代用途、返回维度、缺省行为和高成本风险。缺少数显式替代条件与 symbol 格式示例,但对于这类简单只读行情工具已达到足够完整度。
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 仅有一个可选的 symbol,且描述覆盖率为 0;描述明确说明缺省 symbol 时的语义是会返回全市场并带来高 weight,这超出 schema 本身的信息。虽然没有给出 symbol 写法示例,但 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?
描述以具体动词“获取”指明行为,“24h 滚动统计(涨跌幅/高低价/成交量额)”明确资源类别,并与 market_price、market_book_ticker 这类实时快照工具区分。缺省 symbol 返回全市场这一行为也进一步明确了工具边界。
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?
描述了缺省 symbol 时返回全市场,并明确提示 weight 高、慎用,这是清晰的调用条件。虽然没有显式列举可替代工具,但已提供了决定“带 symbol 还是不带”的直接指导。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_book_ticker最优买卖报价ARead-only
获取最优买/卖价与数量(比订单簿轻量)。缺省 symbol 返回全市场(weight 高,慎用)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With readOnlyHint and openWorldHint already declared safe, the description adds real behavioral value by noting that omitting symbol changes the scope to the entire market and increases API weight. This is beyond both the schema and annotations and helps the agent avoid an expensive accidental call.
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 parenthetical-clauses, each crucial: no inherited wasted. The core return value is front-loaded, the weight caveat at the end is essential. Every sentence earns its place.
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 low-complexity light market data tool with no output schema, the description fully enough: what it returns, that it is lighter than the orderbook, and the scope/weight implication of the default. The agent can select and call it confidently without missing unknown consequences.
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 description coverage is 0%, but the description compensatesru: 'symbol' semantics by explaining that omitting symbol returns the whole market, and 'weight high, use with caution'. The only param is self-evidently a market ticker symbol, so absentity of format examples is a meaning gap but not a serious one.
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 in Chinese that this retrieves the best bid/ask price and quantity, which is a specific verb + resource. It also explicitly distinguishes it from the order book by calling it lighter, making it easy to tell apart from market_orderbook and other 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear selection context: use it when you need top-of-book prices, and it contrasts with the full order book. It also warns that omitting symbol returns the whole market with a high weight, so an agent knows when to be cautious. It stops short of naming an explicit alternative tool, but the intended contrast to the order book is evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_continuous_klines连续合约 K 线BRead-only
获取连续合约(如季度/永续)的 K 线。
| Name | Required | Description | Default |
|---|---|---|---|
| pair | Yes | ||
| limit | No | ||
| interval | Yes | ||
| contractType | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint and openWorldHint, covering the main safety and completeness expectations. The description adds no further behavioral detail about paging, limits, returned data shape, or differences across contract types, so it is adequate but not enriching.
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, front-loaded sentence with no filler. Every word contributes to identifying the resource 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?
Given the tool has 4 parameters, no output schema, and no parameter documentation, the one-line description is insufficient for an agent to confidently call the tool in edge cases such as choosing between contract types or understanding limit behavior.
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 description coverage is 0%, so the description was expected to carry parameter meaning. It explains none of pair, limit, interval, or contractType beyond the overall concept of K线. The agent must rely entirely on parameter names and schema enums.
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 ('获取') and a specific resource ('连续合约…的K线'), with examples (季度/永续) that help disambiguate it from the more generic sibling market_klines. It does not explicitly name the sibling, so it stops short of full differentiation.
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 intended usage is implied: use this tool when continuous-contract candlestick data is needed. However, it does not explicitly say when not to use it, nor does it point to market_klines or another alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_exchange_info交易规则ARead-only
获取交易对精度规格(价格/数量小数位、tickSize、stepSize、最小名义价值)。缺省返回全市场(数据量大,慎用)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond readOnlyHint, the description discloses default all-market behavior, large payload risk, andespecific fields returned. It does not mention pagination or response shape, but the operation is a simple read-only info lookup and annotations already cover safety.
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 concise clauses, front-loaded with the core purpose and fields, followed by a caution. Every sentence earns its place and there is no indentation or unrelated text.
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 exchange-information tool with one optional parameter and no output schema, the description covers the return content and the all-market cas. It does not mention exact output container/format, but the named fields provide enough.
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 must define symbol semantics. The description implies that symbol filters to a trading pair by saying 'default returns all market', but it never explicitly states the symbol format/value and does not explain what the parameter represents in relation to the output. It compensates partially but not fully for the empty 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 names a specific verb+resource: obtain trading-pair precision specifications, and enumerates the returned fields (price/qty decimals, tickSize, stepSize, minnotional). This clearly distinguishes it from sibling market book/ticker/kline 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?
It tells the agent that omitting symbol returns he entire market and warns that the payload is large and should be used carefully, which implies passing a symbol to limit scope. It could be stronger with an explicit 'use this when you need precision/exchange rules rather than market data or trading operations', 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.
market_funding_rate资金费率规则ARead-only
获取全市场资金费率规则(各币种费率上下限与结算间隔,无 symbol 过滤,weight 高慎用)。查单交易对当前费率数值请用 market_mark_price。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal read-only and open-world, but the description goes beyond them by exposing a high-usage cost ('weight 高慎用') and the unparameterized global scope. It also clarifies that the output contains rules, not current values, which is a key operational distinction.
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 compact and front-loaded: it states the exact endpoint purpose, the returned fields, the no-filter scope, a usage-cost warning, and a sibling alternative. Every clause adds value, and there is no redundant prose.
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 no parameters and no output schema, the description nonetheless tells the agent what it will receive (rules for all currencies: upper/lower rate limits and settlement intervals) and how it differs from the current-pair tool. The agent can invoke the tool correctly without further documentation.
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 input schema is empty, so there are no parameters to document. The description still adds meaning by making clear that symbol-level filtering is intentionally absent, preventing an agent from looking for a symbol parameter that does not exist.
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 the exact verb and resource: '获取全市场资金费率规则' and spells out what it returns (费率上下限与结算间隔). It also distinguishes itself from a sibling by noting that current single-pair funding values belong to market_mark_price, so the agent can tell tools apart without opining schemas.
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?
It states scope explicitly ('无 symbol 过滤') and warns the weight is high, so the caller should use it sparingly. It also gives a concrete alternative with a clear conditional: for a single trading pair's current funding rate, use market_mark_price.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_funding_rate_history历史资金费率BRead-only
获取指定交易对的历史资金费率记录。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds that the result is a historical record of funding rates, but it does not disclose behaviors such as ordering, time range, what happens when no symbol is provided, or whether the rate is the latest vs. per-interval. 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 one clean, front-loaded sentence with zero filler. It states the exact action and resource without any redundant explanation, so it earns its place.
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?
While the tool is simple and has annotations protecting safety, the description does not clarify any alternative use case versus siblings, the meaning of `limit` in plain terms, or the expected behavior when `symbol` is omitted. For a two-parameter read-only tool, this is minimally acceptable but leaves some gaps an agent would have to infer from the schema.
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 must compensate for parameter meaning. It partially clarifies that 'symbol' refers to a trading pair via '指定交易对', but it says nothing about `limit` other than what the schema fields already provide (default, min, max). The description does not explain the meaning of the records returned or how the limit affects them.
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 ('获取' / get) and resource ('指定交易对的历史资金费率记录' / historical funding rate records for a specified trading pair). Using '历史' clearly distinguishes this from the sibling `market_funding_rate`, making its purpose unambiguous.
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 explicit when-to-use or when-not-to-use guidance and does not mention alternatives like `market_funding_rate` or `market_mark_price`. The only implicit signal is the word '历史' (historical), which the agent must infer means this tool is for past data rather than current funding rate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_klinesK 线历史BRead-only
获取指定交易对与周期的 K 线(含 OHLCV 与成交信息),支持时间范围过滤。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| endTime | No | ||
| interval | Yes | ||
| startTime | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds context about the return content (OHLCV and trade info) and time-range support, but does not disclose pagination, ordering, or any other parser-specific behavior. Acceptable but not rich.
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 in Chinese that front-loads the main operation ('获取指定交易器与周期的 K 线') and adds useful detail (OHLCV, volume, time range). Every part contributes value; there is no haffle.
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 is a simple read-only data retrieval operation, and annotations already cover its read-only nature. The description states the object, key parameters, and time-range filtering; with an output schema present, it does not need to explain return structure. Minor absence of limit/> pagination and clear sibling distinction leaves it 1 point short of 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?
With schema coverage at 0%, the description carries most param burden. It clarifies that `symbol` means trading pair and `interval` means period, and that `startTime`/`endTime` form a range filter. However, `limit` is never mentioned, and the schema has no per-parameter descriptions, so some parameter semantics still rely on type names/defaults.
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 '获取' and the resource 'K线' with specific scope (trading pair and cycle) and content (OHLCV plus volume/trade info). It does not explicitly distinguish itself from the sibling `market_continuous_klines`, so it falls short of 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 gives no guidance on when to use this tool versus alternatives like `market_continuous_klines` or `market_price`. It only mentions an available feature (time-range filtering), without stating prerequisites, exclusions, or alternative conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_mark_price标记价ARead-only
获取标记价、指数价与资金费率信息。查单交易对资金费率数值(lastFundingRate + nextFundingTime)首选本工具。缺省 symbol 返回全市场(weight 高,慎用)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so the safety profile is covered. The description adds meaningful behavioral context around default behavior (omitting symbol returns full market) and the high weight cost, which is useful for an agent deciding whether to invoke the tool.
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 short and well-structured: the main resource is stated first, the preferred use case is next, and a caution about default behavior closes it. Every sentence earns its place with no redundant content.
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 single optional parameter, read-only annotations, and no output schema, the description covers the essential invocation-relevant details. It lacks an explicit symbol format example, but the caution about missing symbol and the funding-rate fields named make it sufficiently complete for an agent to select and call the tool 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?
The schema only defines an optional string symbol with no description, so the description carries the parameter-semantics burden. It explains that symbol targets a single trading pair and that omitting it means full-market data, which adds real meaning; however, it does not specify the expected symbol format.
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 and resource: it fetches mark price, index price, and funding rate information. It also differentiates itself by calling out the single-trading-pair funding rate values use case, which helps an agent distinguish it from related 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?
The description gives clear usage context: use this tool first when querying a single trading pair's funding rate values, and warns that omitting symbol returns the whole market with high weight. It does not explicitly name a specific sibling alternative, but the '首选本工具' guidance makes the intended use case clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_open_interest未平仓量ARead-only
获取指定交易对当前未平仓量。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| time | Yes | |
| symbol | Yes | |
| openInterest | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already mark this as readOnlyHint=true, and the description adds that the result is 'current' and scoped to a pair. It does not mention freshness, rate limits, or behavior on invalid symbol, but for a read-only snapshot that gap is acceptable.
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?
One single sentence with no redundant words or filler. The important resource and scope are 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?
For a one-parameter read-only tool with an output schema and annotations covering safety, the description is nearly sufficient. The only remaining gap is the exact symbol format and possibly supported contract type, but those are minor for a simple 'get by symbol' tool.
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 supplies a bare 'symbol' string with no description and 0% schema description coverage. The description clarifies that symbol means '交易对', but it does not define the expected format, casing, or exchange convention, so the parameter semantics is only partially compensated.
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 and object: it '获取' the '当前未平仓量' for a given trading pair. This clearly distinguishes the resource from market_price, market_funding_rate, and other sibling tools, but it does not explicitly name any sibling or contrast itself.
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?
Description does not explicitly provide when to use or when not to use this tool. The intended usage is inferred because the resource is open interest; however, with 50+ sibling tools in the market domain, no explicit guidance is given for selecting this one over a more general market tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_orderbook订单簿深度ARead-only
获取指定交易对的买卖盘快照。limit 合法值 5/10/20/50/100/500/1000。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations readOnlyHint=true and openWorldHint=true already convey the read-only, potentially changing nature of the data, and the description does not contradict them. The description adds meaningful behavioral guidance beyond the annotations by constraining limit to legal values (5/10/20/50/100/500/1000), which the schema leaves effectively unbounded. It does not describe the ordering of the bid/ask sides, a minor gap for a read-only snapshot tool.
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 compact: one clause establishes the action, one clause delivers the parameter constraint. Every sentence earns its place, and the most decision-relevant information (legal limit values) is front-loaded immediately after the purpose.
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 two simple parameters, a read-only and open-world annotation set, and no output schema, the description covers what the agent needs in order to invoke the tool correctly: the supported symbol and the admissible limit values. A short note on return shape (e.g., sides/ordering) would be a nice addition since no output schema exists, but it is not blocking for a basic snapshot call.
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?
At 0% schema description coverage, the description compensates well: the phrase '指定交易对' explains what the symbol parameter means, and the explict enumeration of legal limit values (5/10/20/50/100/500/1000) provides far more precision than the schema's meaningless numeric bounds. It does not explain whether the limit applies to each side or the total depth, but the core meaning of both parameters is in place.
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 a specific action and resource: '获取指定交易对的买卖盘快照' (fetches a snapshot of the order book for a specified trading pair). It is unambiguous about which resource it concerns, though it does not explicitly contrast itself with the similarly named sibling market_book_ticker.
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 when-to-use or when-not-to-use guidance. The description never explains why an agent should choose this tool instead of market_book_ticker (best bid/ask) or market_klines (candles); an agent is left to infer the use case from the tool name and purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_overview市场快照ARead-only
一次返回单个交易对的完整分析数据(行情/流动性/资金/情绪/指标/派生量),供 AI 直接解读并给出分析结论。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| interval | No | 1h |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| price | Yes | |
| candles | Yes | |
| capital | Yes | |
| derived | Yes | |
| liquidity | Yes | |
| sentiment | Yes | |
| indicators | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds that the tool aggregates many analysis dimensions in one call, which is useful behavioral context. It does not disclose how `limit` and `interval` shape the returned snapshot, nor any timing or completeness caveats, though the schema and annotations reduce the burden.
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 one efficient sentence: it front-loads the single-call behavior, defines the scope as one trading pair, lists the major analysis categories, and states the intended downstream use. There is no filler, repetition, or redundant restatement of the tool name.
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 read-only annotation, the existence of an output schema, and only one required parameter, the description is almost sufficient for an agent to call the tool. The main missing piece is the semantics of `interval` and `limit`, since the description does not clarify whether they affect the analysis window, sample size, or underlying data aggregation.
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 should compensate. It adds meaning for `symbol` ('single trading pair'), but it does not explain what `interval` or `limit` mean in the context of a market overview, nor how defaults and bounds affect the result. The parameter names and schema constraints are only partially self-explanatory.
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 clear verb and resource: it returns a complete analysis snapshot for one trading pair in a single call, covering market, liquidity, funds, sentiment, indicators, and derived values. It is clearly meant for direct AI interpretation and conclusion generation. It does not explicitly contrast itself with individual sibling tools, but the aggregate-scope is distinctive enough.
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 clearly indicates its intended use: when an AI needs a comprehensive single-pair overview in one shot and will interpret the results directly. It also restricts scope to a single trading pair. However, it does not explicitly name alternative tools or describe when not to use it in favor of a specific market/indicator endpoint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_ping连通性测试ARead-only
测试与币安交易所 REST API 的连通性。无需参数,成功返回 { ok: true }。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already indicate read-only and open-world behavior, and the description reinforces that by stating the tool only tests connectivity and returns a simple success object. It also discloses the expected success response, which adds value beyond the annotations. It does not describe failure behavior, but that is a minor omission for a ping tool.
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 purpose, mentions the lack of parameters, and states the expected return value. Every word adds information, with no redundancy or filler.
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 no-parameter connectivity test with an output schema and readOnly annotations, the description provides all necessary information: what it tests, that no parameters are needed, and what a successful result looks like. Nothing required for an agent to select and invoke this tool is missing.
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?
There are zero parameters, and the description explicitly states 'no parameters required,' which removes any ambiguity. The baseline for zero parameters is 4, and the description fully confirms this without needing extra param details.
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 action (testing connectivity) and a specific resource (Binance exchange REST API), and clearly differentiates itself from sibling market data tools by focusing on connectivity rather than data retrieval. It is not a tautology and adds detail beyond the tool name.
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 clearly conveys that this tool is used for a connectivity check and explicitly notes that no parameters are required. It does not name alternative tools or specify when not to use it, so it falls short of the 'explicit when/when-not' bar, but the use case is obvious and unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_price最新成交价BRead-only
获取交易对最新成交价。返回 symbol 与 price(number 类型)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| price | Yes | |
| symbol | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注解已经声明 readOnlyHint 和 openWorldHint,因此安全性和网络属性已覆盖。描述补充了返回值字段 symbol 和 price(number 类型),但未说明数据时效性、缓存或异常行为;对这类简单查询可接受。
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?
描述仅两句,第一句即点明核心动作和对象,第二句说明返回值,信息密度高且无冗余。结构十分简洁高效。
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?
工具本身只有一个参数,且存在输出 schema,返回结构不必由描述完整展开。整体说明足够支撑调用,但缺少 symbol 写法和命名惯例,因此略距“完全完整”一步。
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 覆盖率为 0%,描述必须承担参数语义。描述中“交易对”暗示 symbol 代表交易对,但没有说明 symbol 的具体格式(如 BTCUSDT 还是 BTC/USDT),也没有任何约束说明。描述未能充分弥补缺少参数文档的问题。
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?
描述明确指定了动作和资源:获取指定交易对的最新成交价。成交价一词能与同类的 market_mark_price、market_24hr_ticker 等工具自然区分,但没有显式点出替代工具,因此略低于最高分。
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?
描述没有说明何时应使用本工具而不使用其他市场数据工具,也没有排除性说明,例如不需要深度数据时使用 market_price、需要标记价格时使用 market_mark_price 等。使用场景只是隐含在名称和描述中。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
market_time服务器时钟ARead-only
获取币安交易所服务器时间(毫秒时间戳),用于时钟同步与签名校验。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| serverTime | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already tells the AI the operation is safe and non-mutating. The description adds the precise return type and use-case context, which is useful but modest.
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?
One precise sentence with no filler: it states what is returned, the unit, and the intended purposes. Every phrase carries information.
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 zero-parameter, read-only, server-time tool with an output schema present, the description is complete. An agent knows exactly what to expect and how to use the result.
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?
There are no parameters, and the schema describes this fully with 100% coverage. A clear description is still helpful to mention what the tool actually retrieves.
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 and resource: it fetches Binance server time as a millisecond timestamp. This clearly distinguishes it from sibling trading and 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.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It explicitly gives usage context: clock synchronization and signature verification. It does not name alternatives or exclusion cases, but with zero parameters and a unique purpose, the given context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_account账户总览ARead-onlyIdempotent
返回:钱包余额 / 未实现盈亏 / 保证金等汇总。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| availableBalance | Yes | |
| totalMarginBalance | Yes | |
| totalWalletBalance | Yes | |
| totalUnrealizedProfit | Yes | |
| totalPositionInitialMargin | Yes | |
| totalOpenOrderInitialMargin | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations (readOnlyHint, idempotentHint, openWorldHint) already cover the safety profile, so the description's burden is low. It adds one useful fact: the response is an aggregated 汇总 of wallet/UP/L/margin. It does not reveal whether the numbers are real-time, cached, or aggregated across all account assets, but for a simple read-only overview the output schema likely covers that - the description also completes the annotations without any attribution.
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?
One short sentence, front-valued verb and enumerated result categories, and no fluff. The Chinese phrasing is compact and precise; every element earns its line space. Even the title and description together leave no repetition.
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 zero-parameter, read-only, idempotent tool with an output schema, this definition is nearly complete: an agent can sed it and understand what should come back (the summary categories), since schema/annotations cover the rest. The one missing piece is an explicit relation to sibling trading_balance to prevent picking the wrong account tool, but given the tool's low complexity, this is a small omission.
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 tool admits zero parameters, so the baseline for parameter semantics is 4; there is nothing the description needs to document. The field list (wallet balance, unrealized P&L, margin) tellingly shapes the no-arg call's result, which is all the param-aware an agent can ask given an empty 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 ('返回' - returns) plus the resource: wallet balance, unrealized P&L, margin summaries. It clearly conveys an account-overview aggregation, reinforced by the title 账户总览. It does not explicitly distinguish itself from sibling tools such as trading_balance, so it falls a step short of 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?
There is no guidance on when to invoke this tool versus alternatives, and with dozens of trading siblings including trading_balance, trading_positions, trading_position_mode, and trading_position_margin, an agent gets no routing hint because it is a summary-use it. The 'when-to-use' must be completely inferred, so this is effectively implied-only minimal formulation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_algo_orders条件单列表ARead-onlyIdempotent
返回:当前挂出的未触发条件单。symbol 可选。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already cover read-only, idempotent, and open-world behavior, so the safety profile is clear. The description adds the scoping detail that only current un-triggered conditional orders are returned, but it does not mention pagination, output shape, or what happens when symbol is omitted. No contradiction with annotations exists.
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 two short sentences, front-loads the return purpose, and contains no filler. It is appropriately compact, though its terseness is part of why some semantic and routing details are missing.
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 read-only list endpoint with one optional parameter and no output schema, the description covers the essential contract: what is returned, that the orders are current and un-triggered, and that symbol can be used. Pagination or response shape details would be nice, but are not critical for making the call 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 description coverage is 0%, and the description only says 'symbol 可选'. This conveys that symbol is optional, but it does not explain the symbol format, whether omitting it returns all symbols, or whether it functions as an exact filter. For a one-parameter tool this is workable, but the description does not fully compensate for the empty 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 the specific operation: return currently pending, un-triggered conditional orders. The qualifier '条件单/未触发' clearly distinguishes this from related order endpoints like trading_open_orders, trading_order_history, and trading_get_order.
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 clearly identifies the intended context: retrieving current conditional orders, with symbol as an optional filter. It does not explicitly say when not to use it or which sibling endpoint to choose for regular open orders, historical orders, or single-order lookups, so the routing guidance is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_balance资产余额ARead-onlyIdempotent
返回:账户全部资产余额(含未实现盈亏)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and idempotentHint=true, so the safety profile is covered. The description adds useful behavioral scope by specifying '全部资产余额' and including unrealized P&L, with no contradiction to 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?
One short sentence with no filler. The key information is front-loaded, and every part of the description earns its place.
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 parameterless read-only tool with an output schema and safety annotations already provided, the description is complete. It states exactly what is returned and that unrealized P&L is included, leaving no invoke-time ambiguity.
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 input schema has zero parameters and 100% schema description coverage, so no parameter details are needed from the description. The baseline 4 applies because there are no parameters whose meaning could be ambiguous.
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?
Description specifies a verb (返回) and a clear resource (账户全部资产余额), and further clarifies the return content with 含未实现盈亏. This distinguishes it from related siblings like trading_positions and trading_account, even without explicitly naming them.
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 intended use is implied by the tool name and description: any time an agent needs the account's full asset balance including unrealized P&L. However, there is no explicit guidance or exclusion pointing to alternatives such as trading_positions or trading_account.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_cancel_algo撤销条件单BDestructive
撤销条件单。clientAlgoId 与 algoId 二选一。
| Name | Required | Description | Default |
|---|---|---|---|
| algoId | No | ||
| clientAlgoId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds no behavioral detail beyond what annotations already convey: readOnlyHint is false and destructiveHint is true. It does not mention irreversibility, what happens on success/failure, or any side effects after the cancel request. The description is consistent with the annotations, so there is no contradiction.
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 sentence that front-loads the purpose and then adds the key parameter constraint with no redundant filler. Every part earns its place.
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 two-parameter destructive tool and no output schema, the description captures the essential: cancel the conditional order and provide one of two identifiers. However, it lacks guidance on behavior for invalid identifiers, both-or-neither ID cases, and possible response behavior, so the invocation context is only minimally 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?
With 0% schema description coverage, the description must compensate. It adds the crucial one-of relationship ('clientAlgoId 与 algoId 二选一'), which is not visible in the input schema. However, it does not define what each ID represents or how they differ, leaving partial semantic burden on the parameter names alone.
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 explicitly states the action ('撤销条件单' = cancel conditional order), naming the resource type as conditional/algorithmic orders. This clearly differentiates it from regular order cancellation tools like trading_cancel_order, but it does not explicitly named-and-distinguish sibling 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?
The description only gives the parameter constraint that clientAlgoId and algoId are mutually alternative; it does not say when to use this tool rather than trading_cancel_all or trading_cancel_order, nor what to do if the order was already filled or does not exist. There is essentially no play/sibling guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_cancel_all撤销全部未成交ADestructive
撤销指定交易对全部未成交订单。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations 已声明 destructiveHint=true、readOnlyHint=false,而描述进一步明确了破坏范围为“指定交易对的全部未成交订单”,补充了操作规模和对象。描述与 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?
整个描述只有一句简短完整的中文,信息密度高,没有冗余内容,也没有重复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?
作为销毁性操作,描述说明了取消范围和对象,但缺少 symbol 格式约束、取消后的返回行为,以及是否对已提交未成交的算法订单生效等上下文。由于没有输出 schema,描述本身并未完整覆盖调用者可能需要的全部行为信息。
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 只有一个 symbol 参数且无任何说明,schema 描述覆盖率为 0%。描述中的“指定交易对”为 symbol 参数提供了基础语义,但未说明 symbol 的具体数值格式(如 BTCUSDT 还是 BTC/USDT),也没有给出示例,因此补偿有限。
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?
描述包含明确动词“撤销”、目标资源“全部未成交订单”以及作用范围“指定交易对”,清晰说明工具功能。它与同组工具 trading_cancel_order(撤销单个订单)和 trading_cancel_algo(撤销算法订单)在语义上可区分。
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?
描述隐含了使用场景:需要撤销某个交易对的全部未成交订单时使用。但没有明确说明在单笔撤单时应改用 trading_cancel_order,也没有给出任何“何时不要使用”或替代工具的排除说明,属于隐含而非显式指导。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_cancel_order撤单ADestructive
撤销指定订单。orderId 与 origClientOrderId 二选一。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | ||
| orderId | No | ||
| origClientOrderId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already provide destructiveHint=true and readOnlyHint=false, covering the mutating nature. The description states the action (cancel) and the scope (specified order) but does not disclose additional behavioral traits such as idempotency, failure conditions for already-filled orders, or whether the order is removed permanently. It adds marginal scope context beyond the annotations, warranting a median score.
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 one short sentence that front-loads the primary action and then adds the critical identifier-choice constraint. It avoids fluff, every clause earns its place, though it is terse rather than comprehensive.
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 3 parameters, no output schema, and only a sparse description. It communicates the core action and the key identifier constraint, but omits details such as when cancellation might fail, the need to specify symbol alongside the chosen ID, and any confirmation behavior. This is acceptable but not fully complete for an agent to understand all edge cases.
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 has 0% description coverage, so the description must clarify parameters. It does this effectively by stating "orderId 与 origClientOrderId 二选一" — indicating the two identifiers are mutually exclusive alternatives (pick one). This is essential information absent from the JSON schema, but it still does not explain the symbol parameter's role, which remains minimal.
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 begins with a specific verb+resource pair: "撤销指定订单" (cancel the specified order). The word "指定" (specified) directly distinguishes it from the sibling tool trading_cancel_all, which cancels all orders, so the agent knows which tool is relevant for a targeted cancellation.
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 usage: cancel one specific order identified by orderId or origClientOrderId. It does not explicitly state when to avoid this tool (e.g., when wanting to cancel all orders, use trading_cancel_all) nor mention any preconditions like the symbol being required. It provides a parameter-choice guideline but no broader usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_commission用户费率ARead-onlyIdempotent
返回:指定交易对的 maker/taker 费率(含 VIP 折扣与 BNB 抵扣)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| symbol | Yes | |
| makerCommissionRate | Yes | |
| takerCommissionRate | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnly, idempotent, and openWorld behavior, so the description does not need to restate safety. It does add useful context about the inclusion of VIP discounts and BNB deduction in the returned rate, which goes beyond the annotations and clarifies rate semantics.
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 sentence with a clear front-loaded action and the key scope immediately after it. It contains no filler, redundant phrasing, or repetition of schema or annotation details, earning its place efficiently.
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?
This is a simple single-parameter read-only tool, and the description plus the available output schema are sufficient to guide a caller. The only minor gap is that the exact expected symbol format is not specified in the description, but the schema field name and simple shape keep the completeness high.
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 has no description for the 'symbol' parameter, and schema coverage is 0%. The description compensates by identifying the parameter as the '指定交易对' (specified trading pair), which directly maps to 'symbol'. This gives essential meaning even if it does not specify the exact string format like 'BTCUSDT'.
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 ('返回') and a precise resource: maker/taker rates for a specified trading pair. It also adds detail about VIP discounts and BNB deduction, making it distinct from any market or position-focused sibling tools. There is no ambiguity about what this tool returns.
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 usage: call it to retrieve fee rates for a given trading pair. It does not explicitly discuss when to prefer this tool over alternatives, but no sibling has a similarly direct fee-return purpose, so the context is reasonably inferable. The absence of explicit exclusions or alternative routing keeps it at a mid score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_force_orders强平订单CRead-onlyIdempotent
返回:强平/自动减仓(ADL)订单记录。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | No | ||
| autoCloseType | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The provided annotations readOnlyHint/idempotentHint already cover the safety profile, and the description adds that the returned records are specifically force-liquidation/ADL. However, it discloses no additional behavioral details like pagination limits, what populates the 'ADL' vs 'DIQUIDATION' subtypes, or open-world behavior 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 conveys the core return type. It is appropriately compact, though the compactness comes at the expense of the other information an agent needs.
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 no output schema, no parameter descriptions, and no usage notes, the description is too thin to be considered complete. An agent cannot know how to safely or usefully set 'limit', 'symbol', or 'autoCloseType' from the description alone, nor what fields the returned record list will contain.
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?
There are 3 parameters, schema description coverage is 0%, and the description does not mention any of them. Plot, autoCloseType, or how filtering works. The schema namesand enum are self-evident to some degree, but the description provides no extra semantic guidance, so it completely fails to compensate for the absence of property descriptions.
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 ('返回') and a precise resource ('强平/自动减仓(ADL)订单记录'), making the tool's purpose clear. It also inherently distinguishes this from general order-history tools, though it does not explicitly name a sibling.
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 context on when to prefer this over alternatives such as trading_order_history or trading_trades. There is neither an explicit 'when to use' statement nor any comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_get_order订单查询BRead-onlyIdempotent
返回:指定订单详情。orderId 与 origClientOrderId 二选一。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | ||
| orderId | No | ||
| origClientOrderId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注解已提供readOnlyHint=true、openWorldHint=true、idempotentHint=true,安全形态已被覆盖。描述补充了“orderId与origClientOrderId二选一”这一约束,但对获取行为、错误、返回格式等没有额外披露。未与注解矛盾。
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?
描述简洁紧凑,两句信息包含“返回结果”和“参数约束”,没有任何冗余内容。虽然可以更规范地改为一个完整句子,但在对效率和切题性上表现良好。
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?
对于工具的简单参数集合、该描述可一定程度上调用,但缺少“要查询的具体订单需要已知ID”这种应用场景提示,也没有提及返回值的形状或选型或许会因参数不同而异。它仍是“最小可用”而不算完整。
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?
模式描述覆盖率为0%,描述承担了部分参数解释:“orderId与origClientOrderId二选一”给出了两个参数的互斥选择关系,这对正确调用很关键。但未说明symbol参数、orderId的取值范围语义或origClientOrderId的格式,未完全弥补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?
描述以明确的动词“返回”加资源“指定订单详情”表明这是按订单ID查询订单详情的工具。通过“指定订单”与“orderId/origClientOrderId”可以看出它与其他订单列表类工具(open_orders/order_history)区分,虽然未明确点名兄弟工具。
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?
描述没有说明何时使用此工具而不是trading_open_orders、trading_order_orders等替代方案。除“二选一”的参数约束外,没有给出明确的使用场景、前置条件或排除条件。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_income收支流水CRead-onlyIdempotent
返回:资金费/手续费/已实现盈亏等流水记录。income 负数为支出。incomeType 合法值与官方枚举一致(如 FUNDING_FEE / COMMISSION / REALIZED_PNL)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | No | ||
| endTime | No | ||
| startTime | No | ||
| incomeType | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint, so the safety profile is covered. The description adds meaningful context (income negative means expenditure, incomeType consistent with official enum), but does not disclose pagination, ordering, time-range behavior, or response structure, so it is adequate rather than rich.
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 short sentences front-load the core return value, followed by the key convention about negative income and incomeType enum. There is no filler, though a bit more structure around parameters would improve completeness.
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 no output schema, the description should explain what fields each record contains, but it does not. Parameter semantics are incomplete for 5 optional params, and time range behavior is not explained. In a large sibling family, these gaps make the definition only minimally sufficient.
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 must carry the burden for explaining parameters. It only clarifies incomeType via examples and the 'official enum' note. It does not explain limit semantics, symbol format, or startTime/endTime units/format, and schema itself lacks descriptions, leaving agents to guess.
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 ('返回') and resource ('流水记录' of funding fee, commission, realized PnL), so an agent can identify it as an income/expense history tool. It does not explicitly differentiate it from trading_commission, trading_trades, or trading_account, so it falls short of 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?
No guidance is given about when to use this tool instead of alternatives like trading_commission or trading_trades. The intended use is only implied by the examples of income types, so agents browsing many siblings get little routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_modify_order改单ADestructive
修改未成交订单(仅 LIMIT)。orderId 与 origClientOrderId 二选一。
| Name | Required | Description | Default |
|---|---|---|---|
| side | Yes | ||
| price | Yes | ||
| symbol | Yes | ||
| orderId | No | ||
| quantity | Yes | ||
| origClientOrderId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal destructive behavior, and the description adds useful constraints: only unfilled orders and only LIMIT type are elligate for modification. It does not disclose deeper behavior such as whether existing order is replaced/caneled or how failures handled, but it meaningfully extends 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?
One sentence delivers the essential scope and constraint without filler. The key function and the orderId/origClientOrderId exclusivity are front-loaded, making the definition easy and fast to parse.
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 mutation tool with no output schema and no parameter descriptions, the definition is incomplete. It does not describe what happens after a successful modification, whether it replaces or cancels, possible failures, or how to know which side of the order to adjust. An agent would need substantial inferred knowledge to call it 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?
The schema description covers 0% of parameters, so the description must compensate. It clarifies that orderId and origClientOrderId are mutually exclusive, but it does not explain the meaning of symbol, side, quantity, or price beyond their raw schema names and constraints. This leaves significant semantics implied.
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 action ('modify unfilled orders') and an explicit scope restriction ('LIMIT only'). This clearly distinguishes the tool from place/cancel/get sibling tools and tells an agent exactly what resource it affects.
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 when to use the tool by restricting modifications to unfilled LIMIT orders, but it provides no explicit guidance about when to prefer this tool over trading_place_order, trading_cancel_order, or other alternatives. The scope is helpful but limited.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_open_orders未成交订单BRead-onlyIdempotent
返回:当前全部未成交订单。symbol 可选。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and idempotentHint, and the description adds the contextual scope (all current unfilled orders, optional symbol). There is no contradiction with annotations, but the description does not cover additional behavior such as pagination, market affects, or response structure.
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 two very short sentences with no fluff. Core operation and param optionality are front-loaded. Every word adds necessary content.
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 simple a simple read-only tool with only one optional parameter, the core capability is communicated. However, with schema coverage at 0 and no output schema, the description leaves the agent with very little context about acceptable symbol values or how results are returned; enough for basic usage but not fully 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?
The schema has only one parameter with no descriptions; the description merely says 'symbol 可选' and does not explain that the symbol filters the returned open orders or what format/values are expected. This is valuable only minimal information beyond the schema's optionality.
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 it returns all current unfilled orders ('当前全部未成交订单') and notes the optional symbol parameter. This is specific and useful, though it does not explicitly differentiate itself from sibling order-related tools such as trading_order_history or trading_get_order.
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 explicit when-to-use guidance or alternatives. The word '当前' hints that this is for current open orders rather than historical ones, but it does not tell the agent when to choose this tool over other trading order tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_order_history历史订单BRead-onlyIdempotent
返回:指定交易对的历史订单(时间倒序)。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| endTime | No | ||
| orderId | No | ||
| startTime | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, covering the safety profile. The description adds that results are returned in reverse chronological order, which is a useful behavior, but it does not disclose pagination, default limit behavior, or how the optional filters interact.
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 front-loaded and wastes no words: it tells what is returned, for which resource, and in what order, in a single efficient sentence.
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 five parameters and no output schema, the description is too thin to fully guide a correct call. It only establishes the required symbol and ordering, while filter parameters, default limit, pagination, and output format are not addressed.
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%, and the tool description only refers to the symbol via 'specified trading pair'. startTime, endTime, limit, and orderId are not explained, leaving their filtering semantics and combination behavior to be guessed from schema names and constraints.
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 action ('returns') and resource ('historical orders') scoped to a specified trading pair, with order direction specified as time-descending. It does not explicitly contrast with sibling tools like trading_open_orders or trading_trades, but 'historical' conveys the core distinction.
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 is provided about when to use this tool versus alternatives such as trading_open_orders, trading_trades, or trading_get_order. There are no concrete conditions or exclusions, so the agent must infer use case from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_place_algo创建条件单ADestructive
创建条件委托(止损/止盈/追踪止损)。type 决定必填参数:
STOP_MARKET / TAKE_PROFIT_MARKET:需 triggerPrice
STOP / TAKE_PROFIT:需 triggerPrice + price(限价委托价)
TRAILING_STOP_MARKET:需 callbackRate(百分比,0.1~10),可选 activatePrice 触发价方向规则(违反将报 -2021 Order would immediately trigger):
止损类(STOP*):BUY 须高于最新价,SELL 须低于最新价
止盈类(TAKE_PROFIT*):BUY 须低于最新价,SELL 须高于最新价 closePosition=true 时触发后全平仓位,且要求该 symbol 已有对应方向持仓 (无持仓时报错 GTE can only be used with open positions),不可传 quantity / reduceOnly。 持仓模式:双向(Hedge)必须传 positionSide(LONG/SHORT),单向省略;可用 trading_position_mode 查询。
| Name | Required | Description | Default |
|---|---|---|---|
| side | Yes | ||
| type | Yes | ||
| price | No | 限价委托价,仅 STOP / TAKE_PROFIT 类型需要 | |
| symbol | Yes | ||
| quantity | No | ||
| reduceOnly | No | ||
| timeInForce | No | ||
| workingType | No | ||
| callbackRate | No | 追踪止损回撤百分比(0.1~10,1=1%),仅 TRAILING_STOP_MARKET 需要 | |
| clientAlgoId | No | ||
| positionSide | No | ||
| priceProtect | No | ||
| triggerPrice | No | 触发价。止损类 BUY 须高于现价 / SELL 须低于现价,止盈类相反 | |
| activatePrice | No | 追踪止损激活价,未达到前不开始追踪 | |
| closePosition | No | 触发后全平该合约仓位;为 true 时不可传 quantity / reduceOnly |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as non-read-only and destructive, but the description adds important behavioral context: trigger-direction constraints with the -2021 error, the requirement that closePosition implies existing position and shuts off quantity/reduceOnly, and hedge-mode positionSide requirements. This is exactly what an agent needs to predict side effects.
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?
Every sentence delivers a new usable rule; the typ-to-parameter mapping is fronted, choes have third constraints in short clauses, and there is no filler or schema repetition.
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 15-parameter, no-output-schema tool, it covers key decision and edge cases: what differs between order types, closePosition behaviors, direction constraints, and hedging mode. The missing return shape and unexplained option semantics for some optional fields keeps it from perfect completeness.
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 low (33%), and the description significantly compensates by explaining the parameter dependencies, required fields for each order type, the trigger-price direction rules, and closePosition/quantity conflict. A few optional params (timeInForce, workingType, priceProtect, clientAlgoId) are not meaningfully expanded on, so it is not a full 5.
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 a specific operation: creating conditional orders for stop-loss, take-profit, and trailing-stop scenarios. It lists the supported order types, so an agent can distinguish this tool from ordinary order placement siblings such as trading_place_order.
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?
It gives explicit type-driven usage rules: which params are required for STOP_MARKET vs STOP vs TRAILING, and special rules for closePosition and positionSide in hedge mode. It does not explicitly mention 'use trading_place_order instead for immediate orders', so it stops short of a perfect when-not-to-use statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_place_order下单ADestructive
下单(自动精度规整)。dryRun=true 时仅校验不提交。reduceOnly 仅单向模式可用。timeInForce 为 GTD 时必须提供 goodTillDate。持仓模式约束:单向省略 positionSide,双向(Hedge)必须传 positionSide(LONG/SHORT),可用 trading_position_mode 查询。
| Name | Required | Description | Default |
|---|---|---|---|
| side | Yes | ||
| type | Yes | ||
| price | No | ||
| dryRun | No | ||
| symbol | Yes | ||
| quantity | Yes | ||
| reduceOnly | No | ||
| timeInForce | No | ||
| goodTillDate | No | ||
| positionSide | No | ||
| newClientOrderId | No | ||
| newOrderRespType | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
注解已声明 readOnlyHint=false 和 destructivedestination,描述在此基础上补充了实际行为:自动精度规整、dryRun 的只校验不提交语义、reduceOnly 的模式限制,以及持仓模式对 positionSide 的约束。这些信息超出注解本身,帮助 agent 理解操作的动态规则,但未未涉及真实下单后的资金/保证金锁定等后果,属于适度而不是完全透明。
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?
描述由五个短句组成,用分散号清晰分隔,重要的一次性校验与模式约束前置,没有冗余修饰。每条信息都对应一个可操作约束,结构紧凑高效,符合高分标准。
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?
这是一个 12 个参数、无输出 schema、无参数描述、带 destructiveHint 的复杂资金操作工具。描述虽然覆盖了主要约束,但缺少 LIMIT/MARKET 与 price 的依赖关系、newOrderRespType 的语义、下单后返回/回执行为,以及精度规整的具体规则。对于一个会产生真实交易影响的工具,这些遗漏使 agent 在行动后无法准确预测结果。
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 描述覆盖率 0%,描述承担了很大责任,且确实对 dryRun、reduceOnly、positionSide、timeInForce、goodTillDate 等约 5-6 个参数补充了语义。但 price 与 LIMIT 的关系、quantity 的含义、newClientOrderId、newOrderRespType(ACK/RESULT) 等重要参数的语义仍完全未解释,仅凭枚举值无法让 agent 正确选择。
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?
描述明确以「下单(自动精度规整)」开头,给出了具体动作+资源,并且用「自动精度规整」点出了该工具的一个独特行为特征。标题和名称本身已清楚表明这是下单工具,但描述没有显式说明它与 trading_place_algo、trading_modify_order 等兄弟工具的边界,因此扣一分。
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?
描述给出了多条明确的调用条件:dryRun=true 时仅校验不提交、reduceOnly 仅单向模式可用、timeInForce=GTD 时必须提供 goodTillDate、双向模式必须传 positionSide,并指明可用 trading_position_mode 查询持仓模式。这些是清晰、可执行的上下文,但没有显式说明何时不应使用本工具而应改用其他兄弟工具(如 algo 下单),故为4分而非5分。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_position_margin调整逐仓保证金ADestructive
调整逐仓保证金。type: 1=增加,2=减少(官方枚举);amount 恒为正数。双向(Hedge)模式下须提供 positionSide。
| Name | Required | Description | Default |
|---|---|---|---|
| type | Yes | ||
| amount | Yes | ||
| symbol | Yes | ||
| positionSide | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| type | Yes | |
| amount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as destructive (destructiveHint: true) and readOnly: false. The description adds behavioral context by specifying increase vs decrease with positive amounts, and by requiring positionSide in Hedge mode. It does not fully disclose risks such as liquidation impact, but it correctly reflects the mutating nature of the operation.
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 compact—three short sentences, each conveying a distinct necessary fact: operation, enum semantics, and conditional requirement. No filler or redundant restatement of the name or 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?
For a tool with 4 parameters, moderate risk, and an output schema, this description is sufficient: it explains the enum, the amount constraint, and the Hedge-mode dependency. It does not list usage exceptions or deeper warnings, but the output schema covers return behavior, and the destructive hint already signals caution.
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 must carry parameter meaning. It explains type, amount, and positionSide usage. Symbol is not described, but its meaning is obvious and the description does add real clarity beyond the raw enum 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?
Description clearly states the operation: adjusting position margin ('调整逐仓保证金') with type 1=增加 and 2=减少. The verb '调整' plus resource '逐仓保证金' is specific and distinguishes the tool from margin-type switching and leverage tools in the sibling list.
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 the essential usage condition for Hedge mode ('双向模式下须提供 positionSide') and clarifies the meaning of type values. It does not explicitly state when not to use the tool or point to alternatives, but the provided context is clear and actionable for normal usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_position_mode持仓模式A
查询并切换持仓模式。dual=true 双向(Hedge),false 单向(One-way)。缺省 dual 时仅查询。
| Name | Required | Description | Default |
|---|---|---|---|
| dual | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds an important conditional behavior: without dual it is a read-only query with dual it changes mode. This is consistent with readOnlyHint=false and gives the agent a meaningful distinction beyond static 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 short sentences carry the action, the mode mapping, and the no-parameter behavior. It is front-loaded and contains no waste.
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 description covers all usage branches and the sole parameter. It would be more complete if it described the return shape or mentioned whether switching can be blocked by existing positions, but these are minor for such a small tool.
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 document has 0% coverage for the only parameter. The description compensates fully by explaining true false and the omitted case for dual, leaving no ambiguity about how to invoke the tool.
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 precise verb and resource: query and switch position mode, and defines the two modes. It does not explicitly contrast itself with sibling toolers, but the resource 'position mode' is clear and distinct.
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?
It gives clear usage context: omit dual to query, provide dual to switch. It stops short of 5 because it does not mention exclusions or alternatives such as trading_positions or trading_set_margin_type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_positions持仓查询BRead-onlyIdempotent
返回:当前持仓列表。缺省 symbol 返回全部持仓。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and openWorldHints, so the core safety profile is covered. The description adds the default-omitted-symbol behavior, which is useful. It does not disclose whether '当前持仓' includes all accounts/markets, or how results are ordered/pagined.
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 two very short, front-loaded clauses with no filler. Every item conveys necessary behavior.
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?
Tool is simple and annotations cover side effects, so the scenario is low-complexity. But there is no output schema and no explanation of what fields each position entry includes (e.g. quantity, price, P/L), leaving the result shape somewhat ambiguous for the agent.
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 has no description on the sole symbol parameter, so the description's '缺省 symbol 返回全部' meaningfully supplies the key semantics: an omitted symbol returns all positions. For a single optional string param, that is the essential distinguishing guidance.
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?
Description states a clear verb ('返回') and resource ('当前持仓列表'), which immediately identifies it as a position-listing tool. It does not explicitly contrast with sibling tools like trading_balance or trading_position_mode, so it stops short of 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 provides no guidance on when to use this tool versus alternatives such as order history or balance queries. The '缺省 symbol 返回全部持仓' note is a parameter behavior, not a usage scenario or exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_set_leverage设置杠杆CDestructive
设置交易对杠杆倍数(1~125,视交易对而定)。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | ||
| leverage | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| symbol | Yes | |
| leverage | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag the tool as destructive and non-read-only, lowering the bar for behavioral disclosure. The description adds the useful caveat that the valid leverage range is 1-125 but varies by trading pair. However, it does not mention the effect on existing positions or account-level consequences beyond what annotations state.
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 with no filler, front-loading the core purpose. It is appropriately brief but arguably under-specified given the complexities of a destructive trading operation.
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 state-changing tool with a destructive hint, the description is materially incomplete. It lacks guidance on when to use the tool, how to coordinate with margin-type settings, and what the operational impact will be. The output schema's existence covers the return value, but not the missing behavioral and usage context.
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?
With 0% schema-description coverage, the description must compensate for the lack of parameter documentation. It mentions the leverage range but that is already present in the schema bounds, and it offers no explanation of the symbol parameter or its expected 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 uses a specific verb and resource: setting the leverage multiplier for a trading pair. The action is clear and distinct from the sibling tools such as trading_set_margin_type and trading_position_margin, though it does not explicitly differentiate itself by naming an alternative.
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 no guidance on when to use this tool versus related alternatives like trading_set_margin_type or trading_position_margin. It states the action but leaves all selection context and preconditions to the agent to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_set_margin_type设置保证金模式ADestructive
切换 ISOLATED(逐仓)/ CROSSED(全仓)。存在持仓时可能被拒绝。
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | Yes | ||
| marginType | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
虽然 annotations 已标记 destructiveHint=true,但描述额外披露了“存在持仓时可能被拒绝”这一关键运行时行为。它让代理知道这是一个有状态依赖的写操作,超出注解本身的含义,提供了有价值的上下文。
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?
描述只有两句话,核心操作和约束条件都已前置,没有重复 schema 或 annotations 中的冗余信息。每个短语都承载了有效语义。
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?
对只有 2 个必填参数且值为 enum 的设置类工具来说,description 已经覆盖了操作目标、可选值、以及主要失败场景。没有 output schema,因此不需要描述返回值;整体对正确调用与风险判断足够完整。
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 描述覆盖率为 0%,没有参数说明,因此描述需要承担更多参数解释。描述中的“ISOLATED(逐仓)/ CROSSED(全仓)”补充了 marginType 的中文含义,但 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?
描述使用具体动词“切换”和明确资源“保证金模式”,并直接指出可切换的两个值 ISOLATED(逐仓)和 CROSSED(全仓)。这足以与同为设置类的 trading_set_leverage、trading_position_mode 等 sibling 工具区分开。
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?
描述没有说明何时应使用该工具,也没有与 set_leverage、position_mode 等类似工具做条件区分。唯一提供的限制是“存在持仓时可能被拒绝”,这是操作后果而非使用时机,因此缺乏有效的选用指导。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
trading_trades成交记录CRead-onlyIdempotent
返回:指定交易对的逐笔成交记录。
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| symbol | Yes | ||
| orderId | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the description does not need to restate that this is a safe read operation. The description adds 'per-transaction trade records for a specified pair' but does not disclose pagination, ordering, rate limits, or other behavioral details.
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 with no filler, front-loaded with the returning verb and core resource. It is efficient, though it sacrifices useful detail for brevity, and is not as hollow as a pure tautology.
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 3-parameter tool with no output schema and 0% schema description coverage, this is insufficient. The description omits return fields, pagination, ordering, error conditions, and the role of optional parameters, so an agent cannot fully understand the call result or edge cases.
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. It only implies the symbol parameter via '指定交易对'. It does not explain limit or orderId semantics, even though orderId is a non-obvious filter that needs clarification.
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 that the tool returns '逐笔成交记录' (trade-by-trade transaction records) for a specified trading pair, which gives a specific verb, resource, and scope. However, it does not explicitly differentiate itself from sibling tools like trading_order_history or trading_force_orders, so it falls short of 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?
There is no guidance on when this tool should be used versus alternatives such as trading_order_history, market_klines, or market_trades. The description simply says what it returns, not when to choose it over the many similar sibling tools.
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. Dates show when Glama detected each change.
83 tool updates
v3.0.1- Added
analysis_drawdown - Added
analysis_sharpe - Added
analysis_var - Changed
indicator_adx10 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / candlesRemoved value: -{ - "description": "HLC K 线数组 [{high, low, close}]", - "items": { - "properties": { - "close": { - "type": "number" - }, - "high": { - "type": "number" - }, - "low": { - "type": "number" - } - }, - "required": [ - "high", - "low", - "close" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" -} - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / period / descriptionRemoved value: -"计算周期" - changed
Input schema / properties / period / maximumPrevious value: -9007199254740991New value: +100 - removed
Input schema / properties / smoothingTypeRemoved value: -{ - "default": "EMA", - "enum": [ - "EMA", - "RMA", - "SMA", - "WMA", - "WSMA" - ], - "type": "string" -} - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "candles" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Removed
indicator_adx_direct - Changed
indicator_atr10 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / candlesRemoved value: -{ - "description": "HLC K 线数组 [{high, low, close}]", - "items": { - "properties": { - "close": { - "type": "number" - }, - "high": { - "type": "number" - }, - "low": { - "type": "number" - } - }, - "required": [ - "high", - "low", - "close" - ], - "type": "object" - }, - "minItems": 1, - "type": "array" -} - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / period / descriptionRemoved value: -"计算周期" - changed
Input schema / properties / period / maximumPrevious value: -9007199254740991New value: +100 - removed
Input schema / properties / smoothingTypeRemoved value: -{ - "default": "EMA", - "enum": [ - "EMA", - "RMA", - "SMA", - "WMA", - "WSMA" - ], - "type": "string" -} - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "candles" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Removed
indicator_atr_direct - Changed
indicator_bb_rsi13 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / deviationMultiplier / descriptionRemoved value: -"BBands 标准差倍数" - added
Input schema / properties / deviationMultiplier / maximumAdded value: +10 - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / period / descriptionRemoved value: -"BBands 周期" - changed
Input schema / properties / period / maximumPrevious value: -9007199254740991New value: +250 - removed
Input schema / properties / rsiPeriod / descriptionRemoved value: -"RSI 周期" - changed
Input schema / properties / rsiPeriod / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "lower": { + "type": "number" + }, + "middle": { + "type": "number" + }, + "percentB": { + "type": "number" + }, + "rsi": { + "type": "number" + }, + "upper": { + "type": "number" + }, + "zone": { + "enum": [ + "above", + "upper_half", + "lower_half", + "below" + ], + "type": "string" + } + }, + "required": [ + "upper", + "middle", + "lower", + "percentB", + "zone", + "rsi" + ], + "type": "object" +}
- Removed
indicator_bb_rsi_direct - Changed
indicator_bbands10 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / deviationMultiplier / descriptionRemoved value: -"标准差倍数" - added
Input schema / properties / deviationMultiplier / maximumAdded value: +10 - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / period / descriptionRemoved value: -"计算周期" - changed
Input schema / properties / period / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +]
- Removed
indicator_bbands_direct - Added
indicator_cci - Changed
indicator_divergence10 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - changed
Input schema / properties / lookback / descriptionPrevious value: -"分析窗口大小(等分为左右两半各 10 根)"New value: +"背离检测分析窗口(K 线根数)" - removed
Input schema / properties / rsiPeriod / descriptionRemoved value: -"RSI 周期" - changed
Input schema / properties / rsiPeriod / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "price": { + "additionalProperties": false, + "properties": { + "high1": { + "additionalProperties": false, + "properties": { + "index": { + "type": "number" + }, + "value": { + "type": "number" + } + }, + "required": [ + "index", + "value" + ], + "type": "object" + }, + "high2": { + "additionalProperties": false, + "properties": { + "index": { + "type": "number" + }, + "value": { + "type": "number" + } + }, + "required": [ + "index", + "value" + ], + "type": "object" + }, + "low1": { + "additionalProperties": false, + "properties": { + "index": { + "type": "number" + }, + "value": { + "type": "number" + } + }, + "required": [ + "index", + "value" + ], + "type": "object" + }, + "low2": { + "additionalProperties": false, + "properties": { + "index": { + "type": "number" + }, + "value": { + "type": "number" + } + }, + "required": [ + "index", + "value" + ], + "type": "object" + } + }, + "required": [ + "high1", + "high2", + "low1", + "low2" + ], + "type": "object" + }, + "rsi": { + "additionalProperties": false, + "properties": { + "atHigh1": { + "type": "number" + }, + "atHigh2": { + "type": "number" + }, + "atLow1": { + "type": "number" + }, + "atLow2": { + "type": "number" + } + }, + "required": [ + "atHigh1", + "atHigh2", + "atLow1", + "atLow2" + ], + "type": "object" + }, + "type": { + "enum": [ + "bearish", + "bullish", + "both", + "none" + ], + "type": "string" + }, + "window": { + "type": "number" + } + }, + "required": [ + "type", + "window", + "price", + "rsi" + ], + "type": "object" +}
- Removed
indicator_divergence_direct - Changed
indicator_ema12 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / interval / descriptionRemoved value: -"计算周期" - added
Input schema / properties / interval / enumAdded value: +[ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" +] - removed
Input schema / properties / interval / maximumRemoved value: -9007199254740991 - removed
Input schema / properties / interval / minimumRemoved value: -2 - changed
Input schema / properties / interval / typePrevious value: -"integer"New value: +"string" - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / periodAdded value: +{ + "default": 20, + "maximum": 500, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values", - "interval" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Changed
indicator_ma_cross12 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / fast / descriptionRemoved value: -"快线周期" - changed
Input schema / properties / fast / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / slow / descriptionRemoved value: -"慢线周期" - changed
Input schema / properties / slow / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - changed
Input schema / properties / type / descriptionPrevious value: -"平滑类型"New value: +"均线类型" - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "bias": { + "enum": [ + "bullish", + "bearish", + "neutral" + ], + "type": "string" + }, + "cross": { + "enum": [ + "golden_cross", + "death_cross", + "none" + ], + "type": "string" + }, + "fast": { + "type": "number" + }, + "slow": { + "type": "number" + } + }, + "required": [ + "cross", + "bias", + "fast", + "slow" + ], + "type": "object" +}
- Removed
indicator_ma_cross_direct - Changed
indicator_macd14 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / fastRemoved value: -{ - "default": 12, - "description": "快线周期", - "maximum": 9007199254740991, - "minimum": 2, - "type": "integer" -} - removed
Input schema / properties / indicatorTypeRemoved value: -{ - "default": "EMA", - "description": "平滑类型", - "enum": [ - "EMA", - "DEMA" - ], - "type": "string" -} - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / longPeriodAdded value: +{ + "default": 26, + "maximum": 250, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / shortPeriodAdded value: +{ + "default": 12, + "maximum": 250, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / signalRemoved value: -{ - "default": 9, - "description": "信号线周期", - "maximum": 9007199254740991, - "minimum": 2, - "type": "integer" -} - added
Input schema / properties / signalPeriodAdded value: +{ + "default": 9, + "maximum": 100, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / slowRemoved value: -{ - "default": 26, - "description": "慢线周期", - "maximum": 9007199254740991, - "minimum": 2, - "type": "integer" -} - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "histogram": { + "type": "number" + }, + "macd": { + "type": "number" + }, + "signal": { + "type": "number" + } + }, + "required": [ + "macd", + "signal", + "histogram" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Removed
indicator_macd_direct - Changed
indicator_macd_rsi15 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / fast / descriptionRemoved value: -"MACD 快线周期" - changed
Input schema / properties / fast / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - removed
Input schema / properties / rsiPeriod / descriptionRemoved value: -"RSI 周期" - changed
Input schema / properties / rsiPeriod / maximumPrevious value: -9007199254740991New value: +250 - removed
Input schema / properties / signal / descriptionRemoved value: -"MACD 信号线周期" - changed
Input schema / properties / signal / maximumPrevious value: -9007199254740991New value: +100 - removed
Input schema / properties / slow / descriptionRemoved value: -"MACD 慢线周期" - changed
Input schema / properties / slow / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "macd": { + "additionalProperties": false, + "properties": { + "histogram": { + "type": "number" + }, + "macd": { + "type": "number" + }, + "signal": { + "type": "number" + } + }, + "required": [ + "macd", + "signal", + "histogram" + ], + "type": "object" + }, + "rsi": { + "type": "number" + } + }, + "required": [ + "macd", + "rsi" + ], + "type": "object" +}
- Removed
indicator_macd_rsi_direct - Added
indicator_mfi - Added
indicator_multi - Removed
indicator_multi_direct - Added
indicator_obv - Changed
indicator_rsi12 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / interval / descriptionRemoved value: -"计算周期" - added
Input schema / properties / interval / enumAdded value: +[ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" +] - removed
Input schema / properties / interval / maximumRemoved value: -9007199254740991 - removed
Input schema / properties / interval / minimumRemoved value: -2 - changed
Input schema / properties / interval / typePrevious value: -"integer"New value: +"string" - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / periodAdded value: +{ + "default": 14, + "maximum": 250, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values", - "interval" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Removed
indicator_rsi_direct - Changed
indicator_sma12 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / interval / descriptionRemoved value: -"计算周期" - added
Input schema / properties / interval / enumAdded value: +[ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" +] - removed
Input schema / properties / interval / maximumRemoved value: -9007199254740991 - removed
Input schema / properties / interval / minimumRemoved value: -2 - changed
Input schema / properties / interval / typePrevious value: -"integer"New value: +"string" - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / periodAdded value: +{ + "default": 20, + "maximum": 500, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values", - "interval" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "type": "number" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Added
indicator_stoch - Removed
indicator_stochastic - Removed
indicator_stochastic_direct - Added
indicator_super_trend - Changed
indicator_volatility_regime10 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / bbPeriod / descriptionRemoved value: -"BBands 周期" - changed
Input schema / properties / bbPeriod / maximumPrevious value: -9007199254740991New value: +250 - added
Input schema / properties / intervalAdded value: +{ + "enum": [ + "1m", + "3m", + "5m", + "15m", + "30m", + "1h", + "2h", + "4h", + "6h", + "8h", + "12h", + "1d", + "3d", + "1w", + "1M" + ], + "type": "string" +} - added
Input schema / properties / limitAdded value: +{ + "default": 200, + "maximum": 1500, + "minimum": 2, + "type": "integer" +} - changed
Input schema / properties / lookback / descriptionPrevious value: -"历史比较窗口"New value: +"带宽百分位历史比较窗口(K 线根数)" - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +} - removed
Input schema / properties / valuesRemoved value: -{ - "description": "价格序列(收盘价)", - "items": { - "type": "number" - }, - "minItems": 1, - "type": "array" -} - changed
Input schema / requiredPrevious value: -[ - "values" -]New value: +[ + "symbol", + "interval" +] - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "bandwidth": { + "type": "number" + }, + "percentile": { + "type": "number" + }, + "regime": { + "enum": [ + "squeeze", + "low_volatility", + "normal", + "high_volatility", + "expansion" + ], + "type": "string" + } + }, + "required": [ + "regime", + "bandwidth", + "percentile" + ], + "type": "object" +}
- Removed
indicator_volatility_regime_direct - Added
indicator_vwap - Changed
market_24hr_ticker2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号(不传则全部)"
- Changed
market_book_ticker2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号(不传则全部)"
- Changed
market_continuous_klines7 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / contractType / descriptionRemoved value: -"合约类型 PERPETUAL=永续 / CURRENT_QUARTER=当季 / NEXT_QUARTER=次季" - changed
Input schema / properties / contractType / enumPrevious value: -[ - "PERPETUAL", - "CURRENT_QUARTER", - "NEXT_QUARTER" -]New value: +[ + "PERPETUAL", + "CURRENT_QUARTER", + "NEXT_QUARTER", + "TRADIFI_PERPETUAL" +] - removed
Input schema / properties / interval / descriptionRemoved value: -"K 线周期" - changed
Input schema / properties / limit / defaultPrevious value: -100New value: +500 - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - removed
Input schema / properties / pair / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
market_exchange_info2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / symbolAdded value: +{ + "type": "string" +}
- Changed
market_funding_rate2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbolRemoved value: -{ - "description": "交易对符号(不传则全部)", - "type": "string" -}
- Changed
market_funding_rate_history4 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - changed
Input schema / properties / limit / maximumPrevious value: -1500New value: +1000 - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号(不传则全部)"
- Changed
market_klines8 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / endTimeAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - removed
Input schema / properties / interval / descriptionRemoved value: -"K 线周期" - changed
Input schema / properties / limit / defaultPrevious value: -500New value: +100 - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - added
Input schema / properties / startTimeAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "close": { + "type": "number" + }, + "closeTime": { + "type": "number" + }, + "high": { + "type": "number" + }, + "low": { + "type": "number" + }, + "open": { + "type": "number" + }, + "openTime": { + "type": "number" + }, + "quoteVolume": { + "type": "number" + }, + "takerBuyVolume": { + "type": "number" + }, + "takerQuoteVolume": { + "type": "number" + }, + "trades": { + "type": "number" + }, + "volume": { + "type": "number" + } + }, + "required": [ + "openTime", + "open", + "high", + "low", + "close", + "volume", + "closeTime", + "quoteVolume", + "trades", + "takerBuyVolume", + "takerQuoteVolume" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Changed
market_mark_price2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号(不传则全部)"
- Changed
market_open_interest3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "openInterest": { + "type": "number" + }, + "symbol": { + "type": "string" + }, + "time": { + "type": "number" + } + }, + "required": [ + "symbol", + "openInterest", + "time" + ], + "type": "object" +}
- Changed
market_orderbook8 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / limit / anyOfRemoved value: -[ - { - "const": 5, - "type": "number" - }, - { - "const": 10, - "type": "number" - }, - { - "const": 20, - "type": "number" - }, - { - "const": 50, - "type": "number" - }, - { - "const": 100, - "type": "number" - }, - { - "const": 500, - "type": "number" - }, - { - "const": 1000, - "type": "number" - }, - { - "const": 5000, - "type": "number" - } -] - changed
Input schema / properties / limit / defaultPrevious value: -100New value: +20 - removed
Input schema / properties / limit / descriptionRemoved value: -"深度档位" - added
Input schema / properties / limit / maximumAdded value: +9007199254740991 - added
Input schema / properties / limit / minimumAdded value: +-9007199254740991 - added
Input schema / properties / limit / typeAdded value: +"integer" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Added
market_overview - Changed
market_ping2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "ok": { + "type": "boolean" + } + }, + "required": [ + "ok" + ], + "type": "object" +}
- Changed
market_price3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "price": { + "type": "number" + }, + "symbol": { + "type": "string" + } + }, + "required": [ + "symbol", + "price" + ], + "type": "object" +}
- Changed
market_time2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "serverTime": { + "type": "number" + } + }, + "required": [ + "serverTime" + ], + "type": "object" +}
- Removed
risk_drawdown - Removed
risk_sharpe - Removed
risk_var - Changed
trading_account2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "availableBalance": { + "type": "number" + }, + "totalMarginBalance": { + "type": "number" + }, + "totalOpenOrderInitialMargin": { + "type": "number" + }, + "totalPositionInitialMargin": { + "type": "number" + }, + "totalUnrealizedProfit": { + "type": "number" + }, + "totalWalletBalance": { + "type": "number" + } + }, + "required": [ + "totalWalletBalance", + "totalUnrealizedProfit", + "totalMarginBalance", + "availableBalance", + "totalPositionInitialMargin", + "totalOpenOrderInitialMargin" + ], + "type": "object" +}
- Changed
trading_algo_orders3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / algoIdRemoved value: -{ - "description": "算法订单ID", - "maximum": 9007199254740991, - "minimum": -9007199254740991, - "type": "integer" -} - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_balance2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "data": { + "items": { + "additionalProperties": false, + "properties": { + "asset": { + "type": "string" + }, + "availableBalance": { + "type": "number" + }, + "balance": { + "type": "number" + }, + "crossWalletBalance": { + "type": "number" + }, + "unrealizedProfit": { + "type": "number" + } + }, + "required": [ + "asset", + "balance", + "availableBalance", + "crossWalletBalance", + "unrealizedProfit" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" +}
- Changed
trading_cancel_algo3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / algoId / descriptionRemoved value: -"算法订单ID" - removed
Input schema / properties / clientAlgoId / descriptionRemoved value: -"自定义算法订单ID"
- Changed
trading_cancel_all2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_cancel_order4 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / orderId / descriptionRemoved value: -"系统订单ID" - removed
Input schema / properties / origClientOrderId / descriptionRemoved value: -"自定义订单ID" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_commission3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "makerCommissionRate": { + "type": "number" + }, + "symbol": { + "type": "string" + }, + "takerCommissionRate": { + "type": "number" + } + }, + "required": [ + "symbol", + "makerCommissionRate", + "takerCommissionRate" + ], + "type": "object" +}
- Changed
trading_force_orders5 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / autoCloseType / descriptionRemoved value: -"LIQUIDATION=强平 / ADL=自动减仓" - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - changed
Input schema / properties / limit / maximumPrevious value: -1000New value: +100 - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_get_order4 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / orderId / descriptionRemoved value: -"系统订单ID" - removed
Input schema / properties / origClientOrderId / descriptionRemoved value: -"自定义订单ID" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_income6 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / endTimeAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - changed
Input schema / properties / incomeType / enumPrevious value: -[ - "TRANSFER", - "WELCOME_BONUS", - "REALIZED_PNL", - "FUNDING_FEE", - "COMMISSION", - "INSURANCE_CLEAR" -]New value: +[ + "TRANSFER", + "WELCOME_BONUS", + "REALIZED_PNL", + "FUNDING_FEE", + "COMMISSION", + "INSURANCE_CLEAR", + "REFERRAL_KICKBACK", + "COMMISSION_REBATE", + "API_REBATE", + "CONTEST_REWARD", + "CROSS_COLLATERAL_TRANSFER", + "OPTIONS_PREMIUM_FEE", + "OPTIONS_SETTLE_PROFIT", + "INTERNAL_TRANSFER", + "AUTO_EXCHANGE", + "DELIVERED_SETTELMENT", + "COIN_SWAP_DEPOSIT", + "COIN_SWAP_WITHDRAW", + "POSITION_LIMIT_INCREASE_FEE", + "STRATEGY_UMFUTURES_TRANSFER", + "FEE_RETURN", + "BFUSD_REWARD" +] - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - added
Input schema / properties / startTimeAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_modify_order8 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / orderId / descriptionRemoved value: -"系统订单ID" - removed
Input schema / properties / origClientOrderId / descriptionRemoved value: -"自定义订单ID" - removed
Input schema / properties / price / descriptionRemoved value: -"新价格" - removed
Input schema / properties / quantity / descriptionRemoved value: -"新数量" - removed
Input schema / properties / side / descriptionRemoved value: -"方向 BUY=买入 / SELL=卖出" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - changed
Input schema / requiredPrevious value: -[ - "symbol", - "side" -]New value: +[ + "symbol", + "side", + "quantity", + "price" +]
- Changed
trading_open_orders2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_order_history7 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / endTime / descriptionRemoved value: -"结束毫秒时间戳" - changed
Input schema / properties / limit / defaultPrevious value: -500New value: +100 - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - added
Input schema / properties / orderIdAdded value: +{ + "maximum": 9007199254740991, + "minimum": -9007199254740991, + "type": "integer" +} - removed
Input schema / properties / startTime / descriptionRemoved value: -"起始毫秒时间戳" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_place_algo15 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / activatePriceAdded value: +{ + "description": "追踪止损激活价,未达到前不开始追踪", + "exclusiveMinimum": 0, + "type": "number" +} - added
Input schema / properties / callbackRateAdded value: +{ + "description": "追踪止损回撤百分比(0.1~10,1=1%),仅 TRAILING_STOP_MARKET 需要", + "maximum": 10, + "minimum": 0.1, + "type": "number" +} - added
Input schema / properties / clientAlgoIdAdded value: +{ + "type": "string" +} - added
Input schema / properties / closePositionAdded value: +{ + "description": "触发后全平该合约仓位;为 true 时不可传 quantity / reduceOnly", + "type": "boolean" +} - removed
Input schema / properties / positionSide / descriptionRemoved value: -"持仓方向(双向持仓模式时需指定)" - changed
Input schema / properties / positionSide / enumPrevious value: -[ - "BOTH", - "LONG", - "SHORT" -]New value: +[ + "LONG", + "SHORT" +] - added
Input schema / properties / price / descriptionAdded value: +"限价委托价,仅 STOP / TAKE_PROFIT 类型需要" - added
Input schema / properties / priceProtectAdded value: +{ + "type": "boolean" +} - removed
Input schema / properties / side / descriptionRemoved value: -"方向 BUY=买入 / SELL=卖出" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - added
Input schema / properties / timeInForceAdded value: +{ + "enum": [ + "GTC", + "IOC", + "FOK" + ], + "type": "string" +} - changed
Input schema / properties / triggerPrice / descriptionPrevious value: -"触发价格"New value: +"触发价。止损类 BUY 须高于现价 / SELL 须低于现价,止盈类相反" - changed
Input schema / properties / type / enumPrevious value: -[ - "LIMIT", - "MARKET", - "STOP", - "STOP_MARKET", - "TAKE_PROFIT", - "TAKE_PROFIT_MARKET", - "TRAILING_STOP_MARKET" -]New value: +[ + "STOP_MARKET", + "TAKE_PROFIT_MARKET", + "STOP", + "TAKE_PROFIT", + "TRAILING_STOP_MARKET" +] - added
Input schema / properties / workingTypeAdded value: +{ + "enum": [ + "MARK_PRICE", + "CONTRACT_PRICE" + ], + "type": "string" +}
- Changed
trading_place_order17 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / dryRunAdded value: +{ + "default": false, + "type": "boolean" +} - added
Input schema / properties / goodTillDateAdded value: +{ + "exclusiveMinimum": 0, + "maximum": 9007199254740991, + "type": "integer" +} - added
Input schema / properties / newClientOrderIdAdded value: +{ + "type": "string" +} - added
Input schema / properties / newOrderRespTypeAdded value: +{ + "enum": [ + "ACK", + "RESULT" + ], + "type": "string" +} - removed
Input schema / properties / positionSide / descriptionRemoved value: -"持仓方向(双向持仓模式时需指定)" - changed
Input schema / properties / positionSide / enumPrevious value: -[ - "BOTH", - "LONG", - "SHORT" -]New value: +[ + "LONG", + "SHORT" +] - removed
Input schema / properties / price / descriptionRemoved value: -"价格(市价可不传)" - removed
Input schema / properties / quantity / descriptionRemoved value: -"数量(市价全仓可不传)" - removed
Input schema / properties / reduceOnly / descriptionRemoved value: -"仅减仓 true=是" - removed
Input schema / properties / side / descriptionRemoved value: -"方向 BUY=买入 / SELL=卖出" - removed
Input schema / properties / stopPriceRemoved value: -{ - "description": "止损/止盈触发价", - "exclusiveMinimum": 0, - "type": "number" -} - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - removed
Input schema / properties / timeInForce / descriptionRemoved value: -"有效期 GTC=有效至取消 / IOC=立即成交或取消 / FOK=全部成交或取消" - changed
Input schema / properties / timeInForce / enumPrevious value: -[ - "GTC", - "IOC", - "FOK", - "GTX", - "GTD" -]New value: +[ + "GTC", + "IOC", + "FOK", + "GTX", + "GTD", + "RPI" +] - changed
Input schema / properties / type / enumPrevious value: -[ - "LIMIT", - "MARKET", - "STOP", - "STOP_MARKET", - "TAKE_PROFIT", - "TAKE_PROFIT_MARKET", - "TRAILING_STOP_MARKET" -]New value: +[ + "LIMIT", + "MARKET" +] - changed
Input schema / requiredPrevious value: -[ - "symbol", - "side", - "type" -]New value: +[ + "symbol", + "side", + "type", + "quantity" +]
- Changed
trading_position_margin10 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / amount / descriptionRemoved value: -"调整金额" - removed
Input schema / properties / positionSide / descriptionRemoved value: -"持仓方向(双向持仓模式时需指定)" - changed
Input schema / properties / positionSide / enumPrevious value: -[ - "BOTH", - "LONG", - "SHORT" -]New value: +[ + "LONG", + "SHORT" +] - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - added
Input schema / properties / type / anyOfAdded value: +[ + { + "const": 1, + "type": "number" + }, + { + "const": 2, + "type": "number" + } +] - removed
Input schema / properties / type / descriptionRemoved value: -"1=增加保证金 / 0=减少保证金" - removed
Input schema / properties / type / enumRemoved value: -[ - "0", - "1" -] - removed
Input schema / properties / type / typeRemoved value: -"string" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "amount": { + "type": "number" + }, + "type": { + "anyOf": [ + { + "const": 1, + "type": "number" + }, + { + "const": 2, + "type": "number" + } + ] + } + }, + "required": [ + "amount", + "type" + ], + "type": "object" +}
- Changed
trading_position_mode4 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - added
Input schema / properties / dualAdded value: +{ + "type": "boolean" +} - removed
Input schema / properties / dualSidePositionRemoved value: -{ - "description": "持仓模式 true=双向 / false=单向", - "enum": [ - "true", - "false" - ], - "type": "string" -} - removed
Input schema / requiredRemoved value: -[ - "dualSidePosition" -]
- Changed
trading_positions2 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / symbol / descriptionRemoved value: -"可选过滤"
- Changed
trading_set_leverage4 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / leverage / descriptionRemoved value: -"杠杆倍数" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT" - changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "additionalProperties": false, + "properties": { + "leverage": { + "type": "number" + }, + "symbol": { + "type": "string" + } + }, + "required": [ + "symbol", + "leverage" + ], + "type": "object" +}
- Changed
trading_set_margin_type3 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / marginType / descriptionRemoved value: -"保证金类型 ISOLATED=逐仓 / CROSSED=全仓" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Changed
trading_trades4 fields changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema" - removed
Input schema / properties / limit / descriptionRemoved value: -"数据量限制" - removed
Input schema / properties / orderId / descriptionRemoved value: -"按订单ID过滤" - removed
Input schema / properties / symbol / descriptionRemoved value: -"交易对符号 如 BTCUSDT"
- Removed
util_average - Removed
util_extract_klines - Removed
util_grid - Removed
util_max - Removed
util_median - Removed
util_min - Removed
util_quartile - Removed
util_stddev - Removed
util_streaks - Removed
util_weekday
132 tool updates
v2.0.3- Removed
futures_account_balance - Removed
futures_account_report - Removed
futures_agg_trades - Removed
futures_all_book_tickers - Removed
futures_all_orders - Removed
futures_batch_orders - Removed
futures_cancel_all_open_orders - Removed
futures_cancel_batch_orders - Removed
futures_cancel_order - Removed
futures_daily_stats - Removed
futures_exchange_info - Removed
futures_get_order - Removed
futures_income - Removed
futures_klines - Removed
futures_leverage - Removed
futures_leverage_bracket - Removed
futures_margin_history - Removed
futures_margin_type - Removed
futures_mark_price - Removed
futures_open_orders - Removed
futures_order - Removed
futures_orderbook - Removed
futures_ping - Removed
futures_position_margin - Removed
futures_prices - Removed
futures_quick_order - Removed
futures_time - Removed
futures_trades - Removed
futures_update_order - Removed
futures_user_trades - Removed
indicator_abands - Changed
indicator_adx6 fields changed- changed
Input schema / properties / candles / descriptionPrevious value: -"HLC 数组"New value: +"HLC K 线数组 [{high, low, close}]" - removed
Input schema / properties / intervalRemoved value: -{ - "description": "计算周期", - "minimum": 2, - "type": "number" -} - added
Input schema / properties / periodAdded value: +{ + "default": 14, + "description": "计算周期", + "maximum": 9007199254740991, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / smoothingType / defaultAdded value: +"EMA" - removed
Input schema / properties / smoothingType / descriptionRemoved value: -"平滑类型" - changed
Input schema / requiredPrevious value: -[ - "candles", - "interval" -]New value: +[ + "candles" +]
- Added
indicator_adx_direct - Removed
indicator_ao - Changed
indicator_atr6 fields changed- changed
Input schema / properties / candles / descriptionPrevious value: -"HLC 数组"New value: +"HLC K 线数组 [{high, low, close}]" - removed
Input schema / properties / intervalRemoved value: -{ - "description": "计算周期", - "minimum": 2, - "type": "number" -} - added
Input schema / properties / periodAdded value: +{ + "default": 14, + "description": "计算周期", + "maximum": 9007199254740991, + "minimum": 2, + "type": "integer" +} - added
Input schema / properties / smoothingType / defaultAdded value: +"EMA" - removed
Input schema / properties / smoothingType / descriptionRemoved value: -"平滑类型" - changed
Input schema / requiredPrevious value: -[ - "candles", - "interval" -]New value: +[ + "candles" +]
- Added
indicator_atr_direct - Added
indicator_bb_rsi - Added
indicator_bb_rsi_direct - Changed
indicator_bbands5 fields changed- added
Input schema / properties / deviationMultiplier / minimumAdded value: +0.1 - removed
Input schema / properties / intervalRemoved value: -{ - "description": "计算周期", - "minimum": 2, - "type": "number" -} - added
Input schema / properties / periodAdded value: +{ + "default": 20, + "description": "计算周期", + "maximum": 9007199254740991, + "minimum": 2, + "type": "integer" +} - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"价格序列(收盘价)" - changed
Input schema / requiredPrevious value: -[ - "values", - "interval" -]New value: +[ + "values" +]
- Added
indicator_bbands_direct - Removed
indicator_cci - Removed
indicator_dema - Added
indicator_divergence - Added
indicator_divergence_direct - Removed
indicator_dma - Removed
indicator_dx - Changed
indicator_ema3 fields changed- added
Input schema / properties / interval / maximumAdded value: +9007199254740991 - changed
Input schema / properties / interval / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"价格序列(收盘价)"
- Removed
indicator_iqr - Removed
indicator_linreg - Added
indicator_ma_cross - Added
indicator_ma_cross_direct - Changed
indicator_macd15 fields changed- changed
Input schema / properties / fast / descriptionPrevious value: -"快线"New value: +"快线周期" - added
Input schema / properties / fast / maximumAdded value: +9007199254740991 - added
Input schema / properties / fast / minimumAdded value: +2 - changed
Input schema / properties / fast / typePrevious value: -"number"New value: +"integer" - added
Input schema / properties / indicatorType / defaultAdded value: +"EMA" - changed
Input schema / properties / indicatorType / enumPrevious value: -[ - "EMA", - "RMA", - "SMA", - "WMA", - "WSMA" -]New value: +[ + "EMA", + "DEMA" +] - changed
Input schema / properties / signal / descriptionPrevious value: -"信号线"New value: +"信号线周期" - added
Input schema / properties / signal / maximumAdded value: +9007199254740991 - added
Input schema / properties / signal / minimumAdded value: +2 - changed
Input schema / properties / signal / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / slow / descriptionPrevious value: -"慢线"New value: +"慢线周期" - added
Input schema / properties / slow / maximumAdded value: +9007199254740991 - added
Input schema / properties / slow / minimumAdded value: +2 - changed
Input schema / properties / slow / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"价格序列(收盘价)"
- Added
indicator_macd_direct - Added
indicator_macd_rsi - Added
indicator_macd_rsi_direct - Removed
indicator_mom - Added
indicator_multi_direct - Removed
indicator_obv - Removed
indicator_psar - Removed
indicator_rma - Removed
indicator_roc - Changed
indicator_rsi3 fields changed- added
Input schema / properties / interval / maximumAdded value: +9007199254740991 - changed
Input schema / properties / interval / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"价格序列(收盘价)"
- Added
indicator_rsi_direct - Changed
indicator_sma3 fields changed- added
Input schema / properties / interval / maximumAdded value: +9007199254740991 - changed
Input schema / properties / interval / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"价格序列(收盘价)"
- Removed
indicator_stoch - Removed
indicator_stoch_rsi - Added
indicator_stochastic - Added
indicator_stochastic_direct - Removed
indicator_tds - Added
indicator_volatility_regime - Added
indicator_volatility_regime_direct - Removed
indicator_vwap - Removed
indicator_williams_r - Removed
indicator_wma - Removed
indicator_wsma - Removed
indicator_zigzag - Added
market_24hr_ticker - Added
market_book_ticker - Added
market_continuous_klines - Added
market_exchange_info - Added
market_funding_rate - Added
market_funding_rate_history - Added
market_klines - Added
market_mark_price - Added
market_open_interest - Added
market_orderbook - Added
market_ping - Added
market_price - Added
market_time - Added
risk_drawdown - Added
risk_sharpe - Added
risk_var - Removed
signal_bb_rsi - Removed
signal_ema_cross - Removed
signal_ma_cross - Removed
signal_macd_rsi - Added
trading_account - Added
trading_algo_orders - Added
trading_balance - Added
trading_cancel_algo - Added
trading_cancel_all - Added
trading_cancel_order - Added
trading_commission - Added
trading_force_orders - Added
trading_get_order - Added
trading_income - Added
trading_modify_order - Added
trading_open_orders - Added
trading_order_history - Added
trading_place_algo - Added
trading_place_order - Added
trading_position_margin - Added
trading_position_mode - Added
trading_positions - Added
trading_set_leverage - Added
trading_set_margin_type - Added
trading_trades - Changed
util_average1 field changed- changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"数值数组(至少1个元素)"
- Removed
util_calmar - Added
util_extract_klines - Changed
util_grid10 fields changed- changed
Input schema / properties / levels / descriptionPrevious value: -"层数"New value: +"网格层级数(≥2)" - added
Input schema / properties / levels / maximumAdded value: +9007199254740991 - changed
Input schema / properties / levels / typePrevious value: -"number"New value: +"integer" - changed
Input schema / properties / lower / descriptionPrevious value: -"下限"New value: +"网格下限价格" - added
Input schema / properties / spacing / defaultAdded value: +"arithmetic" - changed
Input schema / properties / spacing / descriptionPrevious value: -"间距类型"New value: +"间距模式" - changed
Input schema / properties / tickSize / descriptionPrevious value: -"最小精度"New value: +"最小价格精度(tick size)" - added
Input schema / properties / tickSize / exclusiveMinimumAdded value: +0 - changed
Input schema / properties / upper / descriptionPrevious value: -"上限"New value: +"网格上限价格" - changed
Input schema / requiredPrevious value: -[ - "lower", - "upper", - "levels", - "spacing" -]New value: +[ + "lower", + "upper", + "levels" +]
- Changed
util_max1 field changed- changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"数值数组(至少1个元素)"
- Removed
util_max_drawdown - Changed
util_median1 field changed- changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"数值数组(至少1个元素)"
- Changed
util_min1 field changed- changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"数值数组(至少1个元素)"
- Changed
util_quartile2 fields changed- changed
Input schema / properties / q / descriptionPrevious value: -"四分位点"New value: +"四分位位置:0.25/0.5/0.75" - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"数值数组"
- Removed
util_sharpe - Changed
util_stddev2 fields changed- changed
Input schema / properties / average / descriptionPrevious value: -"预计算均值"New value: +"预计算的均值(可选,不传则内部计算)" - changed
Input schema / properties / values / descriptionPrevious value: -"价格数组"New value: +"数值数组"
- Changed
util_streaks3 fields changed- changed
Input schema / properties / keepSide / descriptionPrevious value: -"方向"New value: +"统计方向:up(上涨段)/ down(下跌段)" - changed
Input schema / properties / prices / descriptionPrevious value: -"价格数组"New value: +"价格序列" - changed
Input schema / properties / prices / minItemsPrevious value: -1New value: +2
- Removed
util_var - Changed
util_weekday2 fields changed- changed
Input schema / properties / date / descriptionPrevious value: -"ISO日期"New value: +"ISO 日期字符串(YYYY-MM-DD),不传则使用当前日期" - changed
Input schema / properties / timezone / descriptionPrevious value: -"时区"New value: +"时区标识符(如 UTC, Asia/Shanghai)"
- Removed
util_win_rate
76 tool updates
v2.0.2- First observed
futures_account_balance - First observed
futures_account_report - First observed
futures_agg_trades - First observed
futures_all_book_tickers - First observed
futures_all_orders - First observed
futures_batch_orders - First observed
futures_cancel_all_open_orders - First observed
futures_cancel_batch_orders - First observed
futures_cancel_order - First observed
futures_daily_stats - First observed
futures_exchange_info - First observed
futures_get_order - First observed
futures_income - First observed
futures_klines - First observed
futures_leverage - First observed
futures_leverage_bracket - First observed
futures_margin_history - First observed
futures_margin_type - First observed
futures_mark_price - First observed
futures_open_orders - First observed
futures_order - First observed
futures_orderbook - First observed
futures_ping - First observed
futures_position_margin - First observed
futures_prices - First observed
futures_quick_order - First observed
futures_time - First observed
futures_trades - First observed
futures_update_order - First observed
futures_user_trades - First observed
indicator_abands - First observed
indicator_adx - First observed
indicator_ao - First observed
indicator_atr - First observed
indicator_bbands - First observed
indicator_cci - First observed
indicator_dema - First observed
indicator_dma - First observed
indicator_dx - First observed
indicator_ema - First observed
indicator_iqr - First observed
indicator_linreg - First observed
indicator_macd - First observed
indicator_mom - First observed
indicator_obv - First observed
indicator_psar - First observed
indicator_rma - First observed
indicator_roc - First observed
indicator_rsi - First observed
indicator_sma - First observed
indicator_stoch - First observed
indicator_stoch_rsi - First observed
indicator_tds - First observed
indicator_vwap - First observed
indicator_williams_r - First observed
indicator_wma - First observed
indicator_wsma - First observed
indicator_zigzag - First observed
signal_bb_rsi - First observed
signal_ema_cross - First observed
signal_ma_cross - First observed
signal_macd_rsi - First observed
util_average - First observed
util_calmar - First observed
util_grid - First observed
util_max - First observed
util_max_drawdown - First observed
util_median - First observed
util_min - First observed
util_quartile - First observed
util_sharpe - First observed
util_stddev - First observed
util_streaks - First observed
util_var - First observed
util_weekday - First observed
util_win_rate
TDQS
Most tools target distinct resources or actions with clear category prefixes. Some overlap exists among composite indicators (indicator_macd_rsi, indicator_bb_rsi, indicator_multi) and funding-rate related tools, but descriptions explicitly disambiguate which to use.
All tools follow a strict <domain>_<object_or_action> pattern across market, trading, indicator, and analysis prefixes. Names are consistently snake_case, making the large set predictable and scannable.
57 tools is well above the 25+ threshold for 'too many.' While grouped into coherent categories, the indicator subset alone could be consolidated (e.g., combined macd_rsi, bb_rsi, multi), and the overall surface feels excessive for a single server.
The server covers the core Binance futures/spot lifecycle well: market data, order management, positions, balance, leverage, margin, and algo orders. Minor gaps such as missing deposit/withdraw endpoints and batch order operations exist, but trading workflows are largely complete.
Maintenance
Related MCP Connectors
Binance Futures market intelligence: funding, OI, order book, klines, cross-exchange comparison.
Trade 16 crypto exchanges + MetaTrader 5 from your AI assistant via one MCP connection.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Crypto market signals, technical indicators, and sentiment analysis for AI agents.
Related MCP Servers
- AlicenseAqualityFmaintenanceA Model Context Protocol server implementation that enables AI assistants to interact with the Paradex perpetual futures trading platform, allowing for retrieving market data, managing trading accounts, placing orders, and monitoring positions.169MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that exposes Binance cryptocurrency exchange data to LLMs, allowing agents to access real-time prices, order books, and historical market data without requiring API keys.20MIT
- FlicenseNot gradedqualityDmaintenanceEnables automated cryptocurrency trading on Binance and provides integration for monitoring Base network operations. It allows users to execute trades, fetch market data, and calculate technical indicators like RSI and MACD through the Model Context Protocol.-
- FlicenseNot gradedqualityDmaintenanceProvides real-time investment news, technical analysis via TA-Lib, and Binance trading capabilities including order management and market data retrieval. It enables AI assistants to perform financial market research and execute trades through the Model Context Protocol.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/iuk-ink/binance-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server