Skip to main content
Glama
expremiental

yandex-metrika-mcp

by expremiental

Server Quality Checklist

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

  • Disambiguation5/5

    The two tools have clearly non-overlapping purposes: one discovers available counters, the other runs queries against a specific counter. An agent can easily choose the right tool.

    Naming Consistency4/5

    list_counters follows a verb_noun pattern while query is a bare verb, which is a minor inconsistency. However, both are concise and readable, and the query description clarifies its role.

    Tool Count3/5

    With only two tools, the server is minimal but not unreasonable for a read-only analytics API wrapper. It is serviceable yet feels slightly thin compared to more complete analytics integrations.

    Completeness4/5

    The pair covers the core workflow: list counters to obtain an ID, then query reporting data from that counter. Missing capabilities like retrieving counter metadata or metadata schemas are minor gaps for this read-only domain.

  • Average 4.5/5 across 2 of 2 tools scored.

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

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

  • This repository includes a README.md file.

  • 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

  • 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 explicitly states the return shape: 'Returns the raw Reporting API response (query meta, totals and data rows).' It also clarifies that Metrika field names are passed through directly, which sets expectations for raw passthrough behavior. It does not mention permissions, rate limits, or side effects, but for a query operation the return-value disclosure is substantive.

    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 grouped parameter guidance, then return behavior. Each section is minimal and useful, with practical examples but no filler. The organization makes it easy for an agent to scan and extract the needed details.

    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 an output schema exists and 8 parameters are involved, the description covers the critical semantics well and even documents return shape. The only gaps are counter_id and limit, which are relatively self-evident from names and schema types. The description is sufficient for an agent to construct a correct query in most cases, though a note on pagination or limit behavior would fully close the gap.

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

    Parameters4/5

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

    Schema description coverage is 0%, so the description must compensate, and it largely does. It explains metrics, dimensions, date1/date2, filters, and sort with concrete examples and formats. However, it does not explain counter_id or limit, leaving those to inference from names and types. Overall, the description provides strong semantic value for most parameters.

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

    Purpose5/5

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

    The description opens with a specific verb+resource: 'Run a Reporting API query against a Metrika counter (aggregated stats).' This clearly distinguishes it from the sibling list_counters, which is about enumerating counters rather than executing queries. The purpose is unambiguous and action-oriented.

    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 extensive how-to guidance: which metrics and dimensions to pass, date formats, filter syntax, and sort prefix. It makes the intended use case clear (aggregated stats queries), though it does not explicitly say when not to use it or mention list_counters as an alternative. Context is clear; exclusions are absent.

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

  • Behavior4/5

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

    With no annotations, the description carries the full behavioral burden. It discloses that the operation lists only counters accessible to the token, returns each counter's id/name/site, and requires only read scope. This goes beyond the tool name and schema, though it omits details like pagination or error behavior, which are less critical for a list-all endpoint.

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

    Conciseness5/5

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

    The description is two concise sentences. The first sentence states the core purpose; the second explains the output fields and their downstream use. There is no wasted wording or redundancy, and the essential information is front-loaded.

    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?

    The tool is simple (no parameters, no nested objects) and an output schema exists, so the description does not need to describe return structure. It covers what the tool does, what it returns, how to use the result, and the required scope. Nothing essential is missing for correct invocation.

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

    Parameters4/5

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

    The tool has zero parameters, so schema coverage is trivially 100%. The description adds relevant context about the output fields (id, name, site) and their purpose, which helps the agent interpret the result. With no parameters to document, a baseline of 4 is appropriate.

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

    Purpose5/5

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

    The description states a specific verb ('List'), a clear resource ('Yandex Metrika counters'), and scopes it to those 'available to the token.' It also implicitly distinguishes itself from the sibling 'query' by positioning the output as a way to pick a counter_id for query.

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

    Usage Guidelines4/5

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

    The description provides clear context: use this tool to obtain counter ids/names/sites, then feed a selected counter_id into 'query.' It does not explicitly state 'when not to use' or name alternatives, but given the single sibling and the dependency hint, the intended usage is apparent.

    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

yandex-metrika-mcp MCP server – quality and maintenance score on Glama

Copy to your README.md:

Score Badge

yandex-metrika-mcp MCP server – quality and maintenance score on Glama

Copy to your README.md: