Skip to main content
Glama
AnteWall

Avanza MCP Server

by AnteWall

Server Quality Checklist

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

  • Disambiguation4/5

    Most tools have distinct purposes targeting specific financial data types (e.g., broker trades, dividends, order books, charts), but some overlap exists between get_stock_info and get_stock_quote (both provide stock pricing data) and between get_fund_chart and get_fund_chart_periods (both related to fund performance periods). The descriptions help clarify differences, but an agent might occasionally confuse these pairs.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case (e.g., get_broker_trade_summary, search_instruments, get_orderbook). The naming is predictable and readable throughout the set, with no deviations in style or convention.

    Tool Count4/5

    With 18 tools, the count is slightly high but reasonable for a comprehensive financial data server covering stocks, funds, and market data. It includes essential operations like search, info retrieval, charts, and analysis, though it could be streamlined by merging some overlapping tools (e.g., stock info and quote).

    Completeness4/5

    The toolset provides strong coverage for retrieving financial data, including search, detailed info, charts, dividends, order books, and analysis for stocks and funds. Minor gaps include lack of update/delete operations (expected for read-only data) and no tools for portfolio management or trading actions, but these are likely outside the server's intended scope.

  • Average 4.1/5 across 18 of 18 tools scored. Lowest: 3.2/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 is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • 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 provided, the description carries the full burden of behavioral disclosure. It describes the return structure comprehensively but doesn't mention important behavioral aspects: whether this is a read-only operation (implied by 'Get' but not explicit), rate limits, authentication requirements, data freshness, or error conditions. For a financial data tool 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.

    Conciseness4/5

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

    The description is well-structured with clear sections (purpose, returns, args, returns details, examples) and front-loaded the core purpose. Every sentence adds value, though the detailed metrics listing in the returns section is somewhat lengthy but informative. The example is helpful and appropriately placed.

    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 (financial data retrieval), no annotations, but with an output schema (implied by the detailed returns description), the description is reasonably complete. It covers the purpose, parameter semantics, and return structure comprehensively. The main gaps are behavioral aspects (rate limits, auth) and usage guidelines versus siblings, but the output description reduces the need for return value explanation.

    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 context about the single parameter: 'instrument_id: Avanza instrument ID from search results' clarifies that this is a specific identifier format from the Avanza platform and should come from search results. With 0% schema description coverage and only one parameter, this compensates well by providing the necessary semantic understanding beyond the bare schema type.

    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 company financial statements and metrics' with specific resources (revenue, profits, margins) and time dimensions (year and quarter). It distinguishes from siblings like get_stock_quote or get_stock_info by focusing specifically on financial statements rather than market data or general information. However, it doesn't explicitly contrast with get_stock_analysis which might overlap.

    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 like needing an instrument_id from search results (though this is implied by the parameter), nor does it differentiate from sibling tools like get_stock_analysis that might provide similar financial insights. The example shows basic usage but lacks contextual guidance.

    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 the full burden of behavioral disclosure. It describes what data is returned (e.g., description text, heading, category explanation) but doesn't cover critical aspects like whether this is a read-only operation, potential rate limits, authentication needs, error handling, or data freshness. For a tool with zero annotation coverage, this leaves significant gaps in understanding its operational 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 well-structured and front-loaded, starting with a clear purpose statement followed by details on what it provides, args, returns, and an example. Every sentence adds value without redundancy, and the example enhances clarity. It's appropriately sized for the tool's complexity, 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.

    Completeness4/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 nested objects) and the presence of an output schema (which covers return values), the description is largely complete. It explains the purpose, parameter semantics, and return structure adequately. However, the lack of annotations means some behavioral aspects (e.g., safety, performance) are undocumented, slightly reducing completeness for agent 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 context for the single parameter by specifying that instrument_id is an 'Avanza fund ID from search results', which clarifies its source and format beyond the schema's basic string type. With 0% schema description coverage and only one parameter, this compensation is effective, though it could be more detailed (e.g., explaining ID format or validation).

    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 specific verbs ('Get detailed fund description and category information') and resources ('fund'), making it immediately understandable. It distinguishes this tool from siblings like get_fund_info or get_fund_holdings by focusing on textual descriptions and category classification rather than numerical data or holdings. However, it doesn't explicitly contrast with all similar tools, keeping 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 Guidelines3/5

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

    The description implies usage by specifying that instrument_id comes 'from search results', suggesting this tool should be used after a search. However, it doesn't provide explicit guidance on when to use this versus alternatives like get_fund_info or get_stock_info, nor does it mention any exclusions or prerequisites. The context is clear but lacks detailed comparative 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions that the tool returns 'First matching search hit if found, None otherwise,' which clarifies the return behavior. However, it lacks details on error handling, rate limits, authentication needs, or whether this is a read-only operation. For a lookup tool with zero 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 well-structured and front-loaded with the core purpose, followed by sections for Args, Returns, and Examples. Every sentence adds value: the first defines the tool, the second explains the parameter source, and the rest provide implementation details. There's 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.

    Completeness4/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 (one parameter) and the presence of an output schema (which handles return values), the description is reasonably complete. It covers the purpose, parameter semantics, and return behavior, though it lacks details on errors or operational constraints. For a simple lookup tool, this is sufficient but could be enhanced with more behavioral 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?

    The schema description coverage is 0%, so the description must compensate. It adds meaning by explaining that 'order_book_id' is 'the unique identifier returned from search results,' providing context beyond the schema's basic string type. However, it doesn't specify format constraints (e.g., numeric string) or examples beyond one case, leaving some ambiguity. With only one parameter, this is adequate but not exhaustive.

    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: 'Look up a financial instrument by its order book ID.' It specifies the verb ('look up') and resource ('financial instrument'), and distinguishes it from siblings like 'search_instruments' by focusing on ID-based lookup rather than general search. However, it doesn't explicitly contrast with 'get_orderbook' or 'get_stock_info', which might also retrieve instrument data, leaving some sibling differentiation incomplete.

    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 by stating 'The order book ID is the unique identifier returned from search results,' suggesting this tool should be used after obtaining an ID from search operations. It doesn't provide explicit when-to-use vs. when-not-to-use guidance or name alternatives like 'search_instruments' for broader queries, leaving usage context somewhat inferred rather than clearly defined.

    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. It discloses that the tool returns a list of recent trades with specific fields, which helps understand behavior. However, it lacks details on rate limits, authentication needs, data freshness (e.g., how 'recent' is defined), or pagination. It adds some value but leaves gaps in behavioral context for a read operation.

    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 (purpose, returns, args, returns details, examples) and front-loaded key information. It avoids unnecessary fluff, but the example could be more concise. Overall, it's efficient with minimal waste, earning a high score.

    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 (single parameter, list output), no annotations, and an output schema exists (implied by 'Returns' details), the description is fairly complete. It covers purpose, parameter meaning, and return structure, though it could benefit from more behavioral context like data recency or error handling. The output schema reduces the need for return value explanation.

    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 input schema has 0% description coverage, but the description compensates by explaining 'instrument_id: Avanza instrument ID from search results', adding crucial context about the parameter's source and format. Since there's only one parameter, this effectively covers it, though more detail on ID format could improve it. Baseline would be lower without this compensation.

    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 recent trades for an instrument' with specific details about what it returns (price, volume, timestamp, metadata). It distinguishes from siblings like 'get_broker_trade_summary' or 'get_stock_quote' by focusing on individual trade data rather than summaries or quotes. However, it doesn't explicitly contrast with all siblings, keeping it at 4 instead of 5.

    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 ('Useful for understanding recent trading activity') and suggests when to use it, but lacks explicit guidance on when not to use it or alternatives. For example, it doesn't clarify if this is for real-time vs. historical data or how it differs from 'get_orderbook'. This provides basic implied guidance but misses explicit comparisons.

    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. It clearly describes what data is returned (historical dividend information) and the read-only nature is implied by 'Get' and 'Returns'. However, it doesn't disclose important behavioral traits like whether there are rate limits, authentication requirements, data freshness, or error conditions for invalid instrument IDs.

    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 (description, returns, examples) and front-loads the core purpose. While comprehensive, some sentences like 'Useful for income investors and dividend analysis' could be considered slightly redundant given the tool's obvious purpose, but overall it's efficiently organized.

    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 (single parameter, historical data retrieval), no annotations, and the presence of an output schema (implied by the Returns section), the description provides good coverage. It explains the parameter source, shows usage examples, and documents the return structure. The main gap is lack of behavioral constraints disclosure.

    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 provides excellent parameter semantics despite 0% schema description coverage. It clearly explains that 'instrument_id' is an 'Avanza instrument ID from search results' and shows a concrete example ('5479'). This fully compensates for the lack of schema descriptions and gives the agent crucial context about where to obtain valid parameter values.

    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 historical dividend data for a stock' with specific details about what data is returned (dividend history by year including amounts, dates, and yields). It distinguishes from siblings like get_stock_info or get_stock_analysis by focusing specifically on dividends, but doesn't explicitly contrast with all sibling tools.

    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 implied usage context: 'Useful for income investors and dividend analysis' and shows an example with a specific instrument ID. However, it doesn't explicitly state when to use this tool versus alternatives like get_stock_info (which might include dividend data) or get_company_financials, nor does it mention prerequisites like needing to first search for instrument IDs.

    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 describes the return format in detail ('Chart data with: id, name, dataSerie, fromDate, toDate'), which adds value beyond the input schema. However, it doesn't disclose behavioral traits like rate limits, authentication needs, error handling, or whether it's a read-only operation (though 'get' implies read-only). The description is helpful but incomplete for behavioral transparency.

    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 (description, args, returns, examples) and front-loaded key information. It's appropriately sized for a tool with 2 parameters and detailed returns. However, some redundancy exists (e.g., repeating 'Returns' in both the description and a separate section), and the examples could be more concise, slightly reducing efficiency.

    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 complexity (2 parameters, enum options, detailed output), the description is mostly complete. It explains parameters thoroughly, describes the return structure, and includes examples. Since an output schema exists (implied by 'Has output schema: true'), the description doesn't need to explain return values in depth, but it does so anyway. Minor gaps include lack of error handling or rate limit info, but overall it's sufficient for effective use.

    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 must compensate fully. It provides detailed semantics for both parameters: 'instrument_id: Avanza fund ID from search results' and 'time_period: Time period for chart data' with a comprehensive list of enum options and explanations. This adds significant meaning beyond what the bare schema provides, fully documenting parameter usage and context.

    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 fund chart data with historical performance' and 'Returns time series data showing fund performance over the selected period.' It specifies the resource (fund chart data) and verb (get/retrieve). However, it doesn't explicitly differentiate from sibling tools like 'get_stock_chart' or 'get_fund_chart_periods', which would require a 5.

    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 implied usage context: 'Perfect for visualizing fund NAV history and performance trends.' It suggests when to use the tool (for visualization of fund performance) but doesn't explicitly state when NOT to use it or mention alternatives like 'get_stock_chart' for stocks versus funds. No explicit guidance on prerequisites or comparisons with siblings is 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 carries the full burden of behavioral disclosure. It describes what the tool returns (portfolio data with specific fields) and implies it's a read operation ('Get'), but doesn't mention potential limitations like rate limits, authentication requirements, data freshness (beyond portfolioDate), or error conditions. The description adds basic context but lacks comprehensive behavioral traits.

    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: purpose statement, return value details, parameter explanation, and example. It's appropriately sized at 7 sentences. Minor improvements could include bolding key terms or reducing redundancy (e.g., 'portfolio allocation data' appears twice). Overall, it's efficient and front-loaded with the core purpose.

    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 1 parameter with 0% schema coverage but good description compensation, no annotations, and an output schema exists (implied by 'Returns' section), the description is reasonably complete. It explains the parameter meaning, return structure, and includes an example. However, it could better address behavioral aspects like data sources or limitations to fully compensate for the lack of annotations.

    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 input schema has 0% description coverage (no parameter descriptions in schema), but the description compensates fully. It explains the 'instrument_id' parameter as 'Avanza fund ID from search results' and provides a concrete example with '878733'. This adds crucial meaning beyond the bare schema, telling the agent exactly what format and source this parameter requires.

    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 fund portfolio holdings and allocation breakdown' with specific details about what it returns (geographic allocation, sector allocation, top holdings). It distinguishes from siblings like get_fund_info or get_fund_description by focusing specifically on portfolio composition rather than general information or descriptions. However, it doesn't explicitly contrast with all similar siblings.

    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 some usage context: 'Useful for understanding what the fund invests in' and includes an example with a specific fund ID. However, it doesn't explicitly state when to use this tool versus alternatives like get_fund_info or get_fund_description, nor does it mention prerequisites or exclusions. The guidance is implied rather than explicit.

    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 clearly describes what the tool returns (aggregated broker trading data) and the structure of the output, which is helpful. However, it doesn't mention important behavioral aspects like whether this requires authentication, rate limits, data freshness, or error conditions, leaving 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.

    Conciseness4/5

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

    The description is well-structured with clear sections (description, Args, Returns, Examples) and front-loads the core purpose. While efficient, the 'Args' section could be slightly more concise by integrating the parameter explanation into the main flow rather than as a separate labeled section, but overall it's appropriately sized with minimal waste.

    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 (true) and no annotations, the description does a good job explaining the return structure in detail. However, for a financial data tool with institutional implications, it could better address data sources, update frequency, or limitations. The example is helpful but doesn't cover edge cases or error scenarios, leaving some contextual gaps.

    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 schema description coverage is 0%, so the description must fully compensate. It provides excellent parameter semantics by explaining that 'instrument_id' is an 'Avanza instrument ID from search results' and includes a concrete example with '5269'. This adds crucial meaning beyond the bare schema, fully documenting the single required parameter's purpose and format.

    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 ('Get broker trade summary') and resource ('showing buy/sell activity'), distinguishing it from siblings like get_recent_trades or get_stock_quote by focusing on aggregated broker-level data rather than individual trades or price quotes. The opening sentence provides a complete verb+resource statement with precise 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 provides clear context about when to use this tool ('Useful for understanding institutional trading activity'), which implicitly differentiates it from sibling tools that provide different types of financial data. However, it doesn't explicitly state when NOT to use it or name specific alternatives among the siblings, which prevents a perfect score.

    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 describes the return format (list of periods with fields) and hints at read-only behavior ('Get'), but lacks details on error handling, rate limits, authentication needs, or data freshness. It adds some value but leaves 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 appropriately sized and front-loaded, with the core purpose stated first, followed by returns details, usage context, and a clear example. Every sentence adds value without redundancy, and the structure is logical and efficient.

    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 low complexity (1 parameter, no annotations, but with an output schema), the description is mostly complete. It explains the purpose, parameter semantics, and return structure, though it could benefit from more behavioral details like error cases or data limitations. The output schema likely covers return values, reducing the need for extensive output explanation.

    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 meaning beyond the input schema, which has 0% description coverage. It explains that 'instrument_id' is an 'Avanza fund ID from search results', clarifying its source and purpose. Since there is only one parameter, the baseline is 4, and the description compensates 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.

    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 ('Get available fund performance periods with returns') and resource ('fund performance periods'), distinguishing it from siblings like get_fund_info or get_fund_chart by focusing on period-based performance data rather than general information or chart visuals.

    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 ('Useful for quick performance overview') and implies usage for performance analysis, but does not explicitly state when to use this tool versus alternatives like get_fund_chart or get_fund_info, nor does it specify exclusions or prerequisites beyond needing an instrument_id.

    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. It discloses key behavioral traits: real-time nature, data structure (buy/sell sides with prices/volumes), and timestamping. However, it doesn't mention rate limits, authentication requirements, data freshness guarantees, or potential errors.

    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 efficiently organized: purpose statement first, followed by utility context, parameter documentation, return value details, and a concrete example. Every sentence adds value with no redundant information.

    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 (single parameter, real-time market data), no annotations, and the presence of an output schema (which handles return value documentation), the description is quite complete. It covers purpose, usage context, parameter meaning, and includes an example. The main gap is lack of behavioral constraints like rate limits.

    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 context beyond the schema. While the schema only shows 'instrument_id' as a required string, the description specifies it's an 'Avanza instrument ID' and provides an example value ('5269'). With 0% schema description coverage, this significantly compensates 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 specific action ('Get real-time order book depth') and resource ('for an instrument'), distinguishing it from siblings like get_stock_quote (single price) or get_recent_trades (historical trades). It explicitly mentions what the tool provides: buy/sell orders with prices and volumes at each level.

    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 ('Useful for understanding market depth, liquidity, and bid-ask spread'), which differentiates it from other market data tools. However, it doesn't explicitly state when NOT to use it or name specific alternatives among the siblings.

    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 adequately describes what the tool returns (comprehensive ESG metrics) but doesn't mention potential limitations like rate limits, authentication requirements, error conditions, or whether the data is real-time versus cached. It provides functional context but lacks operational transparency.

    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 (purpose, usage guidance, args, returns, examples) and front-loaded information. While slightly verbose in listing all return metrics, each sentence adds value, and the example is practical. Minor trimming of the returns list could improve conciseness.

    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 (single parameter, no annotations, but with output schema), the description is reasonably complete. It covers purpose, prerequisites, parameter semantics, and return values in detail. The presence of an output schema reduces the need to fully document returns, but the description still provides helpful context about the metrics structure.

    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 that 'instrument_id' is an 'Avanza fund ID from search results' and provides an example value ('41567'), clarifying the parameter's purpose and format. For a single parameter with no schema documentation, this compensation is substantial.

    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 ('Get fund sustainability and ESG metrics') and resources ('fund'), distinguishing it from sibling tools like get_fund_info or get_fund_holdings by focusing exclusively on sustainability metrics rather than general information or holdings data.

    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 this tool versus alternatives: it instructs to 'Use search_instruments() with instrument_type="fund" to find fund IDs' before invoking this tool, clearly establishing a prerequisite workflow and distinguishing it from direct search or other fund-related tools.

    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 effectively describes what the tool returns (market status, timing information) and the specific data structure. It doesn't mention rate limits, authentication needs, or error conditions, but provides clear behavioral context about the information returned.

    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 a clear purpose statement, followed by bullet-point details of what it provides, parameter explanation, return value structure, and a practical example. Every sentence earns its place, and information is front-loaded with the core functionality stated first.

    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 moderate complexity, no annotations, and the presence of an output schema (implied by the detailed return structure in the description), the description is complete enough. It explains what the tool does, what parameter it needs, what it returns, and provides an example - covering all essential aspects for a read-only informational tool.

    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 schema has 0% description coverage, but the description compensates well by explaining that 'instrument_id' is an 'Avanza instrument ID from search results'. This adds crucial semantic context beyond the schema's basic string type. The description doesn't provide format examples or validation rules, but gives meaningful usage guidance.

    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 ('Get marketplace status and trading hours') and identifies the resource ('for an instrument'). It distinguishes this from sibling tools like get_stock_info or get_stock_quote by focusing specifically on market operational status rather than pricing, analysis, or company 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 by mentioning 'instrument ID from search results' and provides an example for checking market openness. However, it doesn't explicitly state when to use this tool versus alternatives like get_stock_info (which might include market status) or when not to use it. No explicit alternatives or exclusions 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?

    No annotations are provided, so the description carries the full burden. It describes what data is returned (financial ratios grouped by time periods) but doesn't disclose behavioral traits like rate limits, authentication needs, error conditions, or whether this is a read-only operation. The description adds value by outlining the structure of returned data but lacks 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?

    The description is appropriately sized and front-loaded with the core purpose. Every sentence adds value: the first states the purpose, the second details the data structure, the third provides usage guidance, and the rest document parameters and examples. Minor redundancy exists in listing return data both in bullet points and the 'Returns' section.

    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 complexity (financial analysis with multiple data groupings), no annotations, and an output schema exists, the description is reasonably complete. It explains the purpose, usage prerequisites, parameter meaning, and return structure. However, it lacks behavioral context (rate limits, errors) that would be helpful despite the output schema.

    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%, but the description compensates well. It explains that instrument_id is 'Avanza instrument ID from search results' and provides an example ('Volvo B (ID from search): >>> get_stock_analysis(instrument_id="5479")'). This adds crucial semantic meaning beyond the bare schema, though it doesn't detail format constraints or validation rules.

    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: 'Get detailed stock analysis with key financial ratios.' It specifies the verb ('Get') and resource ('stock analysis'), and distinguishes it from siblings like get_stock_info or get_company_financials by focusing on financial ratios rather than general information or raw financials.

    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 explicitly states when to use this tool: 'Use search_instruments() first to find the instrument_id for a stock.' It names the specific alternative tool (search_instruments) that must be used beforehand, providing clear prerequisites and distinguishing it from other stock-related tools.

    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 implies a read-only operation ('Get detailed information') but doesn't explicitly state safety aspects like whether it requires authentication, has rate limits, or potential errors. The description adds value by outlining return data categories but lacks behavioral disclosures about permissions or constraints.

    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 a clear purpose statement, usage guideline, parameter explanation, return details, and example. Slightly verbose in listing return categories, but each section adds value. The front-loaded purpose and guideline sentences are effective.

    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 1 parameter with 0% schema coverage and an output schema exists, the description does well by explaining the parameter's semantics and outlining return data categories. It could improve by mentioning authentication needs or error cases, but it's largely complete for a read-only tool with sibling 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?

    Schema description coverage is 0%, so the description must compensate. It explains that 'instrument_id' is an 'Avanza instrument ID from search results,' clarifying its source and format beyond the schema's string type. However, it doesn't detail validation rules or example formats beyond the single example, leaving some ambiguity.

    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 ('Get detailed information') and resource ('about a specific stock'), distinguishing it from siblings like get_stock_quote (price only) or get_company_financials (financial statements). It lists comprehensive data categories (price, volume, metrics, description) that establish its unique scope.

    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?

    Explicitly instructs to 'Use search_instruments() first to find the instrument_id for a stock,' providing clear prerequisite guidance. It distinguishes from search_instruments (which finds IDs) and implies when to use this tool versus alternatives like get_stock_quote (less detailed) by emphasizing 'comprehensive' 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?

    With no annotations provided, the description carries the full burden of behavioral disclosure and does so well. It clearly describes what the tool returns (OHLC data, volume, metadata, time range, previous closing price), the data format (array of data points with specific fields), and includes practical examples. However, it doesn't mention potential limitations like rate limits, data freshness, or error conditions.

    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 (purpose, parameters, returns, examples) and front-loads the core functionality. While comprehensive, some redundancy exists (e.g., 'Get historical price chart data' and 'Retrieves time series price data' convey similar information). Every sentence earns its place, but minor trimming could improve conciseness.

    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 moderate complexity (2 parameters, historical data retrieval), no annotations, but with an output schema, the description provides excellent completeness. It explains what the tool does, documents all parameters thoroughly, describes the return format in detail, and includes practical examples. The output schema existence means the description doesn't need to exhaustively document return values, making this appropriately comprehensive.

    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 value beyond the input schema, which has 0% description coverage. It thoroughly explains both parameters: instrument_id is described as 'Avanza instrument ID', and time_period gets detailed documentation with all 8 possible values and their meanings. This completely compensates for the schema's lack of descriptions and provides essential context for proper tool invocation.

    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 ('Get historical price chart data', 'Retrieves time series price data') and resources ('for a stock', 'OHLC values and volume'). It distinguishes itself from siblings like get_stock_quote (real-time quotes) and get_stock_info (general information) by focusing specifically on historical chart data for technical analysis.

    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 ('Perfect for charting and technical analysis'), but doesn't explicitly state when not to use it or mention specific alternatives among the sibling tools. It implies usage through examples but lacks explicit guidance about choosing between this and other stock-related tools like get_stock_quote or get_stock_analysis.

    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 and does well by detailing what information is returned (e.g., NAV, performance, risk metrics, fees, characteristics) and implying a read-only operation without destructive effects. However, it lacks explicit mention of rate limits, authentication needs, or error handling, leaving some behavioral aspects uncovered.

    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 front-loaded, starting with the core purpose, followed by details, usage guidelines, args, returns, and an example. Every sentence adds value without redundancy, making it efficient and easy to parse for an AI agent.

    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 (1 parameter, no annotations, but with an output schema), the description is largely complete: it covers purpose, usage, parameters, and return details. However, it could improve by explicitly stating it's a read-only operation or addressing potential errors, though the output schema mitigates some gaps.

    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 input schema has 0% description coverage, but the description compensates by explaining that 'instrument_id' is an 'Avanza fund ID from search results,' adding crucial context beyond the schema's type definition. It also includes an example usage, though it doesn't detail format constraints or validation rules.

    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 ('Get detailed information') and resource ('about a mutual fund'), distinguishing it from siblings like get_fund_chart, get_fund_holdings, or get_fund_description by emphasizing comprehensive data including NAV, performance, risk metrics, fees, and characteristics.

    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?

    It explicitly provides when-to-use guidance by directing users to 'Use search_instruments() with instrument_type="fund" to find fund IDs,' and distinguishes from alternatives by specifying this tool is for detailed fund info, not charts, holdings, or descriptions, making it clear when to choose this over sibling tools.

    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 full burden and does well by disclosing key behaviors: it searches across multiple instrument types, returns detailed structured results, supports filtering by type, has default values, and includes examples. It doesn't mention rate limits, authentication needs, or error handling, but covers most operational aspects adequately.

    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, explains scope and returns, then has organized sections for Args, Returns, and Examples. Every sentence adds value with no redundancy, and information is front-loaded with details following logically.

    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 moderate complexity (3 parameters, filtering capability), no annotations, and the presence of an output schema, the description is remarkably complete. It covers purpose, parameters with semantics, return structure with examples, and usage context. The output schema means the description doesn't need to exhaustively document return values, and it provides enough for effective tool selection and invocation.

    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% schema description coverage. It explains what 'query' accepts (company name, ticker symbol, or ISIN), details all 'instrument_type' options with descriptions, specifies 'limit' range and default, and provides concrete examples showing parameter usage in context.

    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 searches for financial instruments on Avanza across multiple types (stocks, funds, ETFs, certificates, warrants) and returns detailed results including price info, sectors, and metadata. It specifies the verb 'search' and resource 'financial instruments', distinguishing it from sibling tools that focus on specific data retrieval like get_stock_info or get_fund_info.

    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: to search across multiple instrument types with filtering options. It doesn't explicitly mention when not to use it or name alternatives among siblings, but the context implies it's for broad searches rather than retrieving specific instrument data by ID (like get_instrument_by_order_book_id).

    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 full burden and does well. It discloses key behavioral traits: real-time nature ('real-time stock quote', 'immediate price information'), data freshness ('real-time status'), and performance characteristics ('lighter weight'). However, it doesn't mention rate limits, authentication requirements, or error conditions.

    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 front-loaded: purpose first, then differentiation, followed by parameter semantics, return values, and an example. Every sentence adds value with zero waste. The bulleted return format is appropriately detailed without being verbose.

    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 moderate complexity (single parameter, real-time data), no annotations, but with an output schema (implied by the detailed return description), the description is complete enough. It covers purpose, differentiation, parameter meaning, return structure, and provides an example - addressing all key aspects an agent needs.

    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 schema has 0% description coverage, so the description must compensate. It provides meaningful context for the single parameter: 'instrument_id: Avanza instrument ID from search results' clarifies the parameter's purpose and source. The example further illustrates usage. However, it doesn't specify format constraints or validation rules.

    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 ('Get real-time stock quote') and resources ('current pricing and trading data'). It explicitly distinguishes from sibling tool 'get_stock_info' by stating it's 'lighter weight', providing clear differentiation.

    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 this tool versus alternatives: 'Lighter weight than get_stock_info' tells the agent this is the preferred option for basic quote data. It also specifies the required parameter context ('Avanza instrument ID from search results'), giving clear prerequisites.

    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

avanza-mcp MCP server

Copy to your README.md:

Score Badge

avanza-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/AnteWall/avanza-mcp'

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