A股数据 API (A-Share Data API)
Server Details
China A-share market data over MCP: 22 tools for quotes, K-line, financials, money flow, top-trader boards, sectors, macro, convertible bonds and factor screening. Five tools need no API key, so you can connect and try it immediately.
- Status
- Healthy
- Uptime
- 99.8% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 26 tools
There are genuine overlap clusters: ashare_quote vs ashare_snapshot vs ashare_orderbook (all price/level data), ashare_kline vs ashare_kline_full vs ashare_minute (time series), and ashare_changedist vs ashare_market_overview, ashare_lhb vs ashare_fund. However, each description explicitly cross-references and warns against the wrong choice (e.g. '不要用 ashare_market_overview 的 updown 模式'), making selection tractable.
Every tool uses the uniform ashare_ prefix plus a lowercase snake_case noun/descriptor (ashare_quote, ashare_kline_full, ashare_sector_valuation). No mixing of camelCase or verb styles; the pattern is fully predictable.
26 tools is on the heavy side and crosses the 25+ boundary, but the server spans many distinct data domains (equities, bonds, ETF, sector, macro, IPO, LHB, screening), so most tools earn their place rather than being redundant.
Coverage is broad and deep: quotes/snapshots/orderbook, multiple K-line granularities, financials, dividends, events, shareholders, fund flows, LHB, sector quotes and valuation, macro, IPO, bonds, ETF, screening, search, technical indicators, and usage. No obvious dead ends for an A-share data API.
Available Tools
35 toolsashare_backtestInspect
量化回测:按策略跑历史收益(返回收益/最大回撤/交易次数/净值曲线等)。用户问'回测一下/这个策略收益如何/买卖点效果/最大回撤'用这个。⚠️ 两种模式:mode=single(默认)单标的实时计算,须配 code;mode=portfolio 组合(须用 strategies 里的组合策略,区间受预置批次限制)。⚠️ weighting=inv_vol(按波动率倒数配仓)仅组合模式 + 不限量版可用。⚠️ 想知道有哪些策略/参数范围,先调 ashare_strategies;想一次跑多标的×多策略,用 ashare_backtest_batch。⚠️ 付费工具(需 Key):单标的 Standard(¥29.9)起;组合 / 批量回测为 Pro 及以上,且有独立日额度,余量可查 ashare_usage。
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | 结束日期 YYYY-MM-DD(mode=single 时可用) | |
| code | No | 股票代码:sh600667(mode=single 时必填) | |
| mode | No | single 单标的实时(默认,须配 code)/ portfolio 组合(预置区间) | single |
| start | No | 起始日期 YYYY-MM-DD(mode=single 时可用) | |
| strategy | Yes | 策略名(如 buy_hold / mom20 / lowvol20;清单见 ashare_strategies) | |
| weighting | No | 组合配仓:equal 等权(默认)/ inv_vol 波动率倒数(仅组合模式 + 不限量版) | |
| initial_cash | No | 初始资金(默认 1000000 = 100 万) | |
| include_equity | No | 是否返回净值曲线(默认 false —— 曲线数据量大,只在需要画图时开) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_backtest_batchInspect
批量回测:一次跑 多标的 × 多策略,返回对比矩阵(哪个组合最好一目了然)。用户问'这几只股票用不同策略分别跑一下/批量回测/策略对比'用这个。⚠️ 与 ashare_backtest 的区别:本工具一次给多标的×多策略的横向对比,ashare_backtest 只跑一个策略。⚠️ 上限:标的 ≤20 · 策略 ≤10 · 组合 ≤60(超限直接报错,不静默截断)。⚠️ 组合策略不能用于批量回测(批量只支持单标的择时策略)。⚠️ 参数可传列表(自动转逗号)。⚠️ 付费工具(需 Key):Pro(¥69)及以上,有独立日额度。
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | 结束日期 YYYY-MM-DD | |
| codes | Yes | 股票代码,多个用逗号分隔:sh600667,sz000001(≤20 只) | |
| start | No | 起始日期 YYYY-MM-DD(默认 2019-01-01) | 2019-01-01 |
| strategies | Yes | 策略名,多个用逗号分隔:buy_hold,mom20(≤10 个) | |
| initial_cash | No | 初始资金(默认 1000000 = 100 万) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_bondAInspect
可转债完整条款:溢价率/转股价值/双低值/强赎触发价/回售触发价/转股价/正股/到期日/评级。用户问'转债条款/强赎/双低/溢价'用这个。⚠️ 要转债行情价请用 ashare_quote(同样支持转债代码)。只读查询;代码形如 sh113052(沪)/ sz123138(深)。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 转债代码:sh113052 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the operation is read-only ('只读查询') and warns that market prices are not returned, which is a key behavioral trait. It also provides code format examples (sh vs sz) that reduce error risk. While it doesn't cover every possible behavior (e.g., rate limits), it adequately discloses the main safety and scope characteristics.
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 three sentences, front-loaded with the returned fields, then usage guidance, then warnings and format. Every sentence earns its place; there is no repetition or padding.
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 single-parameter, read-only query tool with an output schema, the description covers purpose, usage, exclusions, safety, and code format. Nothing essential is missing; the output schema handles return-value details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes the single parameter 'code' with an example, and coverage is 100%. The description adds meaningful beyond that by explaining the code format distinction between Shanghai (sh) and Shenzhen (sz) and giving concrete examples, which helps the agent pass a valid value. This goes beyond the schema's bare minimum.
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 purpose: it provides full terms for convertible bonds, listing specific metrics (premium rate, conversion value, double-low value, etc.). It explicitly distinguishes itself from ashare_quote by noting that market prices are not covered, so an agent can instantly tell which tool to use.
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 explicit usage conditions: 'use this when users ask about bond terms/strong redemption/double low/premium' and warns 'for bond market price, use ashare_quote'. This is textbook when-to-use and when-not-to-use guidance that names the exact alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_changedistAInspect
全市场涨跌家数与市场广度(当期口径):上涨/下跌/平盘/停牌家数 + 上涨占比 + 涨停/跌停 + 11 档涨跌幅区间分布 + 两市成交额。用户问'今天涨跌家数/多少家涨停/市场情绪/市场广度'用这个——这是市场广度的唯一推荐入口。⚠️ 不要用 ashare_market_overview 的 updown 模式取同一数据(那是 T-1 口径,数值会与此不一致)。· 免费工具(无需 Key)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It discloses data currency (current period) and distinguishes from T-1. But it does not explain output structure or any limitations beyond data currency, which is partially mitigated by output schema existing.
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?
Concise, front-loaded with key purpose, includes warning and free tool note. Slightly dense with many details but useful; no fluff.
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 tool with output schema, description covers usage context, data categories, and sibling distinction. Complete enough for correct invocation, though return format is left to 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?
Zero parameters, so schema is trivial. Description adds context on data scope and usage, but does not describe any parameters since none exist. High value in explaining what the output covers.
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 it provides market breadth data with enumerated contents (up/down counts, limit-up/down, distribution, turnover). Purpose clear, but does not explicitly name siblings to differentiate beyond mentioning ashare_market_overview.
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?
Explicitly tells when to use ('user asks today's up/down counts...') and when not to use (warning against ashare_market_overview for same data due to T-1 discrepancy). Also notes it's free/no key.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_dehydratedAInspect
脱水研报(券商研报摘要)。用户问'研报/机构观点/券商怎么说'用这个。mode=list 列表 / mode=detail 详情(detail 需给 symbol)。⚠️ 要个股新闻/公告请用 ashare_events。只读查询;按研报发布更新。
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | list / detail(默认 list) | list |
| limit | No | 条数(默认 10) | |
| symbol | No | 股票代码(detail 时用) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses read-only semantics ('只读查询') and the update cadence ('按研报发布更新'), which is genuinely useful behavioral context. It doesn't cover auth/error behavior, but for a read-only query tool the disclosed safety profile and refresh cadence are solid.
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?
Compact and front-loaded with purpose, followed by routing, mode semantics, and safety. Every sentence earns its place, though the heavy formatting (bold, emojis, slashes) makes it slightly dense 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?
Complete for a read-only query tool with an output schema present: purpose, when-to-use, alternative, mode behavior, and read-only nature are all covered. The only gap is the limit default inconsistency, which originates in the schema rather than the description.
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 100%, so baseline is 3. The description adds value by explaining mode's two values and the constraint that detail requires a symbol ('mode=list 列表 / mode=detail 详情(detail 需给 symbol)'). Note a schema-internal inconsistency: limit has default 20 but its own description says '默认 10' – confusing but a schema issue, not a description issue.
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 and resource ('脱水研报' – broker research report summaries) and ties it to concrete user intents ('研报/机构观点/券商怎么说'). Explicitly differentiates from the sibling ashare_events, which handles stock news/announcements, so an agent can select the correct tool without opening either 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?
Provides explicit when-to-use conditions ('用户问...用这个') and names the exact alternative with its selection condition ('要个股新闻/公告请用 ashare_events'). This is textbook routing that leaves nothing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_dividendAInspect
分红送转历史(每股分红/送股/除权日)。用户问'分红/股息/送转'用这个。⚠️ 要分红派息日历(哪天除权)请用 ashare_events——本工具是历史记录。只读查询;按公告披露更新。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667 | |
| years | No | 年数(默认 3) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It clearly states the tool is read-only ('只读查询') and notes the data update cadence ('按公告披露更新'), which are useful behavioral facts beyond the schema. It does not discuss rate limits or auth, but no annotations exist and these are less critical for a simple read-only 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 only three sentences yet packs the core purpose, user-trigger phrases, a sibling-tool pointer, read-only status, and update frequency. Every sentence earns its place, and the key distinction from ashare_events is 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 simple two-parameter tool with full schema coverage and an output schema, the description is complete: it defines scope, distinguishes the historical nature from the calendar tool, and states behavior. No critical information needed to invoke the tool correctly 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?
Schema description coverage is 100%, so the schema already documents both 'code' and 'years' with examples and defaults. The description adds context about the tool being historical but does not add parameter-level meaning beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with '分红送转历史(每股分红/送股/除权日)', which names the exact resource (dividend/bonus share history) and the data fields it covers. It also explicitly distinguishes itself from ashare_events, so an agent can tell the two tools apart without inspecting 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 a concrete trigger condition ('用户问"分红/股息/送转"用这个') and an explicit alternative with the condition that selects it ('要分红派息日历...请用 ashare_events'). This is clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_etfAInspect
ETF 行情/规模/溢折率/资金流。用户问'ETF'时用这个。⚠️ 要 ETF 的成分股/净值/持有人请用对应端点(本工具给运作概览)。只读查询;代码形如 sh510300。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | ETF 代码:sh510300 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the operation is read-only ('只读查询') and clarifies what data it does not provide (成分股/净值/持有人). It doesn't mention auth or rate limits, but for a read-only query with an output schema, this is adequate.
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 with the core functionality, includes a clear warning, and ends with a format note. Every sentence adds value, and the structure is easy to scan.
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 a single parameter, an output schema, and a description covering purpose, usage, read-only nature, and exclusions, the definition is complete for an agent to invoke correctly. Nothing essential 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?
Schema coverage is 100%, and the parameter description already includes the format 'sh510300'. The description repeats this format, adding no new meaning beyond the schema. Baseline 3 is appropriate given the schema's completeness.
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 enumerates the tool's coverage (行情/规模/溢折率/资金流) and explicitly states it is for ETF queries. It differentiates from other endpoints by warning about constituent stocks/NAV/holders, making its scope unambiguous against siblings like ashare_quote and ashare_fund.
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 explicit routing ('用户问ETF时用这个') and a clear exclusion ('要成分股/净值/持有人请用对应端点'). This tells the agent exactly when to use this tool and when not, even without naming specific siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_eventsAInspect
个股事件标签(42 类:大宗/龙虎榜/回购/分红/解禁等)。用户问'这只股票最近有什么大事/解禁/回购/定增'用这个。⚠️ 要看全市场某一类事件名单,请用 ashare_lhb(龙虎榜分榜)或 ashare_dividend(分红送转)——本工具是单只股票的事件总览。只读查询;按披露节奏更新。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
无注释,描述承担行为披露责任。描述声明'只读查询'和'按披露节奏更新',提供了安全性和更新频率信息。但未说明返回值格式或错误处理,由于输出模式存在,描述不需要解释返回格式,因此4分合理。
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?
描述简洁,包含关键信息,有明确警告和替代工具。虽然有多余细节,但结构良好,核心用途在前。整体高效,给4分。
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?
工具只有一个参数,模式覆盖率100%,输出模式存在,描述提供了范围(单只股票)、事件类型示例、使用场景、替代工具和更新频率。无重大缺失,完整性高。
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?
模式覆盖率为100%,参数code已在模式中描述为'股票代码:sh600667',描述未添加额外参数信息。按校准规则,高覆盖率下基线为3分,描述未增加价值。
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?
描述明确说明工具做什么:提供单只股票的事件标签,列举了42类事件(大宗/龙虎榜/回购/分红/解禁等),并与兄弟工具(ashare_lhb、ashare_dividend)区分,明确这是单只股票的事件总览,而非全市场名单。动词和资源清晰,区分度高。
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?
描述明确给出了使用场景:当用户问某只股票近期大事/解禁/回购/定增时使用,并明确指出当需要查看全市场某一类事件名单时应该使用ashare_lhb或ashare_dividend。提供了明确的何时使用和替代工具,指南完整。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_factorsInspect
量化因子库:88 个因子 + 50 个筛选入口 + 22 个预设组合,可按分类/类型筛选。用户问'有哪些因子/因子库/选股因子/因子分类'用这个。⚠️ 这是清单(静态元数据);要用因子实际选股,用 ashare_screen。⚠️ category / kind 只接受中文枚举值(category:估值/行情/盈利/成长/财务/资金…;kind:排行/标签/事件)。传英文会返回空。⚠️ 付费工具(需 Key):Standard(¥29.9)及以上。
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | 按类型筛选(**中文值**:排行/标签/事件;省略=全部) | |
| category | No | 按分类筛选(**中文值**:估值/行情/盈利/成长…;省略=全部) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_financeAInspect
财务报表(利润表/资产负债表/现金流量表,最近 N 期)。用户问'营收/净利润/毛利率/负债/财务数据'用这个。⚠️ 返回三张表:data[0]=利润表 · data[1]=资产负债表 · data[2]=现金流量表;每表按期次降序(最新一期在最前)。⚠️ 只要估值倍数(PE/PB)请用 ashare_sector_valuation 或 ashare_quote 的估值字段。只读查询;按财报披露节奏更新(未到披露日就没有新数据,不是故障)。
| Name | Required | Description | Default |
|---|---|---|---|
| num | No | 期数(默认 4) | |
| code | Yes | 股票代码:sh600667 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully carries the behavioral transparency burden. It discloses that the tool is read-only, returns exactly three tables in a fixed order (data[0], data[1], data[2]), sorts periods descending (latest first), and explains update cadence (only after financial disclosures, absence of new data is not a bug). This is comprehensive and beyond typical description detail.
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 yet information-dense, front-loading the core purpose and following with crucial warnings in a structured way. Every sentence earns its place: purpose, return format, sibling differentiation, and update behavior. The use of warnings (⚠️) highlights critical operational details without bloat.
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's complexity (three return tables) and the existence of an output schema, the description still adds essential orientation: table indices, ordering, and update timing. It also covers when to choose alternate tools, so an agent can invoke this tool correctly without further research. Complete for selection and 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 100%, so the schema already documents both parameters clearly (code format and num period count). The description adds the concept of '最近 N 期' (recent N periods) and the descending order, but these are more behavioral than parameter-specific. Since the schema handles parameter meaning, a baseline 3 is appropriate; the description does not meaningfully extend parameter semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as providing financial statements (income statement, balance sheet, cash flow statement) for the most recent N periods, and distinguishes it from sibling tools by stating when to use it ('营收/净利润/毛利率/负债/财务数据') and which alternatives cover valuation multiples. This gives an agent a precise selection criterion.
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?
Explicit when-to-use guidance is given: for revenue, net profit, gross margin, liabilities, or financial data. It also explicitly states what NOT to use it for (valuation multiples PE/PB) and names the correct alternatives (ashare_sector_valuation or ashare_quote valuation fields). This is textbook usage differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_fundAInspect
个股级交易面:这只股的 主力资金(当日/5/10/20 日净流入+全市场排名)+ 龙虎榜上榜明细(上榜原因/营业部)+ 大宗交易 + 融资融券。用户问'某只股票的主力资金/机构动向'用这个。⚠️ 全市场榜单(今天机构榜/游资榜/活跃席位)请用 ashare_lhb——本工具只针对单只股票。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the disclosure burden. It clearly conveys this is a read/data-lookup operation by enumerating returned data groups, and the presence of an output schema covers structural expectations. It doesn't explicitly state side-effect-freeness, but nothing in the description implies mutation; content disclosure is solid.
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?
Compact and well ordered: content first, usage trigger second, exclusion warning last with a clear ⚠️ marker. No filler sentences. The opening sentence is dense with comma-separated items, but each earns its place given the data variety.
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?
Complete for a single-stock query tool: content, usage trigger, and the alternative tool are all covered, and the output schema handles return structure. Minor gaps (pagination, data-availability caveats) are non-critical for a one-parameter stock lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter `code`, so the schema already documents it. The description reinforces the stock-level scope but adds no new format or syntax detail beyond 'sh600667'. Baseline 3 is appropriate when the schema carries the documentation weight.
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 clear resource (single-stock trading data) with enumerated content groups (主力资金/龙虎榜/大宗交易/融资融券) and explicitly scopes it to one stock. It names the sibling it is not (ashare_lhb for market-wide lists), so an agent can disambiguate without opening either 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?
Gives an explicit trigger ('用户问某只股票的主力资金/机构动向用这个') and an explicit exclusion with a named alternative ('全市场榜单请用 ashare_lhb——本工具只针对单只股票'). When-to-use and when-not-to-use are both stated directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_hotInspect
关注度排名(谁在被关注,⛔ 不是'谁在涨')。用户问'什么股票热门/大家在看什么/热度榜/热门板块/热文'用这个。⚠️⚠️ 5 类字段结构完全不同,⛔ 别按同一套字段读:stock 热搜股票(code/name/zdf/zxj) · wx 全市场热度(多 pv 热度值) · news 热门文章(⚠️ news_id/news_title/source,⛔ 无 code) · sector 热门板块(⚠️ symbol,⛔ 无 code) · etf 热搜 ETF(含 title/tag)。⚠️ 当前快照(无历史)· 免费工具(无需 Key)
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | stock/wx/news/sector/etf(默认 stock)—— ⚠️ 5 类字段各不相同 | stock |
| limit | No | 条数(默认 30,上限 50) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_ipoAInspect
新股日历(发行/申购/中签/上市)。用户问'新股/打新/IPO'用这个。只读查询;按发行日历更新。
| Name | Required | Description | Default |
|---|---|---|---|
| days | No | 天数(默认 15) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that the tool is read-only and that data updates according to the issuance calendar, which is valuable behavioral context. It does not discuss potential limitations or result behavior, but the output schema covers return 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 compact and front-loaded: it states what the tool returns, gives usage triggers, and notes read-only/update behavior. Every sentence earns its place; there is no 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?
For a single-parameter tool with an output schema, the description is sufficiently complete. It tells the agent what the tool covers, when to use it, and that it is a safe read operation updated by the issuance calendar.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the parameter description already explains the 'days' parameter with a default of 15. The tool description does not add meaningful semantic detail beyond that, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource—a new-stock calendar covering issuance/subscription/lottery/listing—and states explicit trigger keywords ('新股/打新/IPO'). This clearly differentiates it from the many sibling ashare 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 gives an explicit condition: use when the user asks about new stock/IPO topics. However, it does not mention when not to use it or name an alternative tool, so it stops short of full usage exclusion guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_klineAInspect
K线(日/周/月/季/年 + 分钟线)。用户问'走势/最近表现/历史K线/趋势'用这个。⚠️ 只要当前价用 ashare_quote;要分时(盘中每分钟价+累计量)用 ashare_minute ——分钟 K 线(OHLC 蜡烛)用本工具的 period=m1/m5/...,两者不是一回事。⚠️ 换手率字段名是 turnover(%)—— 与 ashare_quote、ashare_snapshot 同名同值。⚠️ 复权口径由服务端固定(无 adjust 参数):日线及以上前复权(除权除息日不跳空),分钟线不复权 —— 不要再自己复权(会二次复权)。⚠️ 分钟线属付费层(日/周/月免费),必须同时传 start+end(窗口近 1 个月),不支持 北交所 / 期货 / 外汇。只读查询;按收盘更新。· 免费工具(无需 Key)· 分钟线除外
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | 结束日期 YYYY-MM-DD(仅 day 与分钟线;须与 start 配对;分钟线必填) | |
| code | Yes | 股票代码:sh600667 | |
| count | No | 条数(默认 30,最大 1212) | |
| start | No | 起始日期 YYYY-MM-DD(仅 day 与分钟线;须与 end 配对;分钟线必填) | |
| period | No | 周期:day / week / month / season / year / m1 / m5 / m15 / m30 / m60 / m120(默认 day) | day |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden and does so richly: it discloses the server-fixed 复权 policy (day+ = 前复权, minute = 不复权, and warns against double-adjusting), that minute lines are a paid tier requiring start+end within a ~1-month window, unsupported markets (北交所/期货/外汇), read-only nature, and close-based update cadence.
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?
Purpose and routing are front-loaded, followed by caveat bullets that each carry distinct, non-redundant information. It is long, but the density is justified by the number of real traps (adjustment, tier gating, sibling disambiguation) it prevents.
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 five parameters, an output schema (so return format needn't be described), and no annotations, the description covers everything an agent needs: routing, adjustment semantics, tier/pairing constraints, and unsupported scope. Nothing material 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?
Schema coverage is 100%, so the baseline is 3, but the description adds real value beyond the schema: the turnover field name mapping (turnover, shared with ashare_quote/ashare_snapshot), the absence of an adjust parameter, and the start+end pairing requirement for minute lines. It stops short of explaining count/period interaction, so not a 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?
States a specific resource (K线) with its scope (日/周/月/季/年 + 分钟线) and a clear trigger verb set ('走势/最近表现/历史K线/趋势'). It explicitly distinguishes itself from siblings ashare_quote (current price) and ashare_minute (分时), including the subtle 分钟K线 vs 分时 distinction, so an agent can route without opening any 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?
Gives explicit when-to-use triggers and explicit when-not-to-use with named alternatives: current price → ashare_quote, 分时 → ashare_minute. Also states the period=m1/m5 route for minute candles. Nothing is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_kline_fullAInspect
全历史K线(10 年日线,2016-08-08 起)+ 可选复权口径。用户问'十年走势/长期回测/全历史数据/复权价/后复权/原始价'用这个。⚠️ 与 ashare_kline 的三点不同:① 数据量与范围 —— 本工具全历史 10 年(2465 条);ashare_kline 上限 1212 条;② 复权可选 —— 本工具有 fq 参数(qfq 前复权 / hfq 后复权 / nofq 原始价);ashare_kline 写死前复权、无参数;③ 标的范围 —— 本工具仅 A 股股票(⛔ ETF/可转债/指数/板块/港股/美股/期货/外汇传进来会明确报错,请改用 ashare_kline)。⚠️ 做回测请用 fq=hfq 或 fq=nofq(前复权序列会随新的除权除息重算,不可复现)。⚠️ 字段固定 7 列:time open high low close volume amount(无 turnover)。⚠️ 付费工具(需 Key)—— 门槛为 Standard(¥29.9)及以上,Trial(¥9.9)不可用;且有独立日额度(Standard 200 / Pro 500 / Unlimited 2000 次/天),余量可查 ashare_usage。
| Name | Required | Description | Default |
|---|---|---|---|
| fq | No | 复权:qfq 前复权(默认)/ hfq 后复权 / nofq 原始价 | qfq |
| end | No | 结束日期 YYYY-MM-DD(省略 = 到最新) | |
| code | Yes | A股代码:sh600667 / sz000001 / bj920047(⛔ 不支持 ETF/指数/板块/港美股) | |
| start | No | 起始日期 YYYY-MM-DD(省略 = 从 2016-08-08) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses paid tier requirement (Standard ¥29.9+,Trial不可用), independent daily quotas (Standard 200 / Pro 500 / Unlimited 2000), unsupported-instrument error behavior, and a reproducibility caveat for backtesting (qfq序列会重算).
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?
Front-loaded purpose followed by structured caveats. Dense but nearly every sentence is decision-relevant for this complex, paid, sibling-overlapping tool. Formatting (bold, ⚠️) aids scannability, though it is on the verbose side.
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 return columns needn't be repeated, yet the description still lists them. Combined with instrument scope, error behavior, auth/quota details, and fq semantics, an agent has everything needed 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?
Schema description coverage is 100%, so baseline is 3. The description adds meaningful parameter semantics beyond the schema: fq choice guidance for backtesting (hfq/nofq vs default qfq) and the start default (2016-08-08). Some content overlaps the schema, keeping it from a 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?
States a specific resource and scope: '全历史K线(10 年日线)+ 可选复权口径'. Explicitly differentiates from sibling ashare_kline with three concrete dimensions (data volume, fq parameter, instrument scope), so an agent can select correctly without opening either 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?
Provides explicit trigger phrases ('十年走势/长期回测/全历史数据/复权价/后复权/原始价') and clear exclusions (ETF/可转债/指数/港美股等会报错,请改用 ashare_kline). Also gives conditional advice: '做回测请用 fq=hfq 或 fq=nofq'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_lhbInspect
全市场龙虎榜分榜(6 类):type=all 全市场总榜(净买/买卖额)/ institution 机构榜(机构买入/净买/机构数)/ activeseat 活跃席位(席位买入额+关联个股)/ winbuy 高胜率买入(净买额/胜率/席位明细)/ winseat 高胜率席位(席位胜率+关联个股)/ hotmoney 游资榜。用户问'今天机构买了什么/龙虎榜/高胜率席位/活跃席位'用这个。⚠️ hotmoney(游资榜)上游暂无数据,建议改用 all/activeseat/winbuy。⚠️ 龙虎榜为收盘后发布(一般 18:00 后);date 留空=最近交易日。⚠️ 某只股票的上榜明细(上榜原因/营业部)请用 ashare_fund——本工具是市场级榜单,不针对单只股票。
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | 日期 YYYY-MM-DD(留空=最近交易日) | |
| type | No | 榜单类型(默认 institution):all/institution/activeseat/winbuy/winseat/hotmoney | institution |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_macroAInspect
宏观数据(GDP/CPI/PMI/LPR/国债收益率/财政)。用户问'宏观/经济数据/利率/LPR/CPI'用这个。⚠️ 要指数行情请用 ashare_quote 或 ashare_market_overview——本工具只给宏观指标。只读查询;按发布日历更新(未到发布日就没有新值)。
| Name | Required | Description | Default |
|---|---|---|---|
| names | No | 指标短名(如 cn_gdp/cn_cpi_ppi/cn_lpr) | |
| region | No | 地区(默认 cn) | cn |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
无注解,但描述主动披露了只读查询和按发布日历更新(未到发布日无新值)的行为。这超出了纯粹的功能描述,提供了实际行为约束。虽然未涉及错误处理或响应格式,但有输出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,描述覆盖了使用场景、行为(只读、日历更新)、参数示例,已足够让agent正确调用。未提及错误处理或分页,但鉴于工具简单且输出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描述覆盖率100%,两个参数(names、region)已有描述。描述中额外提供了names的示例(如cn_gdp/cn_cpi_ppi/cn_lpr),帮助理解参数取值,增加了schema之外的价值,但未深入格式或枚举,故评4。
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?
描述明确说明工具提供宏观数据(GDP/CPI/PMI/LPR/国债收益率/财政),并指定使用场景(用户问宏观/经济数据等),同时区分了与ashare_quote和ashare_market_overview的不同(指数行情)。动词明确,资源具体,与兄弟工具区分清楚。
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?
明确说明何时使用(宏观/经济数据/利率/LPR/CPI),并给出明确排除条件(要指数行情用其他工具),同时提及只读查询和更新日历,提供了完整的适用场景和限制。
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_market_klineInspect
全市场单日K线 —— 一次请求返回某交易日全 A 股(5000+ 只)的日线。用户问'全市场当天行情/一次拿所有股票K线/每日增量更新/全A股数据'用这个。⚠️ 用途:替代「逐只循环 5000 次」——每天收盘后调 1 次即可拿到全市场,适合建本地行情库/做全市场扫描/每日批量更新。⚠️ 两种硬限定:① 仅 Pro(¥99)与 Unlimited(¥199) 可用(Standard 及以下会被拒);② 1 次调用折算 500 次额度(一次动 5000+ 只,量级远超单只接口)。⚠️ 另有独立日额度(Pro 200 / Unlimited 1000 次/天),余量可查 ashare_usage。⚠️ 数据范围:仅 A 股股票(5572 只)、2016-08-08 起、不复权原始价;不含 ETF/可转债/指数/板块/港股/美股。最新数据到前一交易日(盘中当日数据不可用)。⚠️ 体积约 785 KB/次。字段 8 列:code time open high low close volume amount。
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | 交易日 YYYY-MM-DD(如 2026-09-30;非交易日返回空) | |
| codes | No | 可选:只取指定股票,逗号分隔(如 sh600519,sz000001) | |
| limit | No | 分页:每次最多 N 只(0 = 全部 5000+ 只) | |
| offset | No | 分页偏移(配合 limit) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_market_overviewAInspect
市场级画像。type=summary 画像总评/trade 收盘/interval 多周期/technical 大盘技术/valuation 估值分位/rotation 风格轮动。用户问'今天市场怎么样/大盘环境/风格轮动/估值分位'用这个。⚠️ 涨跌家数(市场广度)请用 ashare_changedist:本工具的 updown 模块为 T-1 口径(返回里会标数据日期,可能滞后一个交易日),已不推荐用于回答'今天的涨跌家数'。· 免费工具(无需 Key)
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | 类型(默认 summary;涨跌家数请改用 ashare_changedist) | institution |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the T-1 data lag for the updown module, states that the tool is free and requires no Key, and warns that the updown module is deprecated for today's breadth. It doesn't describe the output format in detail, but the output schema exists and the key behavioral caveat is disclosed.
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 with the core purpose, then lists type values, then gives usage triggers and the important caveat. It is dense but every sentence earns its place. The warning is a bit long but necessary for correctness.
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 single-parameter tool with an output schema, the description covers the main usage trigger, the type values, the key caveat about T-1 lag, and the alternative tool. It doesn't explain the output schema's structure, but the output schema itself handles that. The only minor gap is not explaining what each type returns in detail, but the type names are self-explanatory.
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 100% description coverage for the single 'type' parameter, and the description adds meaning by listing the valid type values and their meanings (summary/trade/interval/technical/valuation/rotation). The description also reinforces the schema's warning about using ashare_changedist for breadth. This adds value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states this is a market-level overview tool with a specific verb ('画像' / profile) and enumerates the distinct type values (summary/trade/interval/technical/valuation/rotation). It also names the exact user queries that should trigger this tool, which distinguishes it from siblings like ashare_changedist and ashare_technical.
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 explicitly tells the agent when to use this tool ('用户问今天市场怎么样/大盘环境/风格轮动/估值分位用这个') and explicitly warns against using it for market breadth, directing the agent to ashare_changedist instead. It also notes the T-1 lag caveat, which is a clear exclusion condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_minuteAInspect
分时(当日 / 近 5 日盘中走势):盘中每分钟的价格与累计成交量。用户问'今天分时/盘中走势/日内走势/近 5 日分时'用这个。⚠️ 与 ashare_kline 的分钟 K 线不是一回事:本工具返回分时(每分钟一个价+累计量),K 线返回 OHLC 蜡烛 —— 要蜡烛图用 ashare_kline 的 period=m1/m5/...。⚠️ days 只有 1(当日)和 5(近 5 个交易日)两档,没有 2/3/4。⚠️ 付费工具(需 Key)。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667(同样支持 指数/板块/ETF/港股/美股/可转债) | |
| days | No | 档位:1 = 当日(默认)· 5 = 近 5 个交易日 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses two meaningful traits: the tool is paid and requires a Key, and days accepts only the values 1 or 5. It stops short of describing rate limits, error behavior, or data freshness, but covers the operationally important constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose and usage trigger, then uses bold warnings for the two key gotchas (kline distinction, days restriction) and the paid note. Dense with emoji/bold but every clause earns its place; slightly busy formatting keeps it from a 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 exists, so return values need not be explained. The description covers purpose, when-to-use, the sibling alternative, parameter constraints, and the paid requirement — everything an agent needs 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?
Schema coverage is 100%, so the baseline is 3. The description adds value beyond the schema by emphasizing that days has only two valid values and that 2/3/4 are rejected, which the schema description does not state explicitly. It adds nothing new on code.
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 resource and scope: per-minute price plus cumulative volume for the current day or last 5 days. It explicitly differentiates itself from sibling ashare_kline by contrasting 分时 (one price + cumulative volume per minute) with OHLC candles, so an agent can pick between them without opening either 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?
Gives explicit trigger phrasing ('今天分时/盘中走势/日内走势/近 5 日分时') and names the alternative tool (ashare_kline with period=m1/m5) with the condition that selects it. Also states the days constraint and the paid-Key prerequisite, leaving little to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_newsInspect
个股财经资讯。不传 id ⇒ 列表(标题 + 来源 + 时间);传 id ⇒ ⭐ 该条完整正文。用户问'这股票最近有什么新闻/消息面/这条新闻讲了什么'用这个。⭐ 正文是干净的 Markdown(已清洗 HTML 标签/图片占位/无效内链,保留股票代码关联如 茅台(sh600519),时间 YYYY-MM-DD HH:MM:SS)—— 可直接喂给大模型。⚠️ 列表只有最新 N 条(上游不提供翻页/历史)—— 要历史公告请用 ashare_notice。⚠️ 列表里的 url 指向动态页面,直接抓不到正文 ⇒ 要正文请用本工具的 id 参数。
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | 资讯 id(如 SN20261010173533a6c32421)——传它就取完整正文 | |
| code | No | 个股/指数/ETF/板块代码:sh600519(取列表时必填) | |
| type | No | 可选:按资讯类型过滤(传 1 只返「研报」类) | |
| limit | No | 条数(默认 50,上限 100) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_noticeInspect
上市公司公告。不传 id ⇒ 列表(code 必填,支持 type / limit / offset 翻页,可回溯约 20 年);传 id ⇒ 该公告详情。用户问'公告/披露/半年度报告/年报在哪'用这个。⚠️ 详情有两种形态(实测约 9/10 给正文):多数短公告 ⇒ text=正文(直接读);少数长报告(如半年报 100+ 页)⇒ text 空、url=PDF 链接。⇒ 判据:先看 text,空则用 url。⚠️ 长报告的 PDF 请自行获取与解析(用你环境里的 PDF 能力)——我们只给链接,不代做解析。💡 要财务数字请用 ashare_finance(结构化,比从 100+ 页 PDF 里抠快得多)。
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | 公告 id(如 nos1225475868)——传它就取详情 | |
| code | No | 股票代码(取列表时必填) | |
| type | No | 可选:公告类型 0-7 | |
| limit | No | 条数(默认 50,上限 100) | |
| offset | No | 偏移量(有效,0 ~ total−1) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_orderbookAInspect
五档盘口:买一买五 / 卖一卖五的价格与挂单量(手) + 现价/涨跌/数据时间。用户问'封单多少/买盘卖盘/盘口/挂单/支撑压力位/有没有大单托着'用这个。字段:b1_p/b1_vb5_p/b5_v 买档价格/量 · a1_p/a1_va5_p/a5_v 卖档。⚠️ 本工具是秒级快照(每 10 秒刷新),盘中才有意义(收盘后为当日最后快照)——要实时成交价用 ashare_quote(免费,字段少更轻)。⚠️ 量单位是手(×100 = 股);跌停买档全 0 / 涨停卖档全 0(正常)。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667 / sz000001 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses refresh cadence (每 10 秒刷新), timing semantics (盘中才有意义, 收盘后为当日最后快照), the volume unit (手, ×100 = 股), and limit-up/limit-down edge cases (跌停买档全 0 / 涨停卖档全 0). It stops short of auth/permission or failure behavior, but the disclosed operational traits are substantial.
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 core purpose and routing are front-loaded, and the warning symbols make the caveats scannable. It is somewhat dense with field enumeration that overlaps the output schema, but every element (unit, timing, edge cases) 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?
Given a present output schema, the description needn't explain return values yet it covers the non-obvious ones anyway, and it fully covers timing, units, edge cases, and the sibling alternative. Nothing an agent needs to invoke this correctly 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 is one parameter (code) with 100% schema description coverage, including the format example sh600667/sz000001, so the schema already does the heavy lifting. The description's field listing (b1_p/b1_v etc.) describes outputs, not the input parameter, so it adds nothing to input semantics. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (五档盘口) and enumerates exactly what it returns: buy1–buy5/sell1–sell5 price and volume plus current price/change/data time. It also explicitly distinguishes itself from the sibling ashare_quote, so an agent can tell them apart without opening either 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?
It gives explicit user-intent triggers ('封单多少/买盘卖盘/盘口/挂单/支撑压力位/有没有大单托着') and names the alternative for a different need (实时成交价用 ashare_quote), including why (免费,字段少更轻). This is a clear when-to-use / when-to-use-something-else routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_playbooksInspect
量化方法论库:13 条「怎么判断市场」的流程(含判据 / 阶段 / 实测证据)。用户问'怎么判断/交易方法/方法论/判断流程'用这个。⚠️ 这是方法论清单(帮助判断,非投资建议);要看可回测的策略用 ashare_strategies。⚠️ 可按分类或 id 取单条。⚠️ 付费工具(需 Key):Standard(¥29.9)及以上。
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | 取单条方法论(省略=返回全部) | |
| category | No | 按分类筛选(省略=全部) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_quoteAInspect
A股/港股/美股实时行情快照(轻量 8 字段:现价/开高低/成交量/成交额/换手率)。用户问'某股票现在多少钱/什么价'用这个。⚠️ data 是数组(默认 30 条日线,data[0] 为最新)—— 取现价用 data[0].last。⚠️ 换手率的字段名是 turnover(%)—— 与 /v1/snapshot 同名同值。⚠️ 不含估值/市值 —— 用 ashare_snapshot(35 字段,付费)。要历史走势请用 ashare_kline;要**五档盘口(order book)**请用 ashare_orderbook。只读查询;交易时段内实时。· 免费工具(无需 Key)
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码,带市场前缀:sh600667 / sz000001 / hk00700 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and does disclose useful traits: 只读查询 (read-only), 交易时段内实时 (real-time only during trading hours), and 免费工具(无需 Key). It also warns that data is an array with data[0] as latest. It does not mention rate limits or pagination, keeping it short of a 5.
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 core purpose and trigger are front-loaded, followed by structured ⚠️ warnings. Dense but each warning carries actionable content (array shape, field name collision with /v1/snapshot, excluded fields). Slightly heavy on markers but nothing is pure 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?
An output schema exists, yet the description still helpfully clarifies the data array ordering and the turnover field name. Combined with the sibling routing and read-only/free/real-time notes, an agent has enough to call it correctly; only edge behaviors like throttling are unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single code parameter is fully documented in the schema (market-prefixed formats like sh600667/sz000001/hk00700). The description's extra field hints (data[0].last, turnover) describe output usage rather than parameter meaning, so the schema does the heavy lifting — baseline 3.
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 (real-time quote snapshot) and enumerates the 8 returned fields (现价/开高低/成交量/成交额/换手率). It also explicitly distinguishes itself from ashare_snapshot, ashare_kline, and ashare_orderbook, so an agent can route without opening any 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?
Gives the exact trigger ('用户问某股票现在多少钱/什么价用这个') and names three alternatives with the condition that selects each (valuation/market cap → ashare_snapshot, history → ashare_kline, order book → ashare_orderbook). When/when-not and alternatives are all explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_screenAInspect
因子选股(量化筛股)。expression 是多因子交集表达式,例:intersect([PE_TTM > 0, PE_TTM < 20, ROETTM > 15]);常用字段:PE_TTM/PB/PS_TTM/ROE/ROETTM/ROIC/DividendRatioTTM/OperatingRevenueGrowRate/DebtAssetsRatio。用户问'筛选/选股/符合条件的股票'用这个。
| Name | Required | Description | Default |
|---|---|---|---|
| expr | Yes | 因子表达式,如 intersect([PE_TTM>0, PE_TTM<20]) | |
| limit | No | 条数(默认 20) | |
| orderby | No | 排序字段(如 ROETTM) |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must supply behavioral context. It adds useful semantics by explaining that the expression is a multi-factor intersection and listing common factor fields. However, it does not disclose side effects, permissions, rate limits, error behavior, or return characteristics.
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 with purpose, then gives a compact example, a useful field list, and a user-intent trigger. There is no filler or unnecessary repetition of schema content; each clause contributes.
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 fully documented schema and the presence of an output schema, the description covers the remaining needs for correct invocation: expression syntax, valid factor fields, and the exact query context. An agent can select and call this tool 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 coverage is 100%, so the baseline is 3; the description adds value by explaining the multi-factor intersection semantics, giving a concrete example, and enumerating valid factor fields. It does not elaborate on limit/orderby, but the schema already documents those.
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 opening '因子选股(量化筛股)' names a specific operation and resource (factor-based A-share screening), and the closing '筛选/选股/符合条件的股票' maps it to user intent. It does not explicitly contrast with sibling tools such as ashare_search, so differentiation is clear but not fully articulated.
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 states an explicit when-to-use condition: when the user asks to '筛选/选股/符合条件的股票' (screen/select stocks matching criteria). It provides no when-not-to-use guidance or named alternatives, which prevents a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_searchAInspect
股票/基金/板块搜索(模糊词消歧)。用户只给名称时先用这个确认代码。⚠️ 本工具只返回代码与名称,不含行情——拿到代码后再调 ashare_quote / ashare_kline。只读查询。
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | 关键词,如 '太极实业' 或 '600667' |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the tool is read-only, states the exact output scope (code and name only), and explicitly flags what it does NOT return (market data). It also gives workflow guidance, though it does not mention auth, rate limits, or error 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?
Three short sentences, front-loaded with the purpose and the critical scoping warning. Every sentence earns its place: what it does, when to use it, what it lacks, and what to do next.
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 with one parameter, an output schema exists, and the description covers invocation, output scope, read-only safety, and next-step routing. An agent has everything needed to call and sequence this 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?
Schema coverage is 100% and the parameter description already includes meaningful examples like '太极实业' or '600667'. The description reinforces that q represents a fuzzy query for disambiguation but does not add substantial new meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states a specific verb and scope: search over stocks/funds/sectors for fuzzy term disambiguation. It clearly identifies the core job — confirming the code when the user only gives a name — and differentiates itself from quote/kline tools by saying it returns only code and 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?
Explicitly says to use this tool first when the user provides only a name, and explicitly tells the agent to switch to ashare_quote or ashare_kline after obtaining the code. It also excludes the quote use case by warning that this tool does not include market data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_sectorAInspect
板块行情榜(行业/概念/地域涨幅 + 领涨股 + 涨跌家数)。用户问'哪些板块在涨/板块轮动/行业热度'用这个。⚠️ 要板块估值分位请用 ashare_sector_valuation;要产业链上下游请用对应工具。只读查询;交易时段内更新。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It clearly states '只读查询' (read-only), which signals safe invocation, and '交易时段内更新', which sets freshness expectations. This goes beyond the minimal mutation-safety disclosure and is valuable context.
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, front-loads the output contents and primary use cases, then adds routing exclusions and behavioral caveats. Every sentence adds distinct value with no redundant 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 zero parameters and an output schema, the tool is simple enough that the description fully covers what the agent needs: what data is returned, when to use it, when not to use it, read-only safety, and data freshness. No material gap remains.
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 has zero parameters, and the schema coverage is 100% (empty properties). No parameter description is needed; the baseline of 4 applies since there is nothing for the description to add.
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 names a concrete resource ('板块行情榜') and specifies its contents: 行业/概念/地域涨幅、领涨股、涨跌家数. It also names the exact sibling (ashare_sector_valuation) as a distinct alternative, clearly differentiating the tool from at least one major 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?
Provides explicit trigger examples ('哪些板块在涨/板块轮动/行业热度') and an explicit exclusion: for 估值分位 use ashare_sector_valuation. The only gap is the vague '对应工具' for 产业链上下游, which does not name a specific sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_sector_valuationAInspect
板块估值(PE/PB/PS/PCF + 股息率 + 历史百分位)。用户问'某板块贵不贵/估值分位'用这个。⚠️ 要看板块涨跌幅与领涨股请用 ashare_sector——本工具只给估值指标。只读查询;板块代码形如 pt01801780(pt 前缀 + 8 位)。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 板块代码:pt01801780 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It discloses the read-only nature ('只读查询') and the scope constraint (only valuation metrics, not price data). While it doesn't mention rate limits or auth, these are not critical for a simple read query, and the read-only trait is explicitly stated. This goes beyond a bare 'get' and adds a meaningful behavioral constraint.
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?
Three sentences, each earning its place: the first defines the deliverable, the second gives usage and alternative routing, the third adds read-only and format. No filler, and the key discriminator (vs ashare_sector) is front-loaded. Efficient and perfectly scoped.
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 single-parameter read-only tool with an output schema already present, the description covers all that an agent needs: purpose, when to use, when not to use (with named alternative), read-only status, and code format. Nothing is missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers the parameter with an example, but the description adds the format rule 'pt 前缀 + 8 位' (pt prefix + 8 digits), which is structural guidance beyond the schema's simple example. This gives the agent a template to validate the input, exceeding the baseline of 3.
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 opens with the exact deliverable — valuation metrics (PE/PB/PS/PCF, dividend yield, historical percentile) — and explicitly contrasts with the sibling ashare_sector, which handles price change and leading stocks. The verb '估值' (valuation) plus the resource '板块' makes the purpose unambiguous and distinct from all 21 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?
It states precisely when to use this tool ('用户问某板块贵不贵/估值分位') and explicitly warns to use ashare_sector instead when looking at price change or leading stocks. The alternative tool is named, and the condition for choosing it is given — no inference is required.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_shareholderAInspect
股东研究:十大股东/股东户数(筹码集中度)/机构持仓。用户问'谁在持有/股东变化/筹码集中/机构持仓'用这个。⚠️ 要看机构整体在全市场买什么,请用 ashare_lhb 的机构榜。只读查询;股东户数按定期报告披露(季度级)。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that the tool is read-only and that shareholder count data follows periodic report disclosure (quarterly). This adds meaningful behavioral context beyond the schema, though it does not cover error handling or authentication.
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 concise and well-structured, starting with the purpose, then trigger phrases, an exclusion with an alternative, and a note on read-only and data frequency. Each sentence adds value without 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?
Given the tool's simplicity (one parameter) and the presence of an output schema, the description covers all essential context: purpose, usage triggers, exclusions, and data freshness. Nothing critical is missing for an agent to invoke 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?
Only one parameter (code) exists, and the schema already provides its description and example ('sh600667'). Since schema description coverage is 100%, the tool description adds no additional parameter meaning, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's scope: shareholder research covering top ten shareholders, shareholder count (chip concentration), and institutional holdings. It also lists specific user query triggers ('谁在持有/股东变化/筹码集中/机构持仓'), making the purpose unambiguous and differentiating it from siblings like ashare_lhb.
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?
Explicitly specifies when to use this tool (when users ask about holders, shareholder changes, chip concentration, institutional holdings) and when not to, directing users to ashare_lhb for overall institutional buying. This is clear, actionable guidance with an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_snapshotAInspect
全字段行情画像:价格 + 盘口(买五卖五+委差)+ 估值(PE TTM/动/静 + PB)+ 市值(流通/总)+ 股本(流通/总)+ 打板(涨停/跌停价 + 量比 + 振幅 + 涨速)+ 标识(证券类型/股票状态/币种)+ 外盘/内盘。用户问'这股票估值怎么样/PE PB 多少/市值多大/股本多少/涨停价多少/涨停跌停板在哪'用这个。⚠️ 与 ashare_quote 的分工:quote 轻(8 字段)免费;本工具全(35 字段)· 付费——只要现价/涨跌用 ashare_quote 更轻(字段少、省上下文)。✅ 计费 = 次数:本工具 1 次拿全——要估值+市值+股本+涨停价多项时,比分别调 quote/valuation/orderbook 更省次数(3 次 → 1 次)。⚠️ 仅 A 股(港股/美股字段布局不同,用 ashare_quote)——传其他市场返回空,不返回错数据。⚠️ 单位:量=手 · 成交额=万元 · 市值=亿元 · 股本=股 · 比率=百分数。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | A 股代码:sh600667 / 600667 / sz300750 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses that this tool is paid while ashare_quote is free, that billing is per call, that non-A-share inputs return empty rather than wrong data, and that units are standardized. This is substantial behavioral context beyond the 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?
The description is long but dense and clearly structured with bolded headings and line breaks. Each section contributes distinct value: field inventory, user intents, sibling routing, cost model, market restriction, and units. Nothing feels redundant or decorative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter, an output schema, and no annotations, the description covers everything an agent needs: what data is included, when to use it, when not to, what it costs, what happens for unsupported markets, and unit conventions. The output schema handles return-value detail, so no critical context 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?
Schema description coverage is 100%: the only parameter `code` is already documented as an A-share code with format examples. The description reinforces the A-share restriction and empty-return behavior, but adds no new parameter syntax or format details, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource ('全字段行情画像') and enumerates exactly what it returns: price, order book, valuation, market cap, shares, limit-up/down prices, identifiers, and internal/external offer. It also names the sibling tool ashare_quote and explains the core difference, so an agent can select this tool without opening other 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 gives explicit trigger phrases ('用户问...用这个'), direct comparison with ashare_quote ('只要现价/涨跌用 ashare_quote 更轻'), and a market exclusion ('仅 A 股...用 ashare_quote'). It also covers billing trade-offs, telling the agent when calling this tool once is cheaper than multiple quote/valuation/orderbook calls.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_strategiesInspect
量化策略清单:返回可回测的全部策略(20 条单标的择时 + 9 条组合),含各自参数范围与说明,⭐ 并附「实测表现」(performance 字段)—— 在 800 只(沪深300+中证500)· 2019 年至今、含真实交易成本上跑出的真实成绩。verdict 分级:effective 实测有效 / neutral 一般 / weak 偏弱 / avoid 实测亏损;note 字段给避坑提示。⚠️ 无效的策略同样列出(便于避开常见陷阱,如高换手被成本吃光)。用户问'有哪些策略/哪些策略能赚/哪个策略坑/策略参数是什么'用这个。⚠️ 这是清单 + 实测摘要(不跑新计算);要真跑回测用 ashare_backtest。⚠️ 付费工具(需 Key):Standard(¥29.9)及以上。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
ashare_technicalAInspect
技术指标 MA/MACD/KDJ/RSI/BOLL。用户问'技术面/指标/金叉死叉/超买超卖'用这个。⚠️ 只要原始 K 线(不算指标)请用 ashare_kline——本工具返回已算好的指标值。只读查询;按日线收盘更新。
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | 股票代码:sh600667 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses read-only behavior and that data updates on daily close, which is useful. It does not mention any limitations such as historical depth or specific calculation details, but the read-only nature is clearly stated. Since the tool is simpler, this 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?
The description is compact and structured: it opens with the main purpose, then provides usage triggers, an explicit exclusion with sibling, and a note on read-only and update frequency. Every sentence adds value, no fluff.
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 that there is an output schema, the return format is already defined. The description covers the key aspects: what it does, when to use, when not to use, and behavioral notes. It lacks detail on which indicators are included, but the indicator list is already in the description. The tool is simple 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 coverage is 100%, and the code parameter is clearly described as 'sh600667'. The description adds no new detail about the parameter beyond confirming it is needed to identify the stock. It doesn't add syntax or format details but the schema already suffices.
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 returns technical indicators (MA/MACD/KDJ/RSI/BOLL) and directly addresses the sibling ashare_kline, which returns raw K-line data. The verb '技术指标' is specific and the resource is the code parameter. It distinguishes itself from the kline sibling by explicitly noting the difference in computed values.
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 explicitly tells when to use this tool—when the user asks for technical indicators, golden cross, death cross, overbought/oversold—and when not to use it, when raw K-line is needed, directing to ashare_kline. It also notes that it is a read-only query and updated by daily close, providing clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_usageAInspect
查自己的 API 用量与剩余额度(今日调用次数/剩余总量/到期时间/限流额度)。用户问'我的额度还剩多少/今天调了多少次'用这个。只读查询;需 API Key。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states '只读查询' (read-only) and '需 API Key' (requires API key), which are critical for an agent to know before invoking. It does not disclose rate limits or error behavior, but for a read-only usage query this is sufficient.
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 sentences with zero waste. The main purpose is front-loaded, followed by usage triggers and key behavioral notes. Every clause 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 (no params) and an output schema exists, so return-value explanation is not required. The description covers purpose, the exact return fields, when to use it, read-only status, and authentication needs – everything an agent needs to invoke and interpret results 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 tool has zero parameters and the schema is empty, so schema coverage is effectively 100%. Per the rubric, zero-parameter tools get a baseline of 4 because there is no parameter semantics to add. The description adds no param info, which is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific verb and resource: '查自己的 API 用量与剩余额度' (check own API usage and remaining quota). It also enumerates the exact data points returned (今日调用次数/剩余总量/到期时间/限流额度), making it easily distinguishable from market data siblings like ashare_quote or ashare_kline.
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 provides the user query patterns that should trigger this tool ('用户问"我的额度还剩多少/今天调了多少次"用这个'), which is strong when-to guidance. However, it does not explicitly name alternatives or state when NOT to use it, though the sibling list makes that obvious.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ashare_wiki_searchInspect
产品文档检索:字段单位 / 口径说明 / 常见误用 / 跨市场差异。⚠️ 不确定某字段的含义、单位、口径时先用这个查,比凭记忆回答准。渐进加载(省上下文):不带参返回目录;q=关键词 返回摘要(不含全文);slug=xxx 取该篇全文。建议路径:先看目录 → 再取需要的那一篇。免费工具(无需 Key),但每次调用仍计入用量与限流。
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | 关键词检索(如 '换手率单位' / 'code 格式');留空=返回目录 | |
| lang | No | 语言:zh(默认)/ en | zh |
| slug | No | 取某一篇全文(如 units / kline-fields);留空=不用 |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
ashare_lhb2 fields changed- added
Input schema / properties / dateAdded value: +{ + "default": "", + "description": "日期 YYYY-MM-DD(留空=最近交易日)", + "title": "Date", + "type": "string" +} - changed
Input schema / properties / type / descriptionPrevious value: -"榜单类型(默认 institution)"New value: +"榜单类型(默认 institution):all/institution/activeseat/winbuy/winseat/hotmoney"
1 tool update
- Changed
ashare_hot1 field changed- changed
Input schema / properties / type / descriptionPrevious value: -"榜单类型:stock/wx/news/sector/etf(默认 stock)"New value: +"stock/wx/news/sector/etf(默认 stock)—— ⚠️ 5 类字段各不相同"
1 tool update
- Changed
ashare_news4 fields changed- added
Input schema / properties / code / defaultAdded value: +"" - changed
Input schema / properties / code / descriptionPrevious value: -"个股/指数/ETF/板块代码:sh600519"New value: +"个股/指数/ETF/板块代码:sh600519(取列表时必填)" - added
Input schema / properties / idAdded value: +{ + "default": "", + "description": "资讯 id(如 SN20261010173533a6c32421)——传它就取完整正文", + "title": "Id", + "type": "string" +} - removed
Input schema / requiredRemoved value: -[ - "code" -]
3 tool updates
- Changed
ashare_hot1 field changed- added
Input schema / properties / typeAdded value: +{ + "default": "stock", + "description": "榜单类型:stock/wx/news/sector/etf(默认 stock)", + "title": "Type", + "type": "string" +}
- Added
ashare_news - Added
ashare_notice
1 tool update
- Added
ashare_market_kline
1 tool update
- Added
ashare_wiki_search
5 tool updates
- Added
ashare_backtest - Added
ashare_backtest_batch - Added
ashare_factors - Added
ashare_playbooks - Added
ashare_strategies
1 tool update
- Added
ashare_kline_full
2 tool updates
- Changed
ashare_kline4 fields changed- changed
Input schema / properties / count / descriptionPrevious value: -"条数(默认 30)"New value: +"条数(默认 30,最大 1212)" - added
Input schema / properties / endAdded value: +{ + "default": "", + "description": "结束日期 YYYY-MM-DD(仅 day 与分钟线;须与 start 配对;分钟线必填)", + "title": "End", + "type": "string" +} - changed
Input schema / properties / period / descriptionPrevious value: -"周期:day / week / month(默认 day)"New value: +"周期:day / week / month / season / year / m1 / m5 / m15 / m30 / m60 / m120(默认 day)" - added
Input schema / properties / startAdded value: +{ + "default": "", + "description": "起始日期 YYYY-MM-DD(仅 day 与分钟线;须与 end 配对;分钟线必填)", + "title": "Start", + "type": "string" +}
- Added
ashare_minute
Related MCP Connectors
China A-share market data for research, backtesting and AI agents via MCP.
China A-share data for AI agents: 57 read-only tools plus 6 tools for your own watchlist.
MCP server giving AI agents one-connection access to China A-share market intelligence: financials,
Provide access to Chinese stock market data including historical prices, real-time data, news, and…
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceProvides access to Chinese mainland financial data including A-stock quotes, financial statements, industry analysis, and macroeconomics through 42 MCP tools, with automatic data source fallback and no API key required.43Apache 2.0

ApocData MCP Serverofficial
Alicense-Not gradedqualityBmaintenanceProvides 46 no-authentication A-share (Chinese stock market) data tools covering quotes, financials, capital flows, sectors, announcements, macro data, and more, callable from any MCP client without API keys.75 npm2Apache 2.0- Flicense-Not gradedqualityDmaintenanceMCP server that wraps SFC financial data API into 32 tools for comprehensive A-share market data, including real-time quotes, rankings, limit-up statistics, news, themes, financials, charts, research reports, and watchlists.-
- AlicenseAqualityDmaintenanceProvides access to Chinese A-share market financial data, including historical K-line, real-time quotes, financial statements, shareholder information, and technical indicators, via MCP protocol.1210 npm4MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.