Skip to main content
Glama
Rezlazy

yandex-metrika-mcp

by Rezlazy

stat_data

Fetch Yandex Metrika analytics rows with custom dimensions and metrics to analyze traffic and user behavior.

Instructions

Yandex Metrika Reports API. Docs: https://yandex.ru/dev/metrika/ru/stat/ Table report — GET /stat/v1/data. Returns rows with dimensions and metrics.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idsYesCounter IDs, comma-separated (e.g. 44147844 or 44147844,2215573)
langNoResponse language
sortNoSort by dimensions/metrics comma-separated. Prefix with - for descending
date1NoPeriod start: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: 6daysAgo)
date2NoPeriod end: YYYY-MM-DD, today, yesterday, or ndaysAgo (default: today)
limitNoPage size, max 100000 (default: 100)
formatNoResponse format: json (default) or csv
offsetNoFirst row index, starting from 1 (default: 1)
presetNoReport preset name. See https://yandex.ru/dev/metrika/ru/stat/presets.md
filtersNoSegmentation filter expression. See https://yandex.ru/dev/metrika/ru/stat/segmentation.md
metricsYesMetrics comma-separated, max 20. Use ym:s: prefix for visits or ym:pv: for hits. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
accuracyNoSample size for report (sampling). See https://yandex.ru/dev/metrika/ru/stat/sampling.md
timezoneNoTimezone as ±hh:mm, e.g. +03:00 (plus sign as %2B in URL)
dimensionsNoDimensions (groupings) comma-separated, max 10. See https://yandex.ru/dev/metrika/ru/stat/attrandmetr/dim_all.md
include_undefinedNoInclude rows with undefined dimension values (first dimension only)
proposed_accuracyNoAllow API to auto-increase accuracy for small samples
direct_client_loginsNoYandex Direct client logins comma-separated (Direct expenses reports)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.2

TDQS

C2.9/5.0
Behavior2/5

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

No annotations exist, so the description carries the full disclosure burden. It reveals the verb (GET) and output shape, but says nothing about pagination behavior, sampling (accuracy), response-size limits, or anything beyond the basic row return. For a mutation-free retrieval tool this is below the minimum viable bar.

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?

Two sentences, appropriately short, with the key facts front-loaded: API family, docs link, endpoint, report type, and return shape. Only minor waste is the category label 'Yandex Metrika Reports API' preceding the tool-specific payload.

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?

The tool is complex (17 parameters, no annotations, no output schema), so the description needs to contribute more than a two-line summary. It omits authentication context, pagination/sampling behavior, and any comparison with the five sibling stat_* reports. The schema covers parameters well, but the overall contextual picture is 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% — all 17 parameters carry detailed descriptions (dates, limit defaults, ym:s:/ym:pv: prefixes, sort syntax, timezone encoding). With that coverage the baseline of 3 applies, and the description adds no additional parameter semantics of its own.

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 states the endpoint (GET /stat/v1/data), the report type ("Table report"), and the result shape (rows with dimensions and metrics), which implicitly tells the agent this is the flat tabular report rather than the bytime/drilldown/comparison/pivot variants. It loses the top score only because the differentiation from stat_* siblings 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?

No explicit when-to-use or when-not-to-use guidance is given. The 'Table report' label implies this is the baseline flat report, but the description never names alternatives like stat_bytime, stat_drilldown, or stat_comparison or states what would route an agent to them instead.

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