Skip to main content
Glama
24mlight

A Share MCP

by 24mlight

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation3/5

    Most tools have distinct purposes targeting specific financial data types (e.g., balance sheets, dividends, K-line data), but there is significant overlap in data retrieval patterns. Tools like get_balance_data, get_cash_flow_data, get_profit_data, and get_operation_data all follow the same quarterly data fetch pattern for different metrics, which could cause confusion about which specific financial indicator is needed. However, the clear naming and descriptions help mitigate this overlap.

    Naming Consistency5/5

    Tool names follow a highly consistent 'verb_noun' pattern throughout, primarily using 'get_' or 'list_' prefixes (e.g., get_adjust_factor_data, list_industries, search_stocks). Minor deviations like is_trading_day and normalize_stock_code still fit the pattern semantically. This consistency makes the tool set predictable and easy to navigate.

    Tool Count2/5

    With 41 tools, the count is excessive for a stock data server, leading to bloat and potential overwhelm. Many tools are highly specialized (e.g., get_month_end_trading_dates, get_market_analysis_timeframe) that could be consolidated into broader functions. A more focused set of 15-20 tools would better serve the domain without sacrificing functionality.

    Completeness5/5

    The tool set provides comprehensive coverage for Chinese stock market data, including historical prices, financial statements, indices, dividends, trading calendars, and industry classifications. It supports full CRUD-like data retrieval across multiple dimensions (time, frequency, adjustment) and includes utility functions for code normalization and constant listing, leaving no obvious gaps for the stated purpose.

  • Average 2.6/5 across 41 of 41 tools scored. Lowest: 1.3/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • Tools from this server were used 2 times in the last 30 days.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. The description reveals nothing about whether this is a read-only operation, whether it requires authentication, what format the data returns in, whether there are rate limits, or what happens when parameters are invalid. For a tool with 5 parameters and no annotation coverage, this is completely inadequate.

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

    Conciseness2/5

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

    While technically concise with just 3 words, this is a case of harmful under-specification rather than effective brevity. The description fails to provide the basic information needed to understand or use the tool, making it inefficient for an AI agent that needs to quickly comprehend tool purposes.

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

    Completeness1/5

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

    Given the complexity (5 parameters, 3 required), complete lack of annotations, no output schema, and 0% schema description coverage, the description is completely inadequate. It provides no meaningful context about what the tool does, how to use it, what it returns, or how it differs from the many other financial data tools in the server.

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

    Parameters1/5

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

    With 0% schema description coverage and 5 parameters (code, year, quarter, limit, format), the description provides absolutely no information about what these parameters mean or how they should be used. The description doesn't mention any parameters at all, leaving the agent to guess what 'code' refers to (stock code? industry code?), what format 'format' accepts beyond the default 'markdown', or what 'growth capability data' actually contains.

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

    Purpose2/5

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

    The description 'Quarterly growth capability data' is vague and tautological - it essentially restates the tool name 'get_growth_data' without specifying what action the tool performs. It doesn't clearly state whether this retrieves, calculates, analyzes, or generates growth data, nor does it distinguish this from sibling tools like get_profit_data or get_operation_data that also appear to fetch financial metrics.

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

    Usage Guidelines1/5

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

    The description provides no guidance on when to use this tool versus alternatives. With numerous sibling tools fetching various financial data types (balance_data, cash_flow_data, dividend_data, etc.), there's no indication of what makes 'growth capability data' distinct or when an agent should choose this specific tool over others in the server.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It fails to describe what the tool does (e.g., returns a list, fetches data), any side effects, authentication needs, rate limits, or output format. The phrase 'CSI 500 constituents' is insufficient, leaving the agent with no understanding of the tool's behavior.

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

    Conciseness2/5

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

    The description is overly concise to the point of under-specification. While it uses only three words, it lacks essential details, making it inefficient rather than succinct. It is not front-loaded with critical information, failing to convey the tool's core functionality upfront.

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

    Completeness1/5

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

    Given the complexity (3 parameters, 0% schema coverage, no annotations, no output schema), the description is severely incomplete. It does not explain what the tool returns, how to use parameters, or behavioral aspects, leaving the agent unable to effectively invoke or understand the tool's role among siblings.

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

    Parameters1/5

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

    Schema description coverage is 0%, so the description must compensate by explaining parameters. It provides no information about the three parameters (date, limit, format), their purposes, or how they affect the output. For example, it does not clarify if 'date' filters constituents by a specific date or what 'format' options are available.

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

    Purpose2/5

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

    The description 'CSI 500 constituents' restates the tool name 'get_zz500_stocks' without specifying the action. It identifies the resource (CSI 500 stocks) but lacks a clear verb (e.g., 'retrieve', 'list', 'fetch'), making the purpose vague. Compared to siblings like 'get_hs300_stocks' or 'get_sz50_stocks', it fails to differentiate beyond the index name.

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

    Usage Guidelines1/5

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

    No guidance is provided on when to use this tool versus alternatives. It does not mention sibling tools like 'get_hs300_stocks' for different indices or 'get_index_constituents' for general index data, nor does it specify prerequisites or contexts for usage. The description offers no usage instructions.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It only states 'Benchmark loan rates.', offering no information on whether this is a read-only operation, potential rate limits, authentication needs, data freshness, or what the output entails (e.g., raw data, formatted report). This leaves critical behavioral aspects unspecified.

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

    Conciseness3/5

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

    The description is extremely concise with just two words, which could be seen as efficient. However, it is under-specified rather than appropriately sized, failing to convey necessary information. It is front-loaded but lacks substance, making it minimally adequate in structure but not helpful.

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

    Completeness1/5

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

    Given the complexity (4 parameters, 0% schema coverage, no annotations, no output schema), the description is severely incomplete. It does not address purpose, usage, behavior, or parameters adequately, leaving the agent with insufficient context to effectively select or invoke the tool.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning parameters (start_date, end_date, limit, format) are undocumented in the schema. The description does not compensate by explaining any parameters, their purposes, formats (e.g., date strings like 'YYYY-MM-DD'), or defaults. This results in poor parameter semantics support.

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

    Purpose2/5

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

    The description 'Benchmark loan rates.' is tautological, essentially restating the tool name 'get_loan_rate_data' without specifying what action is performed (e.g., retrieve, calculate, compare). It lacks a clear verb and does not distinguish this tool from its many siblings that also fetch financial data, such as 'get_deposit_rate_data' or 'get_ividend_data'.

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

    Usage Guidelines1/5

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

    No guidance is provided on when to use this tool versus alternatives. With numerous sibling tools for financial data retrieval (e.g., 'get_deposit_rate_data', 'get_balance_data'), the description fails to indicate specific contexts, prerequisites, or exclusions for selecting this tool over others.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. The description provides zero information about what the tool actually does behaviorally - whether it's a read operation, what format the data returns in, whether there are rate limits, authentication requirements, or any other behavioral characteristics. It's completely inadequate for a tool with 5 parameters.

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

    Conciseness3/5

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

    The description is extremely concise - just 4 words - but this is under-specification rather than effective conciseness. While it's technically brief, it fails to provide necessary information, making the brevity detrimental rather than helpful. It's front-loaded only because there's nothing to load.

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

    Completeness1/5

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

    For a tool with 5 parameters, no annotations, no output schema, and 0% schema description coverage, the description is completely inadequate. It provides no information about what the tool does, how to use it, what the parameters mean, what behavior to expect, or how it differs from similar tools. This leaves an AI agent with insufficient information to properly select or invoke the tool.

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

    Parameters1/5

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

    With 0% schema description coverage and 5 parameters (3 required), the description provides absolutely no information about what the parameters mean or how they should be used. The description doesn't mention any parameters, leaving code, year, quarter, limit, and format completely unexplained despite being essential for proper tool invocation.

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

    Purpose2/5

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

    The description 'Quarterly operation capability data' is tautological - it essentially restates the tool name 'get_operation_data' without specifying what action is performed. It doesn't clearly state whether this retrieves, calculates, or generates operation data, nor does it distinguish this tool from its many financial data siblings like get_balance_data or get_profit_data.

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

    Usage Guidelines1/5

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

    No guidance is provided about when to use this tool versus alternatives. With 40+ sibling tools on the server including various financial data retrieval tools, the description offers no indication of what makes operation capability data unique or when an agent should choose this over similar tools like get_profit_data or get_fina_indicator.

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

  • Behavior1/5

    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 but fails to do so. It doesn't indicate whether this is a read-only operation, what permissions might be required, if there are rate limits, what the output format or structure looks like, or any side effects. The description is too vague to provide meaningful behavioral context beyond the implied data retrieval.

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

    Conciseness3/5

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

    The description is extremely concise—a single phrase—but this brevity comes at the cost of under-specification rather than efficient communication. While it's front-loaded with the core topic, it lacks the necessary detail to be helpful. The structure is minimal but fails to convey essential information, making it inefficient in practice.

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

    Completeness1/5

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

    Given the complexity of a 5-parameter tool with no annotations, 0% schema description coverage, and no output schema, the description is completely inadequate. It doesn't explain the tool's purpose in detail, provide usage guidelines, disclose behavior, clarify parameters, or describe output. This leaves the agent with insufficient information to effectively select or invoke the tool.

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

    Parameters1/5

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

    The description provides no information about parameters, while the input schema has 5 parameters with 0% description coverage (only titles like 'Start Date', 'End Date', etc.). This leaves all parameters undocumented in both schema and description. The description doesn't compensate for this gap by explaining what these parameters mean, their expected formats, or how they affect the data retrieval.

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

    Purpose2/5

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

    The description 'Required reserve ratio data.' is essentially a tautology that restates the tool name with minimal additional information. It indicates the tool retrieves data related to required reserve ratios but lacks a specific verb (e.g., 'retrieve', 'fetch', 'list') and doesn't clarify what kind of data (e.g., historical values, current rates, time series) or distinguish it from sibling tools like get_deposit_rate_data or get_money_supply_data_year, which might involve related financial metrics.

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

    Usage Guidelines1/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions, nor does it reference sibling tools for comparison. This leaves the agent with no information to make an informed choice among the many data retrieval tools available on the server.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. It mentions nothing about whether this is a read-only operation, potential rate limits, authentication needs, data freshness, or what the output looks like (e.g., report format, structure). For a tool with 5 parameters and no output schema, this lack of behavioral context is a significant gap.

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

    Conciseness4/5

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

    The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, though overly brief. While concise, it sacrifices necessary detail for brevity.

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

    Completeness1/5

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

    Given the complexity (5 parameters, 3 required, 0% schema coverage, no annotations, no output schema, many sibling tools), the description is completely inadequate. It doesn't explain what the tool returns, how to interpret parameters, behavioral constraints, or differentiation from alternatives. This leaves critical gaps for effective tool use.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning none of the 5 parameters have descriptions in the schema. The tool description adds no information about parameters beyond implying a date range (start_date, end_date). It doesn't explain 'code' (stock code? index?), 'limit' (pagination? max rows?), or 'format' (output format options). With low coverage, the description fails to compensate.

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

    Purpose2/5

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

    The description 'Performance express report within date range' restates the tool name 'get_performance_express_report' with minimal elaboration. It mentions 'report' and 'date range' but doesn't specify what type of performance data, for which entities (stocks, indices, etc.), or what distinguishes it from sibling tools like get_profit_data or get_operation_data. This is essentially a tautological expansion of the name.

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

    Usage Guidelines1/5

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

    No guidance is provided on when to use this tool versus alternatives. With many sibling tools for financial data (e.g., get_profit_data, get_balance_data, get_historical_k_data), the description offers no context about appropriate use cases, prerequisites, or comparisons. This leaves the agent guessing about tool selection.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It fails to describe any traits: it doesn't specify if this is a read-only operation, what permissions might be needed, potential rate limits, error conditions, or the format/scope of returned data. For a tool with 5 parameters and no output schema, this lack of transparency is critical.

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

    Conciseness5/5

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

    The description is extremely concise with a single phrase, 'Quarterly cash flow data.', which is front-loaded and wastes no words. While it under-specifies the tool's functionality, it earns full marks for brevity and lack of redundancy.

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

    Completeness1/5

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

    Given the complexity (5 parameters, 0% schema coverage, no annotations, no output schema, and many sibling tools), the description is severely incomplete. It doesn't clarify the tool's purpose, usage, behavior, or parameters, making it insufficient for an agent to understand or correctly invoke this tool in context.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning none of the 5 parameters have descriptions in the schema. The tool description adds no information about parameters like 'code', 'year', 'quarter', 'limit', or 'format', leaving their semantics, valid values, and interactions completely undocumented, which is inadequate for agent invocation.

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

    Purpose2/5

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

    The description 'Quarterly cash flow data' is a tautology that essentially restates the tool name 'get_cash_flow_data' without adding meaningful specificity. It doesn't clarify what 'cash flow data' entails (e.g., financial metrics, statements, or specific fields) or distinguish this tool from siblings like 'get_balance_data' or 'get_profit_data' that also retrieve financial data.

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

    Usage Guidelines1/5

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

    No guidance is provided on when to use this tool versus alternatives. With many sibling tools for financial data retrieval (e.g., 'get_balance_data', 'get_profit_data'), the description offers no context, prerequisites, or exclusions to help an agent decide between them, leaving usage ambiguous.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. 'Benchmark deposit rates' gives no indication of whether this is a read-only query, a calculation, or a write operation. It doesn't mention authentication needs, rate limits, data freshness, or what format/scope the results will have. The description fails to provide any behavioral context beyond the minimal name.

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

    Conciseness5/5

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

    The description is extremely concise at just three words. While this represents severe under-specification rather than optimal conciseness, it contains no redundant information and is front-loaded with the core concept. Every word earns its place, even though more words are needed for completeness.

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

    Completeness1/5

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

    For a tool with 4 parameters, no annotations, no output schema, and 0% schema description coverage, the description is completely inadequate. It doesn't explain what the tool does, how to use it, what the parameters mean, or what to expect in return. The minimal description fails to compensate for the lack of structured documentation.

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

    Parameters1/5

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

    With 4 parameters and 0% schema description coverage, the schema provides only titles and types without explaining what the parameters mean. The description adds zero information about parameters - it doesn't mention date ranges, limits, output formats, or any of the actual inputs. This leaves all parameter semantics undocumented.

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

    Purpose2/5

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

    The description 'Benchmark deposit rates' is a tautology that essentially restates the tool name 'get_deposit_rate_data'. It doesn't specify what action is performed (e.g., retrieve, calculate, compare) or what resource is accessed. While it hints at financial data, it lacks the specificity needed to distinguish it from sibling tools like 'get_loan_rate_data' or 'get_required_reserve_ratio_data'.

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

    Usage Guidelines1/5

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

    The description provides no guidance on when to use this tool versus alternatives. There are no contextual cues about appropriate scenarios, prerequisites, or comparisons to sibling tools like 'get_loan_rate_data' or other financial data tools. Users must infer usage entirely from the name and parameters.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It fails to describe what the tool returns (e.g., a list of stocks, their details), any side effects, rate limits, or error conditions. This leaves the agent with no understanding of the tool's behavior beyond its name.

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

    Conciseness5/5

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

    The description is extremely concise with a single phrase, 'CSI 300 constituents.' It is front-loaded and wastes no words, though this brevity comes at the cost of clarity and completeness.

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

    Completeness1/5

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

    Given the complexity (3 parameters with 0% schema coverage, no annotations, no output schema), the description is severely incomplete. It doesn't explain the tool's purpose, usage, behavior, or parameters, making it inadequate for an AI agent to understand and invoke the tool correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, so parameters 'date', 'limit', and 'format' are undocumented in the schema. The description adds no information about these parameters, such as their purpose (e.g., date for historical constituents, limit for pagination, format for output type), leaving their semantics completely unclear.

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

    Purpose2/5

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

    The description 'CSI 300 constituents' restates the tool name 'get_hs300_stocks' without specifying the action. It identifies the resource (CSI 300 stocks) but lacks a verb indicating what the tool does with them (e.g., fetch, list, retrieve). This is tautological and doesn't distinguish it from siblings like 'get_index_constituents' or 'get_sz50_stocks'.

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

    Usage Guidelines1/5

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

    No guidance is provided on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_index_constituents' (which might be more general) or 'get_sz50_stocks' (for another index), nor does it specify any context or prerequisites for usage.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions 'Quarterly balance sheet data' but doesn't disclose behavioral traits like whether it's a read-only operation, requires authentication, has rate limits, returns structured data, or handles errors. This leaves significant gaps for a tool with 5 parameters.

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

    Conciseness5/5

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

    The description is extremely concise with a single phrase, front-loaded and zero waste. However, this conciseness comes at the cost of under-specification, but based on the dimension's focus on brevity and structure, it scores high.

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

    Completeness1/5

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

    Given 5 parameters with 0% schema coverage, no annotations, no output schema, and many sibling tools, the description is completely inadequate. It doesn't explain the tool's function, usage, behavior, parameters, or output, leaving the agent with insufficient information to use it correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description provides no information about parameters. It doesn't explain what 'code', 'year', 'quarter', 'limit', or 'format' mean, their expected values, or how they affect the output, failing to compensate for the lack of schema documentation.

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

    Purpose3/5

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

    The description 'Quarterly balance sheet data' indicates the resource (balance sheet data) and temporal scope (quarterly), but lacks a specific verb and doesn't distinguish from siblings like get_cash_flow_data or get_profit_data. It's vague about what the tool actually does (e.g., retrieve, analyze, or generate this data).

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. With many sibling tools for financial data (e.g., get_cash_flow_data, get_profit_data), the description offers no context for selection, prerequisites, or exclusions.

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

  • Behavior1/5

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

    No annotations are provided, so the description must fully disclose behavioral traits. It fails to mention whether this is a read-only operation, if it requires authentication, rate limits, error handling, or what the output format entails (e.g., list of stocks, historical data). The description is too minimal to inform agent behavior beyond a basic fetch action.

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

    Conciseness4/5

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

    The description is a single, efficient sentence that front-loads the core action ('fetch') and resources. However, it lacks necessary detail for clarity, making it under-specified rather than optimally concise, but it avoids redundancy and waste.

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

    Completeness2/5

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

    Given the complexity of a financial data tool with 4 parameters, 0% schema coverage, no annotations, and no output schema, the description is incomplete. It doesn't explain return values, error conditions, or behavioral nuances, leaving significant gaps for agent usage in a context with many sibling tools.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate by explaining parameters. It only implies the 'index' parameter via the listed indices (hs300/sz50/zz500) but doesn't clarify valid values or semantics. Other parameters (date, limit, format) are entirely undocumented, leaving their purposes and effects unclear.

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

    Purpose3/5

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

    The description states the tool fetches index constituents and lists specific indices (hs300/sz50/zz500), which clarifies the resource. However, it's vague about what 'constituents' means (e.g., stocks, weights, metadata) and doesn't distinguish it from similar sibling tools like 'get_hs300_stocks' or 'get_sz50_stocks', leaving ambiguity in scope.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like 'get_hs300_stocks' or 'get_sz50_stocks', which appear to overlap in functionality. The description lacks context about prerequisites, exclusions, or comparative use cases, offering only a generic statement.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden. It offers no behavioral information: doesn't indicate if this is a read-only operation, what data source is used, whether it requires authentication, rate limits, or what the output format looks like. The description is purely declarative without operational context.

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

    Conciseness4/5

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

    Extremely concise with just three words, but this brevity comes at the cost of completeness. The description is front-loaded with the core concept but lacks necessary elaboration for a tool with 4 parameters and no annotations.

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

    Completeness2/5

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

    For a tool with 4 parameters, 0% schema description coverage, no annotations, and no output schema, the description is severely inadequate. It doesn't explain what the tool returns, how to interpret results, or provide enough context for effective use beyond the basic subject matter.

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

    Parameters2/5

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

    Schema description coverage is 0%, so parameters are undocumented. The description adds no parameter information beyond what's inferred from the tool name (monthly data). It doesn't explain what start_date/end_date formats to use, what limit applies to, what format options exist, or default behaviors.

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

    Purpose3/5

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

    The description 'Monthly money supply data' states the resource (money supply data) and temporal granularity (monthly), but lacks a clear verb indicating what action is performed. It distinguishes from sibling 'get_money_supply_data_year' by specifying monthly vs yearly data, but doesn't clarify if this retrieves, lists, or calculates data.

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like 'get_money_supply_data_year' or other economic data tools. The description implies monthly frequency but doesn't specify use cases, prerequisites, or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states this retrieves a 'report' but doesn't disclose format details, pagination behavior, rate limits, authentication requirements, or what happens when parameters are invalid. For a data retrieval tool with 5 parameters, this leaves significant behavioral questions unanswered.

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

    Conciseness4/5

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

    The description is extremely concise at just 5 words. While arguably too brief for a tool with 5 parameters, it's front-loaded with the core purpose and wastes no words. Every word contributes meaning, though more detail would be helpful.

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

    Completeness2/5

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

    For a financial data tool with 5 parameters, 0% schema coverage, no annotations, and no output schema, the description is inadequate. It doesn't explain what an 'earnings forecast report' contains, how it differs from other financial reports, what the parameters mean, or what format the output takes. The context demands much more complete documentation.

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

    Parameters2/5

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

    Schema description coverage is 0%, so parameters are completely undocumented in the schema. The description only mentions 'date range' which maps to start_date and end_date, but doesn't explain the 'code' parameter (stock code? index code?), 'limit' (pagination? max results?), or 'format' (output format options?). It fails to compensate for the schema's lack of documentation.

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

    Purpose3/5

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

    The description 'Earnings forecast report within date range' clearly states the tool's purpose (retrieving earnings forecasts) and mentions date range filtering. However, it doesn't distinguish this tool from its many financial data siblings like 'get_profit_data' or 'get_performance_express_report' - it's unclear what makes 'forecast report' unique versus other performance-related tools.

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

    Usage Guidelines2/5

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

    No guidance is provided about when to use this tool versus alternatives. With 40+ sibling tools including many financial data retrieval tools, the description offers no context about when this specific earnings forecast report is appropriate versus other performance metrics, profit data, or analysis tools.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden. It reveals nothing about behavior: no indication of read/write nature, authentication needs, rate limits, error conditions, or what the output looks like. 'Yearly money supply data' suggests a read operation but lacks confirmation or details.

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

    Conciseness5/5

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

    Extremely concise with a single phrase 'Yearly money supply data.' It's front-loaded and wastes no words, though this brevity contributes to underspecification in other dimensions.

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

    Completeness2/5

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

    For a 4-parameter tool with no annotations and no output schema, the description is incomplete. It doesn't cover parameter meanings, behavioral traits, or output format, leaving significant gaps for an AI agent to understand and invoke the tool correctly.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It mentions 'yearly' which hints at date parameters but doesn't explain the four parameters (start_date, end_date, limit, format) or their relationships. The description adds minimal value beyond the schema titles.

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

    Purpose3/5

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

    The description 'Yearly money supply data' states the resource (money supply data) and temporal granularity (yearly), but lacks a specific verb and doesn't distinguish from sibling 'get_money_supply_data_month'. It's vague about what action is performed (retrieve? list? fetch?).

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

    Usage Guidelines2/5

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

    No guidance on when to use this tool versus alternatives like 'get_money_supply_data_month' or other financial data tools. The description implies yearly data but doesn't specify use cases, prerequisites, or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires authentication, rate limits, or what the output format looks like. The description is minimal and fails to add meaningful context beyond the tool name.

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

    Conciseness4/5

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

    The description is extremely concise with a single phrase, which is front-loaded and wastes no words. However, it may be overly terse, bordering on under-specification, but it's structured efficiently without redundancy.

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

    Completeness2/5

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

    Given the complexity (3 parameters with 0% schema coverage, no annotations, no output schema), the description is incomplete. It doesn't explain what the tool returns, how parameters influence results, or behavioral aspects. For a data retrieval tool with multiple parameters, this is inadequate.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate for undocumented parameters. It provides no information about the three parameters (date, limit, format), their purposes, or how they affect the output. This leaves significant gaps in understanding parameter usage.

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

    Purpose3/5

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

    The description 'SZSE 50 constituents' clearly indicates the resource (SZSE 50 index constituents) but lacks a specific verb. It distinguishes from some siblings like 'get_hs300_stocks' or 'get_zz500_stocks' by specifying which index, but doesn't clarify the action (e.g., retrieve, list, fetch). This makes the purpose somewhat vague but not tautological.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. It doesn't mention siblings like 'get_hs300_stocks' for different indices or 'get_index_constituents' for general index data, nor does it specify prerequisites or exclusions. The description alone offers no usage context.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states what data is provided without describing how it behaves—e.g., whether it's a read-only query, if it requires authentication, rate limits, error handling, or what the output looks like (since no output schema exists). This leaves significant gaps for an agent to understand the tool's operation.

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

    Conciseness5/5

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

    The description is extremely concise with a single phrase 'Quarterly Dupont analysis data.', which is front-loaded and wastes no words. However, this conciseness comes at the cost of completeness, but as per the dimension, it scores high for being brief and structured.

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

    Completeness2/5

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

    Given the complexity (5 parameters, 3 required, no annotations, no output schema), the description is incomplete. It doesn't explain the tool's behavior, parameters, or output, leaving the agent with insufficient information to use it effectively. The lack of annotations and output schema increases the burden on the description, which it doesn't meet.

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

    Parameters2/5

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

    Schema description coverage is 0%, meaning none of the 5 parameters (code, year, quarter, limit, format) are explained in the schema. The description adds no parameter semantics—it doesn't clarify what 'code' refers to (e.g., stock ticker), the format of 'year' and 'quarter', or what 'format' options exist. This fails to compensate for the low schema coverage.

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

    Purpose3/5

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

    The description 'Quarterly Dupont analysis data' states what the tool provides (Dupont analysis data) and indicates temporal scope (quarterly), which gives a basic purpose. However, it lacks a specific verb (e.g., 'retrieve' or 'fetch') and doesn't differentiate from siblings like 'get_fina_indicator' or 'get_profit_data', which might also provide financial metrics, making it somewhat vague.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions, and with many sibling tools for financial data (e.g., 'get_balance_data', 'get_cash_flow_data'), there's no indication of how Dupont analysis differs or when it's preferred.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions returning a 'human-friendly timeframe label' but does not specify format, data source, or any constraints like rate limits or permissions. This leaves significant gaps in understanding how the tool behaves beyond its basic output.

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

    Conciseness5/5

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

    The description is a single, clear sentence that directly states the tool's function without unnecessary words. It is front-loaded and efficient, making it easy to grasp quickly, which is ideal for conciseness.

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

    Completeness2/5

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

    Given the lack of annotations, output schema, and low parameter coverage, the description is incomplete. It does not provide enough context about the tool's behavior, output format, or how it integrates with other tools, making it inadequate for a tool that likely deals with financial timeframes in a complex server environment.

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

    Parameters2/5

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

    The input schema has one parameter 'period' with 0% description coverage, and the tool description does not explain what 'period' means, its possible values, or how it affects the output. With low schema coverage, the description fails to compensate, leaving the parameter's semantics unclear.

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

    Purpose3/5

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

    The description states the tool 'Return a human-friendly timeframe label,' which clarifies its purpose as providing a formatted timeframe label. However, it lacks specificity about what 'market analysis' entails or what context this timeframe is used for, making it somewhat vague compared to more detailed sibling tools like get_historical_k_data or get_recent_trading_range.

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

    Usage Guidelines2/5

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

    There is no guidance on when to use this tool versus alternatives. Sibling tools include get_last_n_trading_days, get_recent_trading_range, and get_trade_dates, which might offer similar or overlapping functionality, but the description does not mention any distinctions, prerequisites, or exclusions for usage.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'Quarterly profitability data' but doesn't describe how the data is retrieved (e.g., from a database, API), any rate limits, authentication needs, or what the output looks like (e.g., format, structure). This leaves significant gaps in understanding the tool's behavior beyond its basic purpose.

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

    Conciseness5/5

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

    The description is extremely concise with a single phrase 'Quarterly profitability data', which is front-loaded and wastes no words. However, this conciseness comes at the cost of completeness, as it omits necessary details for effective tool use.

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

    Completeness2/5

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

    Given the complexity (5 parameters, 0% schema coverage, no annotations, no output schema), the description is incomplete. It doesn't explain parameter meanings, behavioral traits, or output format, making it inadequate for an AI agent to reliably invoke the tool. Sibling tools suggest a financial data context, but the description doesn't leverage this for clarity.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate for undocumented parameters. It adds no meaning beyond the schema, failing to explain what 'code', 'year', 'quarter', 'limit', or 'format' represent (e.g., stock code, fiscal year, quarter number, result limit, output format). With 5 parameters and no schema descriptions, this is a major gap.

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

    Purpose3/5

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

    The description 'Quarterly profitability data' states what the tool provides (profitability data) and its temporal scope (quarterly), which is clear but vague. It uses a noun phrase rather than an action verb, and while it distinguishes from siblings like 'get_balance_data' or 'get_cash_flow_data' by focusing on profitability, it doesn't specify how it retrieves or processes this data (e.g., fetching, calculating).

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context for selecting it over similar tools (e.g., 'get_fina_indicator' or 'get_performance_express_report'), or any exclusions. Usage is implied by the name and description alone, with no explicit instructions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions 'normalize' but doesn't disclose behavioral traits like whether this is a read-only transformation, what errors might occur (e.g., invalid codes), or the output format. For a tool with no annotations, this leaves significant gaps in understanding how it behaves.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with no wasted words. It's front-loaded with the core action and target format, making it easy to parse quickly. This is appropriately concise for a simple transformation tool.

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

    Completeness2/5

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

    Given no annotations, no output schema, and low parameter coverage, the description is incomplete. It doesn't explain what 'Baostock format' means, provide examples, or clarify the transformation's scope. For a normalization tool in a financial data context, more detail is needed to ensure correct usage.

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

    Parameters2/5

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

    The input schema has 1 parameter with 0% description coverage, and the tool description doesn't add any parameter semantics. It doesn't explain what 'code' should contain (e.g., examples of 'common index codes'), expected formats, or constraints. With low schema coverage, the description fails to compensate, leaving the parameter meaning unclear.

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

    Purpose3/5

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

    The description states the tool 'normalize common index codes to Baostock format', which provides a clear verb ('normalize') and resource ('common index codes'), but it's vague about what 'common index codes' specifically refers to and doesn't distinguish from its sibling tool 'normalize_stock_code'. The purpose is understandable but lacks specificity about the domain or input scope.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context for 'common index codes', or differentiate from 'normalize_stock_code' (a clear sibling tool for stock codes). Without any usage context, the agent must infer when this tool is appropriate.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions returns a markdown table, which is useful, but lacks details on permissions, rate limits, data freshness, or pagination behavior (limit parameter is undocumented). For a read operation with no annotations, this leaves significant behavioral gaps.

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

    Conciseness4/5

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

    The description is appropriately sized with three sentences: purpose, args, returns. It's front-loaded with the main function. However, the Args and Returns sections could be more integrated, and some redundancy exists (e.g., 'for a date' repeated).

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

    Completeness2/5

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

    Given 3 parameters with 0% schema coverage, no annotations, and no output schema, the description is incomplete. It covers the date parameter and return format but misses limit and format parameters, behavioral context, and fails to fully guide usage among many siblings. For a data-fetching tool in a crowded namespace, this is inadequate.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It documents the 'date' parameter with format and default, but omits 'limit' and 'format' parameters entirely. This leaves two of three parameters undocumented, failing to add sufficient meaning beyond the bare schema.

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

    Purpose4/5

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

    The description clearly states the tool fetches a list of all stocks and their trading status for a date, specifying resource (stocks and indices) and verb (fetch). It distinguishes from siblings like get_suspensions (specific status) or get_stock_basic_info (different data), though not explicitly named. However, it doesn't fully differentiate from get_hs300_stocks or get_sz50_stocks which fetch subsets.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives like get_suspensions for suspended stocks only, get_hs300_stocks for specific indices, or get_stock_basic_info for detailed info. The description implies usage for comprehensive stock lists with trading status but lacks context on alternatives or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('Get all stocks'), implying a read-only operation, but does not specify whether it requires authentication, has rate limits, returns paginated results, or handles errors. The mention of 'on a date' hints at historical data access, but behavioral details are minimal.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words. It is appropriately sized and front-loaded, directly stating the tool's core functionality without unnecessary elaboration.

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

    Completeness2/5

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

    Given the complexity (4 parameters, 0% schema coverage, no annotations, no output schema), the description is incomplete. It lacks details on parameter usage, return values, error handling, and behavioral constraints, making it insufficient for an agent to reliably invoke the tool without additional context.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the schema provides no parameter descriptions. The description mentions 'industry' and 'date' but does not explain their semantics (e.g., format, valid values, or that 'date' is optional with a default). It omits 'limit' and 'format' entirely, failing to compensate for the low schema coverage.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Get all stocks in a given industry on a date.' It specifies the verb ('Get'), resource ('stocks'), and key constraints ('in a given industry', 'on a date'). However, it does not explicitly differentiate from sibling tools like 'get_stock_industry' or 'get_index_constituents', which might have overlapping functionality.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It does not mention sibling tools like 'get_stock_industry' (which might list industries) or 'get_index_constituents' (which might list stocks in an index), leaving the agent to infer usage context without explicit direction.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves classification data but doesn't describe the return format, pagination behavior (though 'limit' parameter hints at it), error conditions, or data freshness. For a read operation with zero annotation coverage, this leaves significant gaps in understanding how the tool behaves.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core purpose. There's no wasted wording, and it directly addresses what the tool does without unnecessary elaboration. It's appropriately sized for a straightforward data retrieval tool.

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

    Completeness2/5

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

    Given the tool has 4 parameters with 0% schema coverage, no annotations, and no output schema, the description is incomplete. It doesn't explain parameter semantics, return values, or behavioral traits. For a tool that could return data for 'all stocks,' more context on output structure or limitations is needed, but the description lacks this.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the schema provides no parameter descriptions. The description mentions 'a specific stock or all stocks on a date,' which loosely relates to the 'code' and 'date' parameters but doesn't explain their formats, defaults, or interactions. It ignores 'limit' and 'format' entirely. The description adds minimal value beyond the schema's structure.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Get industry classification for a specific stock or all stocks on a date.' It specifies the verb ('Get'), resource ('industry classification'), and scope ('specific stock or all stocks on a date'). However, it doesn't explicitly differentiate from sibling tools like 'list_industries' or 'get_industry_members', which prevents a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'list_industries' (which might list industries without stock mappings) or 'get_industry_members' (which might list stocks within an industry), nor does it specify prerequisites or exclusions. The agent must infer usage from the purpose alone.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states the tool's function but lacks behavioral details such as what constitutes a 'trading day' (e.g., market holidays, weekends), error handling for invalid dates, or response format. This leaves significant gaps for an agent to use it effectively.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words. It's front-loaded with the core purpose, making it highly efficient and easy to parse for an agent.

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

    Completeness2/5

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

    Given the lack of annotations, no output schema, and minimal parameter guidance, the description is incomplete. For a tool that checks trading status—which involves domain-specific rules—it should explain more about behavior, input expectations, and output to be fully helpful.

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

    Parameters2/5

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

    With 0% schema description coverage and one required parameter ('date'), the description adds minimal value. It implies the parameter is a date but doesn't specify format (e.g., YYYY-MM-DD), timezone, or valid range. This is insufficient compensation for the schema's lack of documentation.

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

    Purpose4/5

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

    The description clearly states the tool's purpose with a specific verb ('Check') and resource ('trading day'), making it immediately understandable. However, it doesn't explicitly differentiate from siblings like 'get_trade_dates' or 'last_n_trading_days', which reduces it from a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_trade_dates' (which might list multiple dates) and 'last_n_trading_days' (which focuses on recent dates), the agent has no explicit direction on choosing this specific tool for checking a single date's trading status.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions 'List distinct industries' which implies a read-only operation, but doesn't disclose behavioral traits like whether it returns a list, table, or other format; if results are paginated; what happens with null date; or any rate limits. The description is minimal and lacks critical context for a tool with parameters.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core purpose. There is no wasted verbiage or redundancy, making it easy to parse quickly. Every word contributes directly to the tool's intent.

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

    Completeness2/5

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

    Given no annotations, 0% schema coverage, no output schema, and 2 parameters, the description is incomplete. It lacks details on parameter usage, return format, error conditions, and behavioral context. For a tool that likely returns a list of industries, more guidance is needed to ensure correct invocation.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It mentions 'for a given date', which hints at the 'date' parameter's purpose, but doesn't explain the 'format' parameter at all. With 2 parameters and no schema descriptions, the description adds minimal semantic value, failing to clarify what 'date' format is expected or what 'format' controls.

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

    Purpose4/5

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

    The description clearly states the action ('List distinct industries') and resource ('industries'), with a specific constraint ('for a given date'). It distinguishes from siblings like 'get_industry_members' (which likely lists members of an industry) by focusing on distinct industry names. However, it doesn't explicitly contrast with 'get_stock_industry' (which might get industry for a specific stock), leaving slight ambiguity.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_industry_members' or 'get_stock_industry', nor does it specify prerequisites (e.g., whether a date is required for meaningful results). Usage is implied by the date parameter but not explicitly stated.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but only states the basic action without behavioral details. It doesn't disclose what 'trading day' means (e.g., market holidays, weekends), error handling for invalid dates, timezone considerations, or output format. This leaves significant gaps for a tool that likely involves calendar logic and financial market rules.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core purpose without fluff. Every word earns its place, making it easy to parse quickly. No structural issues or redundancy are present.

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

    Completeness2/5

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

    Given no annotations, no output schema, and low parameter coverage, the description is incomplete. It doesn't explain return values (e.g., date string, object), error cases, or dependencies on market data. For a tool that likely involves non-trivial date logic, this lacks necessary context for reliable agent use.

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

    Parameters2/5

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

    The schema has 0% description coverage, with one required parameter 'date' undocumented in schema. The description adds minimal semantics by implying 'date' is an input for calculation but doesn't specify format (e.g., YYYY-MM-DD), constraints (e.g., past/future dates), or examples. It fails to compensate for the low schema coverage, leaving parameter meaning vague.

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

    Purpose4/5

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

    The description clearly states the verb 'Get' and the resource 'next trading day', specifying it operates 'after the given date'. It distinguishes from siblings like 'get_last_n_trading_days' or 'previous_trading_day' by focusing on a single forward date. However, it doesn't explicitly differentiate from 'get_trade_dates' or 'is_trading_day', which could provide similar date-related information.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. It doesn't mention siblings like 'previous_trading_day' for backward lookups, 'get_trade_dates' for ranges, or 'is_trading_day' for validation. The description implies usage for date advancement but offers no context on prerequisites, exclusions, or comparative scenarios.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions normalization but doesn't disclose what transformations occur (e.g., padding, prefix changes), whether it's idempotent, error handling for invalid codes, or performance characteristics. This leaves significant behavioral gaps for a tool that modifies data.

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

    Conciseness5/5

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

    Single sentence, zero waste. Every word contributes directly to the tool's purpose without redundancy or fluff. The structure is front-loaded with the core action and target.

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

    Completeness2/5

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

    For a data transformation tool with no annotations, 0% schema coverage, and no output schema, the description is inadequate. It doesn't explain the normalization algorithm, provide examples, or clarify how this integrates with sibling tools that might consume normalized codes.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must compensate. It only mentions 'stock code' generically without explaining valid input formats (e.g., '600036', '000001.SZ'), expected output examples, or constraints. This adds minimal value beyond the bare schema.

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

    Purpose4/5

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

    The description clearly states the action ('normalize') and target resource ('stock code'), specifying the output format ('Baostock format'). However, it doesn't distinguish itself from sibling 'normalize_index_code' which performs similar normalization for index codes, leaving some ambiguity about when to use each.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives. The description mentions 'Baostock format' but doesn't explain what that means or when normalization is needed versus using raw codes with other tools like 'get_stock_basic_info' or 'get_historical_k_data'.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but only states the basic operation. It doesn't disclose behavioral traits such as how holidays/weekends are handled, timezone considerations, error handling for invalid dates, or the return format (e.g., date string, object). This is inadequate for a tool with zero annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function, making it appropriately sized for its simplicity.

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

    Completeness2/5

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

    Given the lack of annotations, 0% schema coverage, and no output schema, the description is incomplete. It doesn't explain what 'trading day' means in this context (e.g., market-specific), how edge cases are handled, or what the return value looks like. For a date-calculation tool in a financial context, more contextual information is needed.

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

    Parameters2/5

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

    The input schema has 0% description coverage, and the tool description doesn't add any parameter semantics. It mentions 'the given date' but doesn't specify the expected format (e.g., YYYY-MM-DD), validation rules, or examples. With one undocumented parameter, the description fails to compensate for the schema gap.

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

    Purpose4/5

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

    The description clearly states the verb ('Get') and resource ('previous trading day') with a specific condition ('before the given date'). It distinguishes from siblings like 'get_last_n_trading_days' by focusing on a single previous day, but doesn't explicitly differentiate from 'next_trading_day' or 'is_trading_day' beyond the directional aspect.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like 'get_last_n_trading_days' for multiple days, 'is_trading_day' for validation, or 'get_trade_dates' for date lists. The description implies usage for date calculation but offers no context about prerequisites, exclusions, or comparison with sibling tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'fetches' data, implying a read-only operation, but doesn't clarify permissions, rate limits, error handling, or return format details. The mention of 'Dividend records table' hints at the output structure, but lacks specifics like columns or pagination. For a tool with 5 parameters and no annotations, this leaves significant behavioral gaps.

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

    Conciseness5/5

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

    The description is well-structured and concise, with a clear purpose statement followed by parameter details in a formatted 'Args' and 'Returns' section. Every sentence adds value: the purpose is front-loaded, and parameter explanations are efficient with examples and defaults. No wasted words or redundancy.

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

    Completeness2/5

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

    Given the complexity (5 parameters, no annotations, no output schema), the description is incomplete. It covers the core purpose and some parameters but misses two parameters ('limit', 'format'), provides no output schema details beyond 'Dividend records table', and lacks behavioral context like error handling or data freshness. For a data-fetching tool with multiple parameters, this leaves the agent under-informed.

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

    Parameters3/5

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

    The description adds meaningful context for 3 parameters (code, year, year_type) by explaining formats, examples, and valid options, which compensates partially for the 0% schema description coverage. However, it omits the 'limit' and 'format' parameters entirely, leaving them undocumented. With 5 total parameters and only 3 covered, the description provides moderate but incomplete semantic value beyond the bare schema.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Fetches dividend information for a given stock code and year.' It specifies the verb ('fetches'), resource ('dividend information'), and scope ('for a given stock code and year'). However, it doesn't explicitly differentiate from sibling tools like 'get_profit_data' or 'get_balance_data', which might also fetch financial data but for different metrics.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_profit_data' or 'get_stock_basic_info', nor does it specify prerequisites or exclusions. The agent must infer usage from the purpose alone, which is insufficient for optimal tool selection.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns dates but doesn't explain what constitutes a 'trading day' (e.g., excludes weekends/holidays), the format of the return (e.g., list of strings, timestamps), or any constraints like rate limits or data freshness. This leaves significant gaps for a tool with no annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy to parse quickly. Every part of the sentence contributes directly to understanding the tool's function.

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

    Completeness2/5

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

    Given the lack of annotations and output schema, the description is incomplete for a tool that returns data. It doesn't specify the return format (e.g., list, JSON structure), what 'trading days' means contextually, or error handling. For a data-fetching tool with no structured output documentation, this leaves too many unknowns for reliable agent use.

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

    Parameters3/5

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

    The schema description coverage is 0%, so the description must compensate. It mentions 'last N trading dates' which implies the 'days' parameter, but doesn't clarify semantics like whether N includes today, the range of valid values, or what happens with negative/zero inputs. This adds minimal value beyond the schema's basic structure, warranting a baseline score.

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

    Purpose4/5

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

    The description clearly states the tool's purpose with a specific verb ('Return') and resource ('last N trading dates'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from similar siblings like 'get_trade_dates' or 'get_latest_trading_date', which could cause confusion about when to use each.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'get_trade_dates' and 'get_latest_trading_date' that might overlap in functionality, the lack of explicit usage context or exclusions leaves the agent without clear direction for tool selection.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states the action but lacks behavioral details such as return format (e.g., list of dates), error handling for invalid years, data source, or rate limits. This is inadequate for a tool with no annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with zero waste. It's front-loaded with the core purpose, making it easy to parse. Every word earns its place without redundancy.

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

    Completeness2/5

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

    Given no annotations, 0% schema coverage, and no output schema, the description is incomplete. It doesn't explain return values, error cases, or behavioral traits, leaving significant gaps for a tool that likely returns structured date data. More context is needed for effective use.

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

    Parameters3/5

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

    Schema description coverage is 0%, but the description adds meaning by specifying the parameter is 'year'. However, it doesn't clarify format (e.g., integer year like 2024), constraints (e.g., valid range), or examples. With one parameter, this provides minimal compensation for the coverage gap.

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

    Purpose4/5

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

    The description clearly states the verb ('Return') and resource ('month-end trading dates'), specifying it's for a given year. It distinguishes from siblings like 'get_trade_dates' (general dates) and 'get_last_n_trading_days' (recent days), but could be more explicit about the distinction. No tautology or misleading elements are present.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, exclusions, or compare to siblings like 'get_trade_dates' for broader date queries or 'get_latest_trading_date' for single dates. Usage is implied only by the purpose statement.

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

  • Behavior2/5

    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 mentions returning a 'date range string' but lacks details on format (e.g., 'YYYY-MM-DD to YYYY-MM-DD'), timezone, handling of non-trading days, or error behavior. For a tool with no annotation coverage, this leaves significant behavioral gaps.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It is appropriately sized and front-loaded, making it easy to understand quickly.

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

    Completeness2/5

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

    Given no annotations, no output schema, and low schema description coverage (0%), the description is incomplete. It doesn't explain the return format, error handling, or how 'trading days' are defined (e.g., excludes weekends/holidays). For a tool with one parameter and potential complexity in date calculations, more context is needed.

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

    Parameters3/5

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

    The description adds minimal semantics beyond the input schema. It explains that 'days' parameter relates to 'recent N trading days', but with 0% schema description coverage and only one parameter, this is insufficient to fully compensate. The baseline is 4 for zero parameters, but here there is one parameter with poor coverage, so a 3 is appropriate as it provides some context but not detailed meaning.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Return a date range string covering the recent N trading days.' It specifies the verb ('Return'), resource ('date range string'), and scope ('recent N trading days'). However, it doesn't explicitly differentiate from sibling tools like 'get_last_n_trading_days' or 'get_trade_dates', which appear related to trading date retrieval.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention any prerequisites, exclusions, or compare it to sibling tools such as 'get_last_n_trading_days' or 'get_trade_dates', which could serve similar or overlapping functions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions the output is '基于数据的股票分析报告' (data-based stock analysis reports), which hints at read-only behavior, but doesn't disclose critical traits like authentication needs, rate limits, response format, or whether it's a real-time or cached analysis. For a tool with no annotations, this leaves significant behavioral gaps.

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

    Conciseness4/5

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

    The description is appropriately concise and structured. It opens with the core purpose, adds a clarifying boundary (not investment advice), and lists parameters with examples. No wasted sentences, though minor formatting issues (extra whitespace) prevent a perfect score.

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

    Completeness2/5

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

    Given the tool's complexity (analysis generation), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what the analysis report contains, its format, potential limitations, or how it differs from sibling data tools. For a tool that presumably synthesizes data into insights, more context is needed for effective use.

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

    Parameters4/5

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

    The description adds meaningful parameter semantics beyond the schema. The schema has 0% description coverage (no parameter descriptions), but the description explains: 'code: 股票代码,如'sh.600000'' (stock code, e.g., 'sh.600000') and 'analysis_type: 'fundamental'|'technical'|'comprehensive''. This clarifies the code format and analysis_type options, compensating well for the schema's lack of documentation.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: '提供基于数据的股票分析报告' (provide data-based stock analysis reports). It specifies the resource (stock analysis reports) and distinguishes it from investment advice. However, it doesn't explicitly differentiate from sibling tools like 'get_market_analysis_timeframe' or 'get_stock_basic_info', which prevents a perfect score.

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

    Usage Guidelines2/5

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

    The description provides minimal guidance: it clarifies the tool provides analysis reports rather than investment advice, but offers no explicit when-to-use guidance relative to alternatives. With many sibling tools for stock data (e.g., 'get_historical_k_data', 'get_fina_indicator'), there's no indication of when this analysis tool is preferred over raw data tools.

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

  • Behavior2/5

    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 mentions retrieving the 'latest trading date up to today' but lacks details on behavior such as data source, timezone handling, error conditions, or whether it considers market holidays. This leaves gaps for an AI agent to understand operational nuances.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words. It's front-loaded and efficiently conveys the core functionality without unnecessary elaboration.

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

    Completeness2/5

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

    Given no annotations and no output schema, the description is incomplete. It doesn't explain what the output looks like (e.g., date format, single value vs. structured data) or address potential edge cases like non-trading days, which are crucial for a tool in a financial context with many sibling tools.

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

    Parameters4/5

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

    The tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate here, earning a baseline score for tools with no parameters.

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

    Purpose4/5

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

    The description clearly states the verb ('Get') and resource ('latest trading date up to today'), making the purpose understandable. However, it doesn't explicitly differentiate from siblings like 'get_last_n_trading_days' or 'get_trade_dates', which could provide similar date-related information.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives like 'get_last_n_trading_days' or 'get_trade_dates'. The description only states what it does without context for selection among siblings.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions listing constants but doesn't disclose behavioral traits like whether it's read-only, the format of returned data, potential rate limits, or authentication needs. This leaves significant gaps for a tool that likely provides reference data.

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

    Conciseness5/5

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

    The description is appropriately sized and front-loaded, with a clear purpose statement followed by parameter details in two sentences. There is no wasted text, making it efficient and easy to parse.

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

    Completeness3/5

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

    Given the tool's low complexity (1 parameter, no output schema, no annotations), the description is minimally adequate but incomplete. It covers the purpose and parameter semantics well, but lacks behavioral context and usage guidelines, which are important for a reference tool in a financial data context.

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

    Parameters4/5

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

    With 0% schema description coverage and 1 parameter, the description compensates well by explaining the 'kind' parameter as an optional filter with specific values ('frequency', 'adjust_flag', 'year_type', 'index') and default behavior (show all if None). This adds meaningful semantics beyond the bare schema.

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

    Purpose4/5

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

    The description clearly states the tool's purpose with the verb 'List' and resource 'valid constants for tool parameters', making it specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'get_index_constituents' or 'list_industries' that might also list data, though their domains differ.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, such as for parameter validation or data lookup. It mentions an optional filter but doesn't explain scenarios where filtering is beneficial or when to use other tools for similar purposes.

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

  • Behavior3/5

    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 the return format ('Markdown table') and the meaning of 'is_trading_day' values, which is helpful. However, it doesn't mention behavioral aspects like rate limits, authentication needs, or potential errors (e.g., invalid date formats), leaving gaps in understanding how the tool behaves in practice.

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

    Conciseness5/5

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

    The description is well-structured and appropriately sized. It starts with a clear purpose statement, followed by organized sections for arguments and returns, with no redundant information. Every sentence adds value, making it efficient and easy to parse.

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

    Completeness3/5

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

    Given the complexity (4 parameters, no annotations, no output schema), the description is partially complete. It covers the core functionality and some parameters but misses details on 'limit' and 'format', and lacks behavioral context like error handling. It's adequate for basic use but has clear gaps for reliable agent operation.

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

    Parameters4/5

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

    The description adds significant meaning beyond the input schema, which has 0% description coverage. It explains 'start_date' and 'end_date' parameters with format details and defaults, and implies the output structure. However, it doesn't cover 'limit' or 'format' parameters, which are in the schema but undocumented in the description, preventing a perfect score.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Fetch trading dates within a specified range.' It uses a specific verb ('fetch') and identifies the resource ('trading dates'), making the function understandable. However, it doesn't explicitly differentiate from siblings like 'get_last_n_trading_days' or 'is_trading_day', which could cause confusion about when to use each.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With many sibling tools related to trading dates (e.g., 'get_last_n_trading_days', 'is_trading_day', 'get_month_end_trading_dates'), there is no indication of how this tool differs or when it's preferred, leaving the agent without context for selection.

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

  • Behavior2/5

    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 mentions the data source and general use case but fails to disclose critical behavioral traits such as rate limits, authentication needs, error handling, or the structure of the returned 'Adjustment factors table.' This is a significant gap for a data-fetching tool with no annotation coverage.

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

    Conciseness4/5

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

    The description is appropriately sized and front-loaded, with the core purpose stated first. The Args and Returns sections are structured for clarity, though the inclusion of parameter details in the description (while helpful) slightly reduces conciseness. Every sentence earns its place, but minor trimming could improve efficiency.

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

    Completeness2/5

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

    Given the complexity (5 parameters, no annotations, no output schema), the description is incomplete. It covers the purpose and some parameters but lacks details on behavioral aspects (e.g., rate limits, errors) and the output structure. Without an output schema, the description should explain return values more thoroughly, but it only vaguely mentions 'Adjustment factors table.'

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

    Parameters4/5

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

    Schema description coverage is 0%, so the description must compensate. It provides clear semantics for 3 parameters (code, start_date, end_date) with examples and format details, which adds substantial value beyond the schema. However, it omits the 'limit' and 'format' parameters, leaving them undocumented. Since 3 out of 5 parameters are well-explained, this is above baseline but not perfect.

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

    Purpose5/5

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

    The description clearly states the tool's purpose with specific verb ('Fetches') and resource ('adjustment factor data'), and distinguishes it from siblings by mentioning the specific data source ('Baostock's "涨跌幅复权算法" factors') and use case ('Useful for calculating adjusted prices'). This differentiates it from other data-fetching tools like get_historical_k_data or get_dividend_data.

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

    Usage Guidelines3/5

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

    The description implies usage context through 'Useful for calculating adjusted prices,' which suggests when this tool might be appropriate. However, it lacks explicit guidance on when to use this tool versus alternatives (e.g., other financial data tools in the sibling list) or any prerequisites or exclusions, leaving some ambiguity for the agent.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the data source (Baostock) and optional field selection, but doesn't cover important aspects like rate limits, authentication requirements, error conditions, or whether this is a read-only operation. The description doesn't contradict annotations (none exist), but leaves significant behavioral gaps.

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

    Conciseness5/5

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

    The description is well-structured and appropriately sized. It begins with a clear purpose statement, then provides detailed parameter documentation in a readable format, and ends with return information. Every sentence adds value with no redundancy or wasted words.

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

    Completeness3/5

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

    For a 3-parameter tool with no annotations and no output schema, the description does a good job explaining parameters but leaves gaps in behavioral context. It doesn't describe the return structure beyond 'basic stock information in the requested format,' which is insufficient given the lack of output schema. The description covers the 'what' but not the 'how' of tool behavior.

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

    Parameters5/5

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

    Given 0% schema description coverage, the description provides excellent parameter semantics. It clearly explains the 'code' parameter format (Baostock format with examples), details the 'fields' parameter behavior (optional list, default returns all columns, with examples), and mentions the return format. This fully compensates for the schema's lack of descriptions.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Fetches basic information for a given Chinese A-share stock.' It specifies the resource (stock) and action (fetch basic info), distinguishing it from siblings like get_historical_k_data or get_balance_data which fetch different data types. However, it doesn't explicitly differentiate from get_stock_industry or get_stock_analysis which might overlap in scope.

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

    Usage Guidelines3/5

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

    The description implies usage through the context of fetching 'basic information' for stocks, suggesting it's for fundamental data rather than price or technical analysis. However, it doesn't explicitly state when to use this tool versus alternatives like get_stock_industry or get_fina_indicator, nor does it mention any prerequisites or exclusions.

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

  • Behavior3/5

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

    With no annotations, the description carries the full burden. It discloses behavioral traits such as data source ('Baostock'), output format options, default values, and potential truncation for large result sets. However, it lacks details on error handling, rate limits, authentication needs, or data freshness, which are important for a data-fetching tool.

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

    Conciseness4/5

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

    The description is well-structured with clear sections (Args, Returns) and uses bullet-like formatting for parameters. It's appropriately sized but could be more front-loaded; the core purpose is stated first, but some details are verbose. Every sentence adds value, though minor trimming is possible.

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

    Completeness4/5

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

    Given the complexity (8 parameters, no annotations, no output schema), the description is largely complete. It covers parameters thoroughly and explains the return format. However, it lacks information on error cases, data limits beyond 'truncated', and integration with sibling tools, leaving minor gaps for full contextual understanding.

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

    Parameters5/5

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

    The description adds significant meaning beyond the input schema, which has 0% schema description coverage. It explains each parameter's purpose, valid options (e.g., frequency and adjust_flag enums), defaults, and examples (e.g., code format 'sh.600000'), fully compensating for the schema's lack of documentation.

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

    Purpose5/5

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

    The description clearly states the verb ('fetches') and resource ('historical K-line (OHLCV) data for a Chinese A-share stock'), making the purpose specific and actionable. It distinguishes from siblings by focusing on OHLCV data rather than other financial metrics like balance sheets or dividends.

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

    Usage Guidelines2/5

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

    No explicit guidance on when to use this tool versus alternatives is provided. While the purpose implies it's for OHLCV data, it doesn't mention when to choose this over other data-fetching tools or prerequisites like data availability. The description lacks context for tool selection among siblings.

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

  • Behavior2/5

    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 mentions the tool returns 'matching stock codes with their trading status,' which adds some behavioral context, but fails to disclose critical traits like whether this is a read-only operation, potential rate limits, error conditions, or how results are structured (e.g., pagination). For a search tool with zero annotation coverage, this is a significant gap.

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

    Conciseness5/5

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

    The description is appropriately sized and front-loaded, starting with the core purpose in the first sentence. The structured 'Args' and 'Returns' sections are efficient and zero-waste, with each sentence earning its place by clarifying parameters and output without redundancy.

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

    Completeness3/5

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

    Given the tool's moderate complexity (4 parameters, no output schema, no annotations), the description is partially complete. It excels in parameter semantics but lacks behavioral details (e.g., safety, limits) and doesn't fully explain the return values beyond 'matching stock codes with their trading status.' Without annotations or output schema, more context on behavior and results would improve completeness.

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

    Parameters5/5

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

    The description adds substantial meaning beyond the input schema, which has 0% description coverage. It explains each parameter's purpose (e.g., 'keyword: Substring to match in the stock code'), provides examples ('e.g., '600', '000001''), clarifies defaults ('Defaults to 50'), and enumerates options for 'format' ('markdown' | 'json' | 'csv'). This fully compensates for the schema's lack of descriptions.

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

    Purpose5/5

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

    The description clearly states the tool's purpose with specific verbs ('search stocks') and resources ('by code substring on a date'), distinguishing it from sibling tools that retrieve specific data types (e.g., get_balance_data, get_historical_k_data) rather than performing substring searches. It precisely defines what the tool does without being vague or tautological.

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

    Usage Guidelines3/5

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

    The description implies usage through its purpose statement ('search stocks by code substring on a date'), suggesting it's for finding stocks matching a keyword. However, it lacks explicit guidance on when to use this tool versus alternatives like get_all_stock or normalize_stock_code, and doesn't mention prerequisites or exclusions, leaving the agent to infer context.

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

  • Behavior3/5

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

    With no annotations provided, the description carries full burden. It discloses output format options and default behaviors (current date, 250 limit), but lacks details on permissions, rate limits, error handling, or data freshness. It adequately describes core behavior but misses advanced operational context.

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

    Conciseness4/5

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

    Well-structured with clear sections (purpose, args, returns). Every sentence adds value, though the 'Args' and 'Returns' headers are slightly verbose. Efficiently front-loaded with the core purpose first.

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

    Completeness4/5

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

    Given no annotations and no output schema, the description provides solid coverage: clear purpose, full parameter semantics, and return format explanation. It lacks sibling differentiation and some behavioral details, but is largely complete for a read-only query tool.

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

    Parameters5/5

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

    Schema description coverage is 0%, so the description fully compensates by explaining all three parameters: date (optional, format, default logic), limit (purpose, default), and format (options, default). It adds crucial meaning beyond the bare schema, including conditional behavior and enum values.

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

    Purpose5/5

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

    The description clearly states the specific action ('List suspended stocks') and resource ('stocks'), with precise scope ('for a date'). It distinguishes from siblings by focusing on suspended stocks (tradeStatus==0), unlike other tools that retrieve different financial data types.

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

    Usage Guidelines3/5

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

    The description implies usage context through 'for a date' and the return condition 'tradeStatus==0', but lacks explicit guidance on when to use this tool versus alternatives like 'get_all_stock' or 'get_stock_basic_info'. No exclusions or prerequisites are mentioned.

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

  • Behavior3/5

    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 explains the quarterly aggregation behavior and output column naming conventions, which is valuable. However, it doesn't address important behavioral aspects like rate limits, authentication requirements, data freshness, error conditions, or whether this is a read-only operation (though implied by 'get' naming).

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

    Conciseness5/5

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

    The description is efficiently structured with clear sections: purpose statement, key behavioral detail (quarterly aggregation), data sources list, and output format explanation. Every sentence adds value with zero wasted words, and it's appropriately front-loaded with the core functionality.

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

    Completeness3/5

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

    For a tool with 5 parameters, 0% schema coverage, no annotations, and no output schema, the description does a reasonable job explaining the aggregation behavior and output structure. However, it doesn't fully compensate for the missing parameter documentation (especially the 'code' parameter) and lacks details about return format, error handling, or performance characteristics that would be helpful given the complexity.

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

    Parameters4/5

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

    With 0% schema description coverage for 5 parameters, the description adds significant value by explaining that date range determines which quarters to fetch (clarifying start_date and end_date purpose). However, it doesn't explain the code parameter (stock/company identifier), limit, or format parameters. The description compensates well but doesn't fully cover all parameters.

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

    Purpose5/5

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

    The description clearly states the tool aggregates financial indicators from 6 Baostock APIs into one query, specifying the exact data sources (profitability, operation, growth, solvency, cash flow, DuPont analysis). It distinguishes itself from siblings by combining data that appears to be split across multiple specialized tools (e.g., get_profit_data, get_operation_data, get_growth_data, get_dupont_data).

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

    Usage Guidelines4/5

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

    The description provides clear context for when to use this tool: when needing aggregated financial indicators by quarter, with date ranges determining which quarters to fetch. It implicitly suggests alternatives (using individual specialized tools for specific data types) but doesn't explicitly name them or state when not to use this tool.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

a-share-mcp-is-just-i-need MCP server

Copy to your README.md:

Score Badge

a-share-mcp-is-just-i-need MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/24mlight/a-share-mcp-is-just-i-need'

If you have feedback or need assistance with the MCP directory API, please join our Discord server