Skip to main content
Glama
matteoantoci

Marketstack MCP Server

by matteoantoci

Server Quality Checklist

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

  • Disambiguation5/5

    Every tool has a clearly distinct purpose targeting specific financial data types or listing operations, with no overlap in functionality. For example, get_end_of_day_data and get_intraday_data are clearly differentiated by time granularity, while list operations are separated by resource type.

    Naming Consistency5/5

    All tools follow a consistent verb_noun pattern with 'get_' for retrieval operations and 'list_' for enumeration operations. The naming is perfectly predictable throughout the entire set, making it easy for agents to understand tool purposes from their names alone.

    Tool Count4/5

    With 18 tools, the count is slightly high but reasonable for a comprehensive financial data API server. The tools cover multiple asset classes (stocks, bonds, ETFs, indices) and both retrieval and listing operations, justifying the number while maintaining focus on market data access.

    Completeness4/5

    The tool set provides excellent coverage for financial data retrieval across multiple asset types, with both detailed get operations and comprehensive list operations. Minor gaps might include historical data filtering parameters or batch operations, but core market data access is well-covered for the domain.

  • Average 2.9/5 across 18 of 18 tools scored.

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

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • 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?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it 'looks up' information, implying a read-only operation, but doesn't specify whether it requires authentication, has rate limits, returns real-time or historical data, or what format the output takes. This leaves significant gaps for a tool with no annotation coverage.

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

    Conciseness4/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. However, it could be more front-loaded with specific details to improve clarity, but it avoids redundancy and waste.

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

    Completeness2/5

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

    Given the complexity of financial data tools and the lack of annotations and output schema, the description is insufficient. It doesn't explain what type of information is returned (e.g., basic vs. detailed data), how it differs from siblings, or any behavioral constraints, making it incomplete for effective agent use.

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

    Parameters3/5

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

    The schema description coverage is 100%, with the single parameter 'ticker' documented as 'To get results based on a ticker.' The description adds no additional meaning beyond this, such as examples of valid tickers or formatting requirements. With high schema coverage, the baseline score of 3 is appropriate.

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

    Purpose3/5

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

    The description 'Look up information about tickers' states a clear verb ('look up') and resource ('tickers'), but it's vague about what specific information is retrieved. It distinguishes from siblings like 'get_ticker_details' only by being more generic, not by clearly articulating a different scope or type of data.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. With siblings like 'get_ticker_details', 'get_end_of_day_data', and 'get_intraday_data', the description offers no indication of what makes this tool distinct or when it should be preferred over other ticker-related tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'look up' which implies a read operation, but doesn't specify any behavioral traits such as rate limits, authentication requirements, data freshness, or error handling. For a tool with 6 parameters and no annotations, this is a significant gap in transparency.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized for a data lookup tool and front-loads the essential information. Every word earns its place in this concise formulation.

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

    Completeness2/5

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

    Given the complexity (6 parameters, no output schema, no annotations), the description is incomplete. It doesn't address what information is returned about dividends, how results are structured, or any limitations beyond what's implied by parameters. For a financial data tool with multiple filtering options, more context about the nature of dividend data returned would be helpful.

    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 schema already documents all parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema. It mentions 'symbols' in a general way but doesn't provide context beyond the schema's detailed descriptions. Baseline 3 is appropriate when the schema does the heavy lifting.

    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 information about the stock dividend for different symbols.' It specifies the verb ('look up') and resource ('stock dividend'), making the action clear. However, it doesn't explicitly differentiate from sibling tools like 'get_splits_data' or 'get_ticker_details', which might also involve stock data retrieval.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With many sibling tools for financial data (e.g., 'get_intraday_data', 'get_splits_data'), there's no indication of when dividend data is appropriate or what distinguishes it from other stock information tools. This leaves the agent to guess based on tool names alone.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure but provides minimal information. It doesn't mention whether this is a read-only operation, what permissions might be required, rate limits, or what format the data returns. The description only states what data is obtained without 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 a single, efficient sentence that immediately communicates the core purpose. There's no wasted language or unnecessary elaboration, making it perfectly concise and front-loaded.

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

    Completeness2/5

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

    For a tool with 7 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what 'end-of-day data' includes (closing prices, volume, etc.), doesn't mention the return format, and provides no behavioral context despite the tool's 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?

    With 100% schema description coverage, the input schema comprehensively documents all 7 parameters. The description adds no additional parameter information beyond what's already in the schema, so it meets the baseline expectation but doesn't provide extra value.

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

    Purpose4/5

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

    The description clearly states the verb ('obtain') and resource ('end-of-day data for one or multiple stock tickers'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'get_intraday_data' or 'get_ticker_details' beyond the 'end-of-day' qualifier.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools for financial data (get_intraday_data, get_ticker_details, get_dividends_data, etc.), there's no indication of what distinguishes end-of-day data from other data types or when this specific tool is appropriate.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'complete set' but doesn't specify what data is included, format, pagination, rate limits, or authentication needs. For a read operation with no annotation coverage, this leaves significant gaps in understanding the tool's behavior.

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

    Conciseness5/5

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

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

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

    Completeness2/5

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

    Given the complexity of financial data retrieval, no annotations, and no output schema, the description is insufficient. It doesn't explain what 'complete set of exchange-traded funds data' includes, return format, or error handling, leaving the agent with incomplete context for proper use.

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

    Parameters3/5

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

    The schema description coverage is 100%, so the input schema already documents all three parameters thoroughly. The description adds no additional parameter semantics beyond implying the 'ticker' is a unique identifier, which aligns with the schema. Baseline 3 is appropriate when the schema does the heavy lifting.

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

    Purpose4/5

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

    The description clearly states the verb ('Get') and resource ('complete set of exchange-traded funds data'), specifying it's based on a unique identifier code. It distinguishes from siblings like 'get_ticker_details' or 'get_ticker_info' by focusing on ETF holdings specifically, though it doesn't explicitly differentiate them.

    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 like 'get_ticker_details' or 'list_etf_tickers', nor does it mention prerequisites or exclusions. It only states the basic purpose without contextual usage information.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. While 'obtain information' implies a read-only operation, it doesn't specify authentication requirements, rate limits, error conditions, or what format/scope the information includes (e.g., trading hours, location, regulations). For a tool with no annotation coverage, this is insufficient.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple lookup tool and front-loads the essential information.

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

    Completeness2/5

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

    Given no annotations, no output schema, and multiple sibling tools that could overlap in functionality, the description is incomplete. It doesn't explain what information is returned (e.g., exchange metadata vs. trading data), how it differs from other tools, or any behavioral constraints, leaving significant gaps for agent understanding.

    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%, with the parameter 'mic' clearly documented in the schema as 'Obtain information about a specific stock exchange by attaching its MIC identification to your API request URL, e.g. `XNAS`.' The description adds no additional parameter semantics beyond what the schema already provides, meeting 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 verb 'obtain' and resource 'information about a specific stock exchange', making the purpose understandable. However, it doesn't distinguish this tool from siblings like 'get_ticker_details' or 'get_index_info' that might also provide exchange-related information, preventing a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'list_exchanges' (which might list exchanges) and 'get_ticker_details' (which might include exchange info), there's no indication of when this specific exchange-details tool is appropriate versus other options.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states it 'gets details' but doesn't specify what details are returned (e.g., current value, components, performance), whether it's a read-only operation, or any limitations like rate limits or authentication needs. This leaves significant gaps for a tool with no annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and appropriately sized for a simple tool, with every part contributing essential information.

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

    Completeness2/5

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

    Given the tool's complexity (simple read operation) but lack of annotations and output schema, the description is incomplete. It doesn't explain what details are returned, potential errors, or how it differs from similar tools. For a tool with no structured output information, more context is needed to guide effective use.

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

    Parameters3/5

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

    The schema description coverage is 100%, with the parameter 'index' fully documented in the schema as 'Specify your benchmark/index id for your request, e.g. australia_all_ordinaries.' The description adds no additional meaning beyond this, such as format constraints or examples not in the schema, 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 verb 'Get' and resource 'details for a specific stock market index', making the purpose understandable. It distinguishes from siblings like 'list_indices' (which lists indices) by focusing on details for a specific index, though it doesn't explicitly name alternatives. This is clear but lacks explicit sibling differentiation.

    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 (e.g., needing an index ID from 'list_indices'), exclusions, or comparisons to siblings like 'get_ticker_details' for individual stocks. Usage is implied by the name but not explicitly stated.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'look up' implies a read-only operation, the description doesn't address critical behaviors like rate limits, authentication requirements, error handling, or response format. For a financial data tool with 6 parameters and no output schema, this leaves significant gaps in understanding how the tool behaves.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a lookup tool and front-loads the essential information. Every word earns its place, making it easy for an agent to parse quickly.

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

    Completeness2/5

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

    Given the tool's complexity (6 parameters, no annotations, no output schema), the description is insufficient. It doesn't explain what 'stock splits factor' means, what data format to expect, or how results are structured. For a financial data tool that likely returns time-series or tabular data, more context is needed to help the agent understand what information will be returned and how to interpret it.

    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 mentions 'different symbols' which aligns with the 'symbols' parameter, but adds no additional semantic context beyond what's already in the schema descriptions. With 100% schema description coverage, the baseline is 3—the schema does the heavy lifting by documenting all parameters thoroughly, so the description doesn't need to compensate but also doesn't add meaningful value.

    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 as 'Look up information about the stock splits factor for different symbols,' which specifies the verb ('look up'), resource ('stock splits factor'), and target ('different symbols'). It distinguishes from siblings like 'get_dividends_data' or 'get_ticker_details' by focusing specifically on stock splits data rather than other financial metrics.

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

    Usage 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, typical use cases, or comparisons with sibling tools like 'get_ticker_info' or 'get_end_of_day_data' that might also provide stock-related data. The agent must infer usage from the tool name and parameters alone.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. The description only states it 'obtains information' without specifying what kind of information, whether it's real-time or historical, what permissions might be needed, rate limits, or what the response format looks like. For a financial data tool with no annotation coverage, this is insufficient 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 extremely concise - a single sentence that gets straight to the point with zero wasted words. It's appropriately sized for a simple lookup tool and front-loads the essential information.

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

    Completeness2/5

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

    Given the complexity of financial data tools and the lack of both annotations and output schema, the description is incomplete. It doesn't explain what information is returned, whether it's comprehensive ticker details versus specific data types, or how it differs from similar sibling tools. The agent would need to guess about the tool's behavior and output.

    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 schema already fully documents both parameters (symbol and exchange). The description doesn't add any parameter semantics beyond what's in the schema - it mentions 'specific ticker symbol' which aligns with the schema but provides no additional context about parameter usage, constraints, or relationships.

    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 ('Obtain information') and target resource ('specific ticker symbol'), which is a specific verb+resource combination. However, it doesn't distinguish this tool from sibling tools like 'get_ticker_info' or 'get_end_of_day_data' - the description could be more specific about what type of ticker information this provides versus those alternatives.

    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 about when to use this tool versus alternatives. With multiple sibling tools that appear to provide different types of financial data (get_ticker_info, get_end_of_day_data, get_intraday_data, etc.), there's no indication of what makes this tool distinct or when it should be chosen over those 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?

    With no annotations provided, the description carries full burden but only states it 'looks up' currencies without disclosing behavioral traits. It doesn't mention that this is a read-only API call, potential rate limits, authentication needs, response format, or whether it returns paginated results. The description is minimal and lacks critical 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.

    Conciseness5/5

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

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

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

    Completeness2/5

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

    Given no annotations, no output schema, and a simple read operation with two parameters, the description is incomplete. It doesn't explain what the return values look like (e.g., list of currency codes with names), how results are structured, or any error conditions. For a tool that fetches data, more context is needed to use it effectively.

    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 schema fully documents the 'limit' and 'offset' parameters with defaults and constraints. The description adds no parameter information beyond what the schema provides, meeting the baseline score of 3 for high schema coverage without additional value.

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

    Purpose4/5

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

    The description clearly states the verb 'look up' and resource 'all currencies supported by the marketstack API', making the purpose specific and understandable. It doesn't explicitly differentiate from sibling tools like 'list_exchanges' or 'list_tickers', but since those list different resources, the distinction is implicit rather than explicit.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context for currency data, or how it relates to sibling tools like 'get_ticker_details' that might involve currencies. Usage is implied by the name and purpose but not explicitly stated.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'List all supported ETF tickers' but doesn't mention pagination (implied by the schema's limit/offset parameters), rate limits, authentication needs, or what the output format looks like. For a list operation with 3 parameters, this leaves significant behavioral aspects unexplained.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with zero wasted words. It's front-loaded with the core purpose, making it easy to scan and understand quickly. Every word earns its place by directly stating what the tool does.

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

    Completeness2/5

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

    Given no annotations and no output schema, the description is incomplete for a tool with 3 parameters. It doesn't explain the pagination behavior (implied by limit/offset), what 'supported' means, or what the return data looks like. For a list operation that likely returns structured data, more context is needed to use it effectively.

    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 schema fully documents the parameters (limit, list, offset). The description adds no additional meaning beyond what's in the schema—it doesn't explain why 'list' is required or how parameters interact. Baseline 3 is appropriate when the schema does all the parameter documentation work.

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

    Purpose4/5

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

    The description clearly states the verb ('List') and resource ('all supported ETF tickers'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_tickers' or 'list_exchange_tickers' that might also list tickers, so it's not fully specific about what makes this ETF ticker listing unique.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With siblings like 'list_tickers' and 'get_ticker_details', it's unclear if this is the preferred way to get ETF tickers or if there are specific contexts where other tools should be used instead. No exclusions or prerequisites are mentioned.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. While 'List' implies a read operation, it doesn't mention pagination behavior (though the schema covers parameters), rate limits, authentication requirements, or what format the results will be in. The description is minimal and lacks important 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.

    Conciseness5/5

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

    The description is a single, efficient sentence that states exactly what the tool does without any wasted words. It's appropriately sized for a simple listing tool and gets straight to the point.

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

    Completeness2/5

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

    For a tool with no annotations and no output schema, the description is insufficient. It doesn't explain what information will be returned about each index, whether results are sorted, if there are any filtering options beyond pagination, or how this tool relates to other index-related tools in the server.

    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 schema fully documents both parameters (limit and offset) with their purposes, defaults, and constraints. The description adds no parameter information beyond what's in the schema, which is acceptable given the comprehensive 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 verb ('List') and resource ('all supported stock market indices'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_exchanges' or 'list_tickers' beyond specifying 'indices' as the resource type.

    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 like 'get_index_info' (which presumably provides detailed information about a specific index) or other listing tools. There's no mention of prerequisites, typical use cases, or comparison with sibling tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'full list' but doesn't clarify if this is a read-only operation, whether it requires authentication, or if there are rate limits. The description lacks details on output format, pagination behavior (implied by parameters but not described), or potential side effects, leaving significant gaps in behavioral understanding.

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

    Conciseness5/5

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

    The description is a single, efficient sentence: 'Get the full list of supported tickers.' It is front-loaded with the core purpose, has zero wasted words, and is appropriately sized for a simple list tool. Every part of the sentence earns its place by clearly stating the tool's function.

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

    Completeness2/5

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

    Given the tool's complexity (4 parameters, no output schema, no annotations), the description is insufficiently complete. It doesn't explain the return values, pagination behavior, or any constraints like authentication needs. For a tool with multiple parameters and no structured output information, the description should provide more context to guide effective use.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents all four parameters (exchange, limit, offset, search). The description adds no additional parameter semantics beyond what's in the schema, such as examples or usage context. This meets the baseline score of 3, as the schema handles the heavy lifting without description enhancement.

    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 the full list of supported tickers.' It specifies the verb ('Get') and resource ('full list of supported tickers'), making the intent unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_etf_tickers' or 'list_exchange_tickers', which reduces clarity in distinguishing between similar list operations.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'list_etf_tickers' or 'list_exchange_tickers', nor does it specify contexts or exclusions for usage. This lack of comparative information leaves the agent without clear direction on tool selection.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool 'looks up information,' implying a read-only operation, but doesn't mention pagination behavior, rate limits, authentication needs, or what specific information is returned (e.g., timezone names, offsets, regions). The description is too vague about the tool's actual behavior.

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

    Conciseness4/5

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

    The description is a single, clear sentence that efficiently communicates the core purpose. It's appropriately sized for a simple lookup tool with well-documented parameters, though it could be slightly more informative about the scope of 'information' returned.

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

    Completeness3/5

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

    Given the tool's low complexity (2 optional parameters, no output schema, no annotations), the description is minimally adequate but leaves gaps. It doesn't explain what 'information' includes or the tool's role in the broader financial API context, making it incomplete for optimal agent understanding.

    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%, with both parameters (limit and offset) well-documented in the schema itself. The description adds no additional parameter semantics beyond what's already in the schema, so it meets the baseline expectation without compensating for any gaps.

    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 ('look up information') and resource ('all supported timezones'), making the tool's purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools, which are all financial data tools (e.g., get_bond_info, list_currencies), so this appears to be a standalone timezone utility in a financial API context.

    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 or in what context it's appropriate. It doesn't mention prerequisites, dependencies, or typical use cases, leaving the agent to infer usage from the tool name alone.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'real-time' data, which hints at timeliness, but does not cover critical aspects like rate limits, authentication needs, error handling, or what the return format looks like (e.g., JSON structure, data fields). This is a significant gap for a data retrieval tool with zero annotation coverage.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core purpose without any wasted words. It is appropriately sized for a simple tool with one parameter, making it easy to parse quickly.

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

    Completeness3/5

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

    Given the tool's low complexity (one parameter, no output schema, no annotations), the description is minimally adequate. It states what data is fetched but lacks details on behavioral traits, output format, or usage context. With no output schema, it should ideally hint at return values, but the simplicity keeps it from being severely incomplete.

    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%, with the single parameter 'country' well-documented in the schema. The description adds no additional meaning beyond the schema, such as country code formats or data availability per country. Baseline score of 3 is appropriate since the schema handles parameter documentation adequately.

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

    Purpose4/5

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

    The description clearly states the verb 'Get' and the resource 'real-time government bond data for a specific country', making the purpose unambiguous. However, it does not explicitly differentiate from sibling tools like 'list_bonds_countries' or 'get_ticker_details', which might also involve bond-related data, so it falls short of a perfect score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives, such as 'list_bonds_countries' for listing countries or other data-fetching tools. It lacks explicit when/when-not instructions or named alternatives, leaving usage context implied at best.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It mentions obtaining data but doesn't cover important aspects like rate limits, authentication requirements, data freshness, error conditions, or what format the data returns. For a data retrieval tool with 9 parameters, this leaves significant behavioral gaps.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that immediately conveys the core functionality without any wasted words. It's appropriately sized for a tool with comprehensive schema documentation and gets straight to the point.

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

    Completeness3/5

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

    For a data retrieval tool with 9 parameters and 100% schema coverage but no output schema, the description is minimally adequate. It states what the tool does but lacks important context about return format, data structure, error handling, and usage boundaries that would help an agent use it effectively.

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

    Parameters3/5

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

    The schema description coverage is 100%, meaning all parameters are well-documented in the schema itself. The description doesn't add any parameter-specific information beyond what's already in the schema descriptions, so it meets the baseline expectation but doesn't provide additional value.

    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 ('obtain') and resource ('intraday data for one or multiple stock tickers'), making the purpose immediately understandable. It distinguishes from siblings like 'get_end_of_day_data' by specifying intraday data, but doesn't explicitly contrast with all siblings like 'get_ticker_details' or 'get_ticker_info'.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. With multiple sibling tools for financial data (e.g., get_end_of_day_data, get_ticker_details, get_dividends_data), there's no indication of when intraday data is appropriate versus other data types or when to choose between similar tools.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It states it 'List all supported countries' but doesn't disclose behavioral traits like pagination (implied by parameters but not described), rate limits, authentication needs, or what 'supported' means (e.g., active vs. historical). The description is minimal and 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.

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose with zero wasted words. It's appropriately sized for a simple listing tool and front-loads the core functionality without unnecessary elaboration.

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

    Completeness3/5

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

    Given the tool's low complexity (listing operation with well-documented parameters) and no output schema, the description is minimally adequate but lacks completeness. It doesn't explain the return format (e.g., list of strings/objects), error conditions, or how results are ordered. With no annotations, more behavioral context would improve 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?

    Schema description coverage is 100%, providing detailed documentation for both limit and offset parameters. The description adds no parameter-specific information beyond what's in the schema, so it meets the baseline of 3. It doesn't compensate for any gaps since there are none in the schema.

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

    Purpose4/5

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

    The description clearly states the verb 'List' and the resource 'supported countries for bond data', making the purpose immediately understandable. It distinguishes from most siblings that focus on specific data retrieval (e.g., get_bond_info) rather than listing options. However, it doesn't explicitly differentiate from other list_* tools like list_currencies or list_exchanges, which follow a similar pattern.

    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, use cases, or how it relates to other bond-related tools like get_bond_info. For example, it doesn't clarify if this should be called first to validate country codes before fetching bond data.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action 'obtain' but doesn't mention whether this is a read-only operation, if it requires authentication, rate limits, or what the return format looks like (e.g., paginated list). This leaves significant gaps in understanding how the tool behaves beyond its basic function.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without any redundant information. It's front-loaded and wastes no words, making it highly concise and well-structured for quick understanding.

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

    Completeness3/5

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

    Given the tool's moderate complexity (3 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on behavioral traits, usage context, and output format. Without annotations or an output schema, more completeness would be needed for optimal agent guidance, but it meets the minimum viable threshold.

    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% description coverage, providing detailed documentation for all three parameters (mic, limit, offset). The description adds no additional parameter semantics beyond what's in the schema, such as explaining the mic format further or clarifying pagination behavior. With high schema coverage, the baseline score of 3 is appropriate.

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

    Purpose4/5

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

    The description clearly states the verb 'obtain' and resource 'all available tickers for a specific exchange', making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'list_tickers' or 'list_etf_tickers', which might have overlapping functionality, so it doesn't reach the highest score.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives like 'list_tickers' or 'list_etf_tickers'. It mentions a specific exchange but doesn't clarify prerequisites, exclusions, or comparative contexts with sibling tools, leaving usage decisions unclear.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but offers minimal behavioral disclosure. It mentions the endpoint supports 2700+ exchanges, hinting at scale, but doesn't cover critical aspects like pagination behavior (implied by parameters but not described), rate limits, authentication needs, error conditions, or response format. For a read operation with zero annotation coverage, this is inadequate.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that front-loads the core purpose. It wastes no words and directly communicates the tool's function and scope, making it easy to parse quickly.

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

    Completeness2/5

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

    Given the lack of annotations and output schema, the description is incomplete for a tool with 3 parameters and pagination behavior. It doesn't explain what information is returned (e.g., exchange names, MICs, countries), how results are structured, or any operational constraints. For a list/search tool in a financial data context, this leaves significant gaps.

    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%, providing full documentation of limit, offset, and search parameters. The description adds no parameter-specific information beyond what's in the schema, so it meets the baseline of 3. However, it doesn't compensate for any gaps since there are none in the schema.

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

    Purpose4/5

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

    The description clearly states the action ('Look up information') and resource ('stock exchanges'), and specifies the scope ('any of the 2700+ supported by this endpoint'). It distinguishes from siblings like get_exchange_details by indicating this is a listing/search operation rather than detailed retrieval. However, it doesn't explicitly contrast with list_exchange_tickers, which might cause 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 Guidelines3/5

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

    The description implies usage for listing/searching exchanges, but provides no explicit guidance on when to use this versus alternatives like get_exchange_details (for detailed info) or list_exchange_tickers (for tickers on a specific exchange). The context is clear but lacks sibling differentiation and exclusion criteria.

    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

mcp-marketstack MCP server

Copy to your README.md:

Score Badge

mcp-marketstack 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/matteoantoci/mcp-marketstack'

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