Skip to main content
Glama
lj22503

InvestBrain

market_get_index_components

Retrieve constituent stocks for a specified index code, such as CSI 300 or Shanghai Composite, to support index composition analysis and investment research.

Instructions

Get constituent stocks of an index (CSI300, etc).
Note: Simplified - returns basic info from Sina.

Args:
    index_code: Index code (e.g., "000300" for CSI 300, "000001" for Shanghai)

Returns:
    dict: Index name and current value

Input Schema

NameRequiredDescriptionDefault
index_codeYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries the full burden. It usefully discloses the upstream source ("Sina") and admits it is "Simplified," but then describes a return payload that contradicts the tool's own name, leaving the agent unsure what it actually receives.

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?

Front-loaded sentence plus compact Args/Returns blocks; nothing is padded. The Returns block is short but is the source of the semantic error, which keeps this out of 5 territory.

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

Completeness2/5

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

No output schema exists, so the description is solely responsible for explaining returns — and it states the wrong thing (index name and value instead of constituent list). For a data-retrieval tool with one undocumented parameter, that leaves a critical gap.

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

Parameters4/5

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

Schema coverage is 0% and the single index_code property has no schema description, so the description must compensate — and it does, giving concrete code examples ("000300" for CSI 300, "000001" for Shanghai). Format guidance is the one thing an agent needs here and it is present.

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?

"Get constituent stocks of an index" names a specific verb and resource, which is good on its own. But the Returns line then says the function gives "Index name and current value" rather than constituents, so the stated purpose contradicts itself. It also fails to differentiate from the near-identical sibling tushare_get_index_components.

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 when-to-use guidance is offered, no preconditions, and no mention of the closely related tushare_get_index_components that an agent must choose between. The only hint is the parenthetical "(CSI300, etc)."

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

Deploy Server

Other Tools