Yandex Metrika MCP Server
A Yandex Metrika MCP server generated from the API spec: 108 methods, 10 tools declared by default, transparent filters and response metadata
- 2 ★ on the repository
- Last commit
Extended access
Why this level
- With METRIKA_ALLOW_WRITES=1, 57 write tools open up, changing counters, goals and segments
- Reads commercially sensitive traffic and conversion statistics
- Write tools are hidden by default; the risk appears only after deliberately enabling them
Install
- Works in
- Services
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/artgas1-yandex-metrika-mcpDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- With METRIKA_ALLOW_WRITES=1, 57 write tools open up, changing counters, goals and segments
- Reads commercially sensitive traffic and conversion statistics
- Write tools are hidden by default; the risk appears only after deliberately enabling them
This is third-party code. Review the repository files before installing.
What it does
The server covers all 108 methods of the Yandex Metrika API: 95 Management API methods across 21 resources, 7 Logs API methods and 6 Stat API methods. Tools are not hand-written but generated from a spec the server builds itself by scanning CSS classes line by line on the official documentation pages, built on the Diplodoc engine, since Metrika has no public openapi.json. Only 10 tools of the core profile are declared by default; the rest opens via METRIKA_PROFILE set to read (51 read methods) or all (all 108), and write tools additionally require METRIKA_ALLOW_WRITES=1, without which they never appear in tools/list at all. Every response carries a _meta block with applied_by_server, notes, retries, rows_total, truncated and truncated_by_server: the server honestly discloses what it added on its own, such as the robot filter ym:s:isRobot=='no', and what it truncated for length. A dedicated metrika_catalog_list tool shows, with no token or network needed, what is hidden and how to enable it.
Who it is for. For people who care not just about full Metrika API coverage, but about transparency: knowing exactly what the server added on its own to a request or response.
Good fit when
- You need full access to all 108 Metrika API methods, including rare Management API resources
- You care about knowing exactly which filters and assumptions the server applied without an explicit request
- You want controlled growth of the tool surface, from 10 basics up to all 108 via an explicit variable
Not a fit when
- You need write tools out of the box: they are hidden by default and require METRIKA_ALLOW_WRITES=1
- You do not want to deal with core, read and all profiles: the server deliberately limits the set to save model context instead of exposing everything at once
Example request
Where did people come from this week, and how many reached the goal?MCP
- Transport
- stdio, http
- Authentication
- API key
Environment variables
YANDEX_API_KEYrequired, secret- Yandex OAuth token with Metrika access; the server will not start without it
METRIKA_PROFILE- Which part of the catalog is declared: core (10 tools), read (51), all (all 108)
METRIKA_ALLOW_WRITES- 1 declares the 57 write tools; without it they are absent from tools/list entirely
METRIKA_TRAFFIC_FILTER- Segmentation condition for Stat reports, excludes robots by default
METRIKA_MAX_OUTPUT_CHARS- Response length cap per call, defaults to 120,000 characters
Limitations
GitHub's license metadata shows NOASSERTION, though the README and the LICENSE file state MIT. The spec parser is tied to a specific version of Yandex's Diplodoc documentation engine; a version mismatch halts the spec build on update. The full all profile with writes enabled noticeably increases tool description size in the model's context, roughly 73,000 tokens per the author's measurement. Logs API output can exceed the single-response length limit, in which case the result is truncated with a note in the metadata.
How to disable. Remove the server from your MCP client config and revoke the OAuth token at oauth.yandex.ru.
FAQ
How do I find out which tools are hidden without reading the README?
Call metrika_catalog_list: it is declared in every profile, needs no token or network, and directly shows how many methods are hidden and how to widen the profile.
Can writes be enabled without enabling all 108 methods?
No, write tools only appear together with the all profile and METRIKA_ALLOW_WRITES=1; there is no partial write-only mode.
Discussion
No questions or reviews yet.
Related
All Yandex Metrica toolsMCP Yandex Metrica with counter management
@theyahia/yandex-metrika-mcp
Yandex Metrica MCP server with 15 tools: reports and traffic plus creating, editing, and deleting counters and goals
An MCP server, CLI and Pydantic models for the Yandex Metrika API: reports, counters, goals, filters, segments, logs and offline conversion uploads
Yandex Metrica MCP
yandex-metrica-mcp
Read-only MCP server for Yandex Metrica: reports, period comparison, goals and raw log export with browser login
Yandex Metrika MCP
Yandex Metrika MCP Server
MCP server for Yandex Metrika reports: traffic, sources, search phrases, goals, geography, devices and content analytics
Read-only Yandex Metrika MCP server
yandex-metrika-mcp
A minimalist Python MCP with 12 read-only tools using the correct OAuth header, paired with a skill that carries the period-comparison methodology
A read-only Yandex Metrika MCP server with 31 tools for traffic, content, demographics, geography, conversions and e-commerce, metrika:read only
README in short
The Russian README, with an English version as a separate file, details the server's contract at length: no silent request substitution, everything the server adds is visible in _meta, a failure stays a failure with the API's error body, truncation is disclosed, secrets are redacted in shown URLs. It explains how the spec is built by scanning documentation CSS classes line by line, plus an API drift test. It gives an environment variable table for the profile, enabling writes, manual tool selection, the traffic filter and the response length cap, along with a measured tools/list manifest size per profile in bytes and tokens. It separately covers the default robot filter and a quirk where period comparison with no dates silently compares a period against itself. MIT license.