Skip to main content
Glama
benethos-hub

Yahoo Finance MCP Server

by benethos-hub

Server Quality Checklist

75%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.5.0

  • Disambiguation5/5

    Each tool targets a distinct piece of Yahoo Finance data: quotes, fund data, history, company info, financials, dividends, news, recommendations, options, earnings, estimates, upgrades/downgrades, holders, insider activity, SEC filings, calendar, shares, sector, industry, and market status. Despite some thematic overlap (e.g., earnings vs. calendar), every tool has a clear, non-overlapping purpose and descriptions make the differences explicit.

    Naming Consistency5/5

    All 22 tools follow a consistent 'get_<noun>' pattern in snake_case. Even multi-word tool names (e.g., get_fund_data, get_company_info, get_upgrades_downgrades) adhere without deviation. This predictable structure makes the tool set easy to navigate.

    Tool Count5/5

    With 22 tools, the server covers the broad scope of Yahoo Finance data without being bloated. Each tool serves a specific functional area (quotes, fundamentals, market data, etc.), and the count feels well-calibrated for the domain—neither too sparse nor excessive.

    Completeness4/5

    The tool set covers the vast majority of common Yahoo Finance use cases: quotes, historical data, financial statements, news, options, earnings, estimates, insider trading, SEC filings, sector/industry browsing, and market status. Minor gaps exist (e.g., no symbol-specific index constituents or currency data), but the surface is comprehensive for typical financial analysis tasks.

  • Average 4/5 across 22 of 22 tools scored. Lowest: 3.2/5.

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

    • No community issues in the last 6 months
    • 85 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • 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

  • Behavior2/5

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

    With no annotations, the description carries full burden for behavioral disclosure. It only states what the tool returns ('current price and key intraday figures') but does not mention data latency, authentication requirements, error handling, or whether output is real-time or delayed. The behavioral profile is minimally described.

    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, front-loaded sentence of 10 words. It directly states the action and key result with no unnecessary words, earning every character.

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

    Completeness4/5

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

    Given the tool's simplicity (one parameter, output schema present), the description is sufficient for basic use. It could be slightly improved by noting that it returns intraday data for a single symbol, differentiating from historical or multi-symbol tools, but overall it is mostly complete.

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

    Parameters3/5

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

    The input schema already provides a detailed description of the 'symbol' parameter, including examples and a note about using 'search' for company names. The tool description does not add further meaning to the parameter, so it meets the baseline for high schema coverage.

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

    Purpose4/5

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

    The description clearly states the action ('get') and the resource ('current price and key intraday figures for a Yahoo symbol'), which is specific and informative. However, it does not differentiate from sibling 'get_quotes' (plural) which might serve a similar purpose, leaving some 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?

    No explicit guidance is provided on when to use this tool versus other tools like 'get_quotes', 'get_history', or 'get_fund_data'. The description only implies usage for a single symbol's current price, but does not specify limitations or alternatives.

    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 must carry the full burden of behavioral disclosure. It states the tool returns specific data fields, which is helpful, but it does not disclose any side effects, authentication requirements, rate limits, or whether the data is cached or fresh. For a data retrieval tool, this is a notable 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 relatively concise at two sentences, front-loading the key purpose. The bullet points in the second sentence are clear, though they could be slightly more concise. Every sentence adds value, but the first sentence could be merged with the second.

    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 that an output schema exists, the description does not need to document return values in detail. The tool is simple (one parameter, no nested objects), and the description covers the core purpose and data types. However, missing behavioral transparency (e.g., data staleness) slightly reduces completeness.

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

    Parameters3/5

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

    The schema coverage is 100% (one parameter), and the schema description already states it expects a Yahoo ticker or ISIN, with a note about using 'search' for names. The description does not add additional meaning beyond what the schema provides, so a baseline score of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states that the tool retrieves a company profile and key statistics for a Yahoo symbol. It lists specific data fields (name, sector, valuation metrics, business summary), which distinguishes it from siblings like get_quote (pricing focus) or get_financials (financial statements). However, it does not explicitly differentiate it from get_company_info or note that other siblings like get_holders or get_insider_activity might overlap in some data points.

    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 when a company profile is needed, and the input schema explicitly mentions using 'search' first for company names. However, there is no guidance on when NOT to use this tool (e.g., when only quote data is needed, use get_quote) or which sibling tools are alternatives for overlapping data (e.g., valuation metrics might also be in get_quote).

    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 bears the full burden of behavioral disclosure. It only states that the tool retrieves history, implying a read operation, but lacks details on pagination, time ranges, rate limits, or any side effects. The description is too minimal to adequately inform an agent about behavior.

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

    Conciseness5/5

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

    The description is a single, front-loaded sentence of 10 words. It contains no unnecessary words or filler, and every word is essential to conveying the tool's purpose. Highly efficient.

    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 simplicity (one parameter, output schema present), the description is adequate but not fully complete. It covers what the tool does and the input, but omits any behavioral context, usage tips, or constraints. The presence of an output schema mitigates the need for return-format details, but the description still feels thin.

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

    Parameters3/5

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

    The input schema has 100% coverage for the single parameter ('symbol'), which already includes a clear description and usage hint. The tool description itself does not add any additional information about the parameter, so it neither improves nor detracts from what the schema provides. Baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the action ('Get'), the resource ('dividend and stock-split history'), and the scope ('for a Yahoo symbol'). This is specific and distinguishes it from sibling tools like get_history (price history) or get_company_info (company profile).

    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 vs. alternatives. The parameter description suggests using 'search' first for company names, but this is about input preparation, not tool selection. No explicit when/when-not or sibling comparisons are given.

    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 states the tool returns earnings calendar and history, and behaves differently for non-equity instruments. However, it does not explicitly state whether the tool is read-only (though 'get' implies it) or mention any auth, rate limits, or side effects.

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

    Conciseness5/5

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

    The description is concise at three sentences, with the purpose front-loaded in the first sentence. Every sentence adds value: purpose, return details, and equity constraint. There is no redundancy or fluff.

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

    Completeness4/5

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

    Given the tool has two parameters and an output schema, the description adequately covers the return values (earnings calendar and history) and the scope (equity-only). It could mention pagination or limitations of the limit parameter, but the schema already provides min/max. For its complexity, the description is nearly complete.

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

    Parameters3/5

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

    Schema coverage is 100%, so the parameters are already well-documented. The description adds no additional meaning beyond what the schema provides (e.g., it does not elaborate on 'limit' behavior or 'symbol' format). Baseline 3 is appropriate as the description does not subtract value but also does not enhance understanding.

    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 'Get upcoming and historical earnings for a Yahoo symbol', specifying the verb ('get') and resource ('earnings'). It distinguishes from siblings by noting it is equity-only and empty for ETFs, funds, and crypto, though it does not explicitly differentiate from similar tools like get_financials or get_calendar.

    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 provides a clear usage context ('equity-only, empty for ETFs, funds, and crypto'), which helps the agent decide when to apply the tool. However, it lacks explicit guidance on when not to use it or alternatives to prefer, such as comparing with get_estimates or get_historical for dividends.

    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 that the tool retrieves financial statements and explains the structure of the return data (rows/columns). It does not mention rate limits, authentication requirements, any side effects, or limits on symbol format beyond what the schema already states. This is adequate but not rich in behavioral context.

    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 four sentences long, front-loaded with the core purpose, and every sentence provides necessary information (parameter options, output structure, constraints). There is no redundant or extraneous text.

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

    Completeness4/5

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

    The tool has moderate complexity (3 params, 1 required, no nested objects) and an output schema exists. The description covers the purpose, all parameter choices, output structure, and the constraint that 'ttm' is limited to income and cashflow. It does not explain the output schema in detail, but that is provided separately. The description is sufficiently complete for an agent to select and invoke the tool correctly.

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

    Parameters3/5

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

    Schema description coverage is 100% (all three parameters have detailed descriptions). The description adds context by reiterating that 'ttm' is for income and cashflow only and that each row is a line item, but these details are largely present in the schema descriptions. The description does not add meaning significantly beyond the schema, so a baseline score of 3 is appropriate.

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

    Purpose5/5

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

    The description starts with a specific verb-resource combination ('Get a financial statement for a Yahoo symbol') and then clearly enumerates the statement types (income, balance, cashflow) and frequencies (annual, quarterly, ttm). This makes the tool's purpose unambiguous and distinguishes it from sibling tools like get_quote or get_company_info.

    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 explains the parameter options and the temporal scope of the output (each row a line item, each column a reporting period), which implies when to use it. However, it does not explicitly state when to choose this tool over siblings (e.g., get_company_info for summary data, get_quote for current price, get_history for historical prices). No exclusions or alternative suggestions are provided.

    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?

    Since no annotations are provided, the description carries full burden. It discloses results are capped at 250 rows and that intraday intervals cover only recent dates, which is helpful. However, it omits other behavioral traits like rate limits, error handling, or authentication needs.

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

    Conciseness5/5

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

    The description is concise: one sentence for purpose, then bullet-like examples and a cap note. No redundant words, and key information is front-loaded.

    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?

    With 5 parameters, one required, and an output schema, the description covers essential usage: valid values for period/interval, date range alternatives, and row cap. It is sufficient for correct invocation, though more detail on symbol validation could help.

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

    Parameters4/5

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

    Schema coverage is 100%, so baseline is 3. The description adds value by providing example values for period and interval, explaining the start/end vs. period tradeoff, and clarifying that start overrides period. This enriches the schema's definitions.

    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 returns historical OHLCV data for a symbol, specifying the exact resource and operation. This distinguishes it from sibling tools like get_quote (current price) and get_fund_data (fundamental 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?

    The description provides parameter examples but gives no explicit guidance on when to use this tool versus alternatives like get_quote, get_fund_data, or search. An agent must infer usage context from tool names alone.

    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 exist, so the description must disclose behavior. It states the tool returns recent headlines with a limit, but fails to mention potential rate limits, caching behavior, or whether it returns both articles and metadata (implied by output schema but not described).

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

    Conciseness5/5

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

    Two succinct sentences: the first explains the primary action and limit constraint, the second describes the output structure. No wasted words.

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

    Completeness4/5

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

    Given the presence of an output schema that likely details returned fields, the description does not need to explain return values further. It covers the tool's purpose, parameter constraints, and article contents, making it complete for its complexity.

    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 value beyond the schema: it clarifies the limit range (1-30) and explains what each article includes. However, schema coverage is 100%, so the description isn't required to compensate, earning a baseline 3.

    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 retrieves recent news headlines for a Yahoo symbol, specifies the resource (headlines), and distinguishes it from financial data tools like get_quote by focusing on news content.

    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?

    No explicit guidance on when to use this tool versus siblings (e.g., search for company lookup before getting news). Usage context is implied from the tool's news focus, but no alternatives or exclusion criteria are provided.

    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 bears full responsibility for behavioral disclosure. It describes the output structure and notes the equity-only constraint, but does not mention aspects like read-only nature, rate limits, or authentication requirements. Basic transparency but lacking deeper behavioral context.

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

    Conciseness5/5

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

    The description is two sentences, front-loaded with the core purpose, and every word contributes meaning. No redundant or filler content. Efficiently structured for quick comprehension.

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

    Completeness4/5

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

    Given the tool's simplicity (one parameter, output schema present), the description covers the essential aspects: what the tool does, what it returns, and its limitations. It could be slightly more explicit about the forward-looking nature of estimates, but 'forward' sufficiently implies future periods. Overall, it provides adequate context for an agent to use the tool correctly.

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

    Parameters3/5

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

    The schema already provides 100% coverage of the single parameter with a detailed description. The tool description does not add new information about the parameter; it repeats the schema text. Therefore, the description adds no value beyond the schema, earning a baseline score of 3.

    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 retrieves forward analyst estimates and lists specific data returned (earnings/revenue estimates, EPS trend/revisions, growth estimates). It also specifies it is equity-only and returns empty for ETFs, funds, and crypto, which helps distinguish it from sibling tools like get_earnings or get_financials.

    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 implicit usage context by noting the tool is equity-only and returns empty for non-equity instruments. The symbol parameter description guides users to use 'search' for company names. However, it does not explicitly compare this tool to siblings or state when to prefer alternatives.

    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 burden of disclosing behavior. It transparently explains the return content (buy/hold/sell trend, price targets) and includes the caveat 'when available', which is useful. However, it does not explicitly state that the operation is read-only, whether authentication is needed, or any rate limits. The lack of such basic behavioral disclosure prevents a higher score.

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

    Conciseness5/5

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

    The description is two sentences, front-loaded with 'Get', and every sentence adds value. It efficiently conveys both the resource and the return values without excessive detail, making it easy to scan and understand.

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

    Completeness4/5

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

    Given the tool has a single well-documented parameter and an output schema, the description is reasonably complete. It clarifies the scope of data returned ('over recent months', multiple price target metrics) and the 'when available' caveat. However, it does not provide any guidance on selecting this tool over siblings like get_estimates, which would be a minor addition for full completeness.

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

    Parameters3/5

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

    The input schema already covers the symbol parameter fully, including examples and guidance to use 'search' for company names (100% coverage). The description adds no additional parameter-specific meaning beyond what the schema provides, so the baseline score of 3 applies.

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

    Purpose5/5

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

    The description clearly states the tool retrieves 'analyst recommendation trends and price targets' for a Yahoo symbol, using the specific verb 'Get'. This distinguishes it from sibling tools like get_quote (quotes) and get_estimates (estimates), as it focuses on recommendation trends and target prices.

    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 by specifying the tool is for analyst recommendations and price targets, but it does not explicitly mention when not to use it or name alternatives. The instruction 'for a Yahoo symbol' implies the required input format, but lacks explicit comparison to similar tools like get_estimates.

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

  • Behavior4/5

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

    The description provides key behavioral traits: the 'status' field behavior (open/closed/next times) is limited to the 'US' key due to upstream constraints. It clarifies that null status for other keys is not an error, setting correct expectations. Given no annotations exist, the description carries the full burden and handles it well, though it could detail other potential fields (e.g., change calculation).

    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 concise (three sentences) and front-loads the main purpose before explaining detailed behavior. It avoids wasted words. However, it could be slightly more streamlined by moving the 'status null' explanation into the second sentence.

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

    Completeness4/5

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

    Given the tool has 1 parameter, 100% schema coverage, and an output schema (not shown), the description adequately covers the purpose, input, and key behavioral nuance (status null for non-US). It is complete for a simple data retrieval tool, though it could hint at output structure (e.g., fields like price, previous close) since no output schema is visible in the evaluation context.

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

    Parameters3/5

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

    Schema description coverage is 100%, and the schema already documents the 'key' parameter with allowed values and the status limitation. The description adds context about the purpose (e.g., answering market open/close questions) but does not add significant new meaning beyond the schema itself. Baseline 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the tool retrieves trading status and headline index summary for a market, specifying it answers questions about market open/close times and index performance. It explicitly distinguishes the input as a market key (e.g., 'US', 'EUROPE') not a ticker symbol, which differentiates it from siblings like get_quote or get_history.

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

    Usage Guidelines4/5

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

    The description explains when to use this tool (for market-level status and index summary) and explicitly warns that 'status' is only available for 'US' and null for others due to upstream limitations. However, it does not explicitly state when to avoid this tool versus others (e.g., for individual stocks or detailed quotes), leaving some context implicit.

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

  • Behavior4/5

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

    With no annotations provided, the description fully bears the transparency burden. It discloses the output contents (earnings estimates, dividend dates), the type of securities applicable (equity-only), and the behavior for unsupported types (returns empty for ETFs, funds, crypto). This is adequate but could be improved by explicitly stating read-only nature or whether pagination applies.

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

    Conciseness5/5

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

    The description is three concise sentences, each providing essential information: purpose, returned data, and limitations. No redundant or filler content. The most critical information is front-loaded in the first sentence.

    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 presence of an output schema (not shown but indicated), the description need not detail return fields. It covers the major data types (earnings, dividends) and constraints. However, it could specify whether multiple future events are returned beyond 'next' and whether the time range is configurable, but overall it is sufficiently complete for a focused tool.

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

    Parameters3/5

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

    The single parameter 'symbol' is fully documented in the input schema with a clear description. The description adds no additional meaning beyond the schema, as it simply repeats the function's context. With 100% schema coverage, the baseline is 3, and the description does not exceed that.

    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 retrieves corporate-calendar events (earnings and dividends) for a Yahoo symbol. It distinguishes itself from siblings by specifying the scope: 'Returns the next earnings date(s) with analyst estimate ranges and the next dividend / ex-dividend dates.' The constraint 'equity-only, empty for ETFs, funds, and crypto' further clarifies the tool's specific domain, making its purpose unique among many similar tools.

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

    Usage Guidelines4/5

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

    The description provides clear context on what the tool returns (earnings estimates and dividend dates) and its limitation (equity-only). However, it does not explicitly guide when to use this tool over closely related siblings like `get_earnings` or `get_dividends`, nor does it state when not to use it. A brief mention of alternatives would elevate the score.

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

  • Behavior4/5

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

    Since no annotations are provided, the description carries the full burden. It discloses that the tool is equity-only and returns empty for other asset types, which is a critical behavioral constraint. It also clarifies the output structure (high-level summary plus lists of holders). It does not mention rate limits, authentication requirements, or whether the data is cached, but for a read-only data retrieval tool, the provided information is sufficient.

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

    Conciseness5/5

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

    The description is concise at three sentences, with the most important information (what the tool does) front-loaded in the first sentence. Every sentence adds value: the second clarifies the output structure, and the third provides critical usage constraints. No wasted words.

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

    Completeness4/5

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

    Given the tool has 2 parameters (both well-documented in schema), an output schema (so return structure is documented elsewhere), and no annotations, the description provides enough context for an agent to use the tool correctly. It covers purpose, inputs, and behavioral constraints. Minor gap: it doesn't mention that the symbol is required, but the schema already specifies that.

    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 already provides 100% coverage with descriptions for both parameters. The description adds minimal extra value beyond clarifying that the 'limit' applies per list (institutional and mutual-fund holders) and that the 'symbol' can be a ticker or ISIN. Since the schema does the heavy lifting, a baseline of 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the verb 'Get' and the resource 'ownership breakdown for a Yahoo symbol'. It also specifies the scope: high-level holder summary (insider/institutional percentages) plus top institutional and mutual-fund holders. It distinguishes itself from related tools like 'get_insider_activity' or 'get_shares' by focusing on ownership breakdown rather than raw insider transactions or share counts.

    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: for equity symbols only, and explicitly states that it returns empty for ETFs, funds, and crypto. It does not, however, explicitly mention when not to use it or suggest alternatives for non-equity instruments, leaving a minor gap.

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

  • Behavior4/5

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

    Since no annotations are provided, the description carries full burden. It correctly discloses that the tool is equity-only and empty for other types. This is important behavioral info. It does not reveal auth needs or rate limits, but being a read tool that likely mirrors public data, the risk is lower.

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

    Conciseness5/5

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

    The description is three sentences, no wasted words. Front-loaded with the primary purpose, followed by details on return structure, and ending with a clear constraint. Every sentence earns its place.

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

    Completeness4/5

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

    The tool has an output schema, so return values need not be described in the description. With 2 well-documented params and clear domain-specific constraints, the description is complete enough for an agent to use correctly. Could mention that 'limit' applies to both transactions and roster rows, but that's minor.

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

    Parameters3/5

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

    Schema coverage is 100%, so baseline is 3. The description does not add any parameter-level detail beyond what the schema already provides. It does not explain the meaning of 'limit' or 'symbol' further, but the schema descriptions are themselves clear and complete.

    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 'Get' and the resource 'insider trading activity for a Yahoo symbol', and distinguishes what it returns (individual transactions, summary, roster). It also explicitly states what it does not apply to (ETFs, funds, crypto), which further clarifies its scope.

    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 implies when to use (for equity insider activity) and when not (for ETFs, funds, crypto). It does not explicitly name alternative tools for non-equity cases, but the sibling list is long and this tool's restriction is clear.

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

  • Behavior4/5

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

    With no annotations, the description carries the full burden. It clearly discloses the return contents (overview, top companies, ETFs, mutual funds, industries) and the drill-down mechanism, implying a read-only operation. It doesn't mention error handling or rate limits, but for a browse tool, this is adequate.

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

    Conciseness5/5

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

    The description is concise yet information-dense. It front-loads the core purpose, then lists return contents, and ends with usage guidance and an example. No wasted sentences.

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

    Completeness4/5

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

    Given the tool's moderate complexity and the presence of an output schema, the description adequately covers purpose, key inputs, outputs, and the relationship to get_industry. It could mention that 'limit' applies to top companies, but this is already in the schema. Overall, sufficient for an agent to select and invoke correctly.

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

    Parameters3/5

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

    Schema coverage is 100% with detailed descriptions for both parameters. The description adds minimal extra semantic value, mainly reinforcing the key format with examples and reiterating that it is not a ticker. This meets the baseline for high schema coverage.

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

    Purpose5/5

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

    The description clearly states the tool's function: 'Browse a market sector by its Yahoo key.' It distinguishes from related tools by emphasizing 'not a ticker symbol' and explicitly referencing the sibling tool 'get_industry' for drilling down into industries.

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

    Usage Guidelines4/5

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

    The description gives clear context for when to use this tool: to browse a sector overview, and how to drill down to industries via get_industry. It also clarifies what it is not for ('not a ticker'). It does not explicitly state exclusions among all siblings, but the guidance is strong enough.

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

  • Behavior4/5

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

    The description discloses key behavioral traits: shares-outstanding history is returned as date points with amounts, only the most recent `limit` points are returned, and optional bounds apply. Since no annotations are provided, the description carries the full burden and handles it well, though it does not mention what happens on an invalid symbol.

    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 two short paragraphs. The first sentence defines the core purpose, and the second explains parameter usage. Every sentence serves a purpose, with no fluff.

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

    Completeness4/5

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

    Given the output schema exists, the description does not need to detail the return format. It explains the input parameters well and the nature of the data retrieved. However, a brief note on error conditions (e.g., no data for the symbol) would make it fully complete for a tool interacting with an external financial data source.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The description adds some value by restating parameter usage (`limit`, `start`, `end`) and reinforcing the date format `YYYY-MM-DD`, but does not add new meaning beyond what the schema already provides for any of the 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's action ('get the shares-outstanding history'), the resource ('Yahoo symbol'), and the specific data returned ('each point is a date and reported shares outstanding'). It is distinct from siblings like `get_dividends`, `get_history`, and `get_quotes`, which return different 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 Guidelines4/5

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

    The explanation of how to use parameters (`limit`, `start`, `end`) provides solid guidance for bounding the query. However, it does not explicitly mention when to use this tool versus alternatives like `get_history` or `get_fund_data`, nor does it state when not to use it.

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

  • Behavior4/5

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

    With no annotations provided, the description bears full transparency burden. It discloses return data (overview, weightings, holdings) and a key behavior (raises for stocks/crypto). It does not cover auth needs or rate limits, but for a read-like operation this is adequate.

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

    Conciseness5/5

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

    Two sentences, front-loaded with purpose, followed by return data and constraint. No unnecessary words. Every sentence earns its place.

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

    Completeness5/5

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

    Given the tool's simplicity (2 params, output schema exists), the description covers purpose, return data, and error condition. No gaps remain for effective use. The output schema handles return structure details, so description is complete.

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

    Parameters3/5

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

    Schema coverage is 100% and the schema descriptions for 'symbol' and 'limit' are already detailed with examples and constraints. The description adds overall context but not directly to parameter semantics beyond what the schema provides, so baseline 3 is appropriate.

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

    Purpose5/5

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

    The description clearly states the tool retrieves fund/ETF profile data for a Yahoo symbol, listing specific data types (overview, weightings, holdings). It explicitly notes it is fund/ETF-only and raises for stocks and crypto, which distinguishes it from siblings like get_company_info or get_quote.

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

    Usage Guidelines4/5

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

    The description provides clear context: use for fund/ETF symbols only, and raises for stocks/crypto. Although it does not name alternative tools, the exclusion is explicit, fulfilling a when-not directive. The agent can infer alternatives from sibling names.

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

  • Behavior4/5

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

    No annotations are provided, so the description bears full burden for behavioral context. It discloses that Yahoo only carries chains for US-listed instruments and that a non-US symbol yielding nothing is normal behavior. It could further describe mutability (likely read-only) but the current detail is strong given the absence of annotations.

    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 three sentences, each contributing unique information: mode of operation, date format, and limitation. It is front-loaded with the core purpose. The slightly informal style ('that says nothing about the symbol') is acceptable but could be tightened without losing meaning.

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

    Completeness4/5

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

    Given the tool has an output schema and 100% parameter coverage, the description adequately covers behavioral context. It explains the two-step workflow and the US-instrument limitation, which is crucial for correct use. It could mention that the output is a list of options or dates, but the output schema likely handles that.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the baseline is 3. The description adds modest value by explaining the interaction pattern for expiration but does not introduce meaning beyond the schema's documentation. For example, it doesn't clarify whether symbol must be a Yahoo ticker vs ISIN in the description text itself.

    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 retrieves the option chain for a Yahoo symbol, distinguishing it from siblings like get_quote or get_history. It specifies the two modes of operation (listing expiration dates or fetching calls/puts) and provides context about coverage limitations, making the purpose precise and unique.

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

    Usage Guidelines5/5

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

    The description provides explicit guidance on when to use the tool: call without expiration to list available dates, then call with a specific expiration from that list. It also tells the agent when not to use it (non-US symbols will return nothing and that doesn't indicate issues) and implicitly distinguishes from financial data tools like get_fund_data.

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

  • Behavior4/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 that each symbol is looked up individually, that the call is safe (non-destructive read), and that symbols not found are listed under 'not_found' rather than failing the whole call. It does not mention rate limits, data freshness, or authentication requirements, but the core behavioral traits are covered.

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

    Conciseness5/5

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

    Three sentences, zero wasted words. The first sentence captures the core action and scope, the second gives usage guidance, and the third adds behavioral details about error handling. Every sentence earns its place.

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

    Completeness5/5

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

    Given the tool's simplicity (single parameter, return fields listed, output schema exists), the description is complete. It explains what the tool does, when to use it, what it returns, and how errors are handled. No additional information is needed for the agent to select and invoke correctly.

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

    Parameters3/5

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

    Schema coverage is 100% and the schema already provides a thorough description of the 'symbols' parameter (Yahoo tickers, ISINs, examples, max 50). The description adds context about the tool's purpose but does not add new semantic details about the parameter beyond what the schema provides. Baseline 3 is appropriate.

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

    Purpose5/5

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

    The description explicitly states 'Get compact current quotes for several Yahoo symbols in one call' – a specific verb (get), resource (quotes), and scope (several symbols). It distinguishes from the singular sibling 'get_quote' by emphasizing multiple tickers. The listed return fields (currency, price, etc.) further clarify purpose.

    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 says 'Use this to compare or fetch prices for multiple tickers at once', which gives clear context. However, it does not explicitly mention when to use the alternative 'get_quote' for a single symbol, nor does it state any exclusions. The sibling list implies the alternative but the description itself lacks direct guidance.

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

  • Behavior4/5

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

    Since no annotations are provided, the description fully handles behavioral transparency. It discloses the ordering (most recent first), the content (each entry includes firm, from/to grade, and action), and the limitation to equity instruments. No contradictions with missing annotations.

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

    Conciseness5/5

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

    The description is concise and well-structured, front-loading the main purpose in the first sentence and adding important details in the second. Every sentence adds value with no redundancy or filler.

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

    Completeness5/5

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

    Given the presence of an output schema and the relatively simple nature of the tool (2 parameters, no complex nested structures), the description is complete. It explains the return order, content, and scope limitations, which fully covers what an agent needs to decide to invoke this tool.

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

    Parameters3/5

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

    Schema description coverage is 100%, so with a baseline of 3, the description does not add additional meaning beyond what the schema already provides for the parameters (symbol and limit). The description adds value through context about the return data but not specifically for param semantics.

    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 retrieves recent analyst rating changes (upgrades/downgrades) for a Yahoo symbol. It specifies the resource (rating changes) and the verb (get), and distinguishes it from sibling tools like get_recommendations and get_quote by its focus on rating actions.

    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 the tool: for equity symbols, noting it returns empty results for ETFs, funds, and crypto. It does not explicitly state when not to use it or mention alternatives among siblings, but the equity-only limitation is helpful guidance.

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

  • Behavior4/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 transparency. It discloses the key inputs, the non-ticker requirement, and the structure of the return value (overview, sector, top companies, top-performing/growth). This is valuable behavioral context. It does not mention rate limits or error conditions, but for a read-only browse tool, the disclosed information is sufficient.

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

    Conciseness5/5

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

    The description is concise, with three sentences that each add distinct value: what it returns, how to find valid keys, and the critical distinction from tickers. It is front-loaded with the main purpose, and there is no fluff or repetition of schema details.

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

    Completeness5/5

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

    Given that an output schema is present (so return values are fully defined) and annotations are absent, the description provides all essential context for correct tool selection and invocation: purpose, key source, and input constraints. It is complete for a browse tool of this 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?

    Schema coverage is 100% for both parameters, so the schema already documents key and limit thoroughly. The description adds semantic clarity by reinforcing that 'key' is an industry key (not a ticker) and by giving concrete examples like 'semiconductors'. This extra disambiguation goes beyond the schema's literal parameter descriptions, warranting a score above the baseline of 3.

    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 states a specific verb ('Browse') with a specific resource ('an industry by its Yahoo key'), and clearly distinguishes from ticker-based tools by emphasizing 'not a ticker symbol'. It also names the output contents (industry overview, parent sector, top companies, top performers), making the tool's role unambiguous and differentiated from siblings like get_sector.

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

    Usage Guidelines4/5

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

    The description clearly indicates when to use the tool: when you have a Yahoo industry key, and it tells how to obtain valid keys via get_sector. It also explicitly warns against using a ticker symbol, which helps prevent misuse. It does not explicitly list alternative tools for similar tasks, but the context strongly implies the appropriate use case.

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

  • Behavior4/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 content of each entry (filing date, type, title, EDGAR URL, exhibit links) and covers edge cases (non-US symbols, ETFs). However, it does not explicitly state that this is a read-only operation or mention any rate limits or pagination behavior, which keeps it from a perfect score.

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

    Conciseness5/5

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

    The description is very concise, consisting of only three sentences. The first sentence immediately states the core function, followed by clear, useful details about the response format and edge cases. Every sentence adds value with no redundancy.

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

    Completeness5/5

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

    Given the tool's complexity (2 parameters, 1 required, simple scalar types) and the existence of an output schema (which presumably documents the return structure), the description is complete. It explains what data is returned, what symbols qualify, and how to interpret empty results. No additional information is necessary 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?

    Schema coverage is 100% for both parameters (symbol and limit). The description adds functional meaning to the symbol parameter by noting it can be a Yahoo ticker or ISIN, and suggests using 'search' for company names. It also mentions limit implicitly via the number of filings. The parameter description in the schema already defines them, so the description provides marginal added value, but the additional context on symbol usage is helpful.

    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 that the tool retrieves 'recent SEC filings for a Yahoo symbol', specifying the exact resource (SEC filings) and the key verb ('get'). It also distinguishes itself from siblings by highlighting that it's specific to SEC filings, whereas siblings like get_quote, get_earnings, or get_news serve different 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 Guidelines5/5

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

    The description provides strong usage guidance: it explains that only U.S. SEC-registered issuers file there, so non-US symbols, ETFs, funds, or crypto will return empty results. It also clarifies that an empty result is not an error, preventing misinterpretation. This helps the agent know when this tool is appropriate and what to expect.

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

  • Behavior4/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 return behavior: 'Returns up to limit matches (1-25), each with its symbol, name, exchange, and instrument type.' This adds value beyond the schema and clearly sets expectations for output. It does not explicitly state side effects, but as a search operation it is reasonably transparent.

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

    Conciseness5/5

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

    The description is two sentences, front-loaded with the action and immediately followed by usage guidance and return format. No filler words; every sentence carries essential information. The reference to 'other tools accept' efficiently conveys integration context.

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

    Completeness5/5

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

    For a simple search tool with an output schema and clear sibling context, the description is complete. It covers the input forms (name, ticker, ISIN), the purpose (resolving to symbol), the limit range, and the return fields. It is fully sufficient for an agent to select and invoke this tool correctly in the broader toolset.

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

    Parameters4/5

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

    Schema coverage is 100%, so the description need not explain raw parameter names. It adds meaning by explaining that the query is resolved into a symbol accepted by other tools, and that the limit controls the number of returned matches. This contextualizes the parameters beyond their schema 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: 'Search Yahoo Finance by company name, ticker symbol, or ISIN.' It specifies a verb ('Search') and resource ('Yahoo Finance'), and distinguishes itself from sibling get_* tools by emphasizing its role as the first step to resolve identifiers into Yahoo symbols that other tools accept.

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

    Usage Guidelines5/5

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

    Explicit usage guidance is provided: 'Use this first to resolve a name or ISIN into a Yahoo symbol that the other tools accept.' This clarifies when to use the tool and implicitly contrasts it with the other tools that expect a symbol. The instruction 'Use this first' is a direct call-to-action for the correct workflow.

    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

yahoo-finance-mcp MCP server

Copy to your README.md:

Score Badge

yahoo-finance-mcp 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/benethos-hub/yahoo-finance-mcp'

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