app_metrica_mcp
AppMetrica MCP server: reports, funnels, segments, dashboards and raw logs of Yandex AppMetrica for Claude and other AI agents
Install / Use
claude mcp add pavellunev -- npx -y github:pavellunev/app_metrica_mcpIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Data & AnalyticsSupported Platforms
Tags
Our assessment of app_metrica_mcp
app_metrica_mcp scores 83/100 on our quality scale, 478th of 597 Data & Analytics skills we index.
Its MCP Server is 27 KB long, well organised into 30 sections with 8 code examples: a thorough specification that gives an agent plenty to work with.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated 27 days ago, so app_metrica_mcp is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
app_metrica_mcp compared with similar skills
All 4 of these similar skills score higher than app_metrica_mcp; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| app_metrica_mcp (this skill)by pavellunev | 83 | 3 | 27d ago | MCP Server |
| Agent-Reachby Panniantong | 100 | 106.6k | 5d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 78.3k | today | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.7k | today | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 90.4k | 1d ago | MCP Server |
Frequently asked questions
- How do I install app_metrica_mcp?
- Run
claude mcp add pavellunev -- npx -y github:pavellunev/app_metrica_mcp. The install tabs above show the steps for each supported agent. - Which AI agents does app_metrica_mcp work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is app_metrica_mcp safe to use?
- It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is app_metrica_mcp still maintained?
- The repository was last updated 27 days ago, so app_metrica_mcp is actively maintained.
Skill content
View source on GitHubAppMetrica MCP — Yandex App Metrica MCP server for Claude and AI agents

MCP server for AppMetrica — Yandex's mobile analytics platform. Gives Claude direct access to your app's analytics: reports, funnels, dashboards, raw event logs, crash data, and push notification campaigns — and can create funnels and segments in AppMetrica itself.
Update 0.3.0 (October 2026). The server now builds analytics in AppMetrica, not only reads it: saved funnels and segments through the Management API, and real workspaces/dashboards through an experimental logged-in Chrome session (
web_*tools, one-timenpx appmetrica-mcp login). Also new: time series (get_report_bytime), a docs-derived catalogue of 197 metrics, all 13 Logs API tables,audit_eventsand theanalytics_setupworkflow prompt. Full list in CHANGELOG.md.
Why
AppMetrica keeps mobile product analytics (users, sessions, events, funnels, retention, revenue, crashes) behind a web UI and several HTTP APIs. This MCP server puts all of it behind one set of tools, so an AI agent such as Claude can answer and act on questions like:
- "How did DAU, new users and crash-free sessions change this week?"
- "Build a funnel from first launch to purchase and save it in AppMetrica."
- "Which events does the app send, which ones are dead, and what is missing for a registration funnel?"
- "Create a workspace with audience, revenue and funnel widgets for the marketing team."
- "Export raw purchase events for September and compare countries."
It works with Claude Code, Claude Desktop and any other MCP client, and is listed in the official MCP Registry as io.github.pavellunev/appmetrica-mcp.
Features
- Reporting API — aggregated metrics (users, sessions, revenue, crashes, events, ...) with dimension breakdowns, time series (
bytime), filters, sorting and sampling control - Funnels — step-by-step funnel reports for saved web-UI funnels or ad-hoc steps, with absolute/relative conversion; create, update and delete saved funnels
- Dashboards & Workspaces — preset or custom widget sets computed from the Reporting API; named widget sets saved locally as workspaces
- Web session (experimental) — create and manage real AppMetrica workspaces (dashboards) and widgets through a logged-in headless Chrome session (
web_*tools; the public API cannot do this) - Segments — list saved segments and apply them to any report via
segment_id; create, update and delete segments - Event audit —
audit_eventscompares registered events with real volumes and reports instrumentation gaps - Workflow prompt —
analytics_setupwalks an agent through analysing an app, building funnels/segments/dashboards and listing instrumentation gaps - Logs API — raw exports for all 13 tables (events, crashes, errors, installations, sessions, deeplinks, postbacks, clicks, push tokens, profiles, revenue, e-commerce, ad revenue)
- Management API — applications, event names, conversions, Logs API status
- Push API — view campaigns and statistics; create campaigns when write mode is enabled
- Safe by default — write operations (push campaigns, funnels, segments) are disabled unless you explicitly opt in
Requirements
- Node.js 22+
- An AppMetrica account with at least one application
- A Yandex OAuth token (see below)
- Optional, only for the experimental
web_*tools: Google Chrome and a one-timenpx appmetrica-mcp login(see Web session)
Getting an OAuth Token
Option A — one command (recommended)
npx appmetrica-mcp auth
The wizard opens a Chrome window on the Yandex consent page (the same Chrome profile the web-session tools use, so after the first time you are already logged in), you click Разрешить, and the wizard takes the confirmation code from the page URL itself — nothing to copy. The token is saved to ~/.config/appmetrica-mcp/credentials.json (mode 0600; Yandex tokens live about a year, after that just run auth again) and the server picks it up automatically — no APPMETRICA_OAUTH_TOKEN needed. At the end the wizard offers to log in to the AppMetrica web session as well (only needed for the web_* workspace tools).
Details:
- Standard OAuth 2.0 authorization-code flow with PKCE against the bundled public
appmetrica-mcpOAuth app; no client secret is involved. - Needs Google Chrome (or
APPMETRICA_BROWSER_PATH/APPMETRICA_BROWSER_CHANNEL). Without it, or over SSH, usenpx appmetrica-mcp auth --manual: your default browser opens the same page, Yandex shows the code and you paste it into the terminal. - Your own Yandex OAuth app instead of the bundled one: set
APPMETRICA_OAUTH_CLIENT_ID(Redirect URIhttps://oauth.yandex.ru/verification_code, AppMetrica read/write access). If that app also registershttp://127.0.0.1:8742/callback,--loopbackruns a local callback server instead of Chrome (APPMETRICA_OAUTH_PORTchanges the port). - The MCP server itself never opens a browser: if no token is found, tools answer with a short "run
npx appmetrica-mcp auth" message.
Option B — paste a token yourself
Use the Russian OAuth portal (oauth.yandex.ru) — the international version (oauth.yandex.com) does not expose AppMetrica scopes in its UI.
- Go to oauth.yandex.ru/client/new, name the app, choose Web services and set the Callback URI to
https://oauth.yandex.ru/verification_code. - Under Доступы (Access) → AppMetrica enable
Чтение данных AppMetrica(required) andЗапись данных AppMetrica(optional, for write tools). Copy the ClientID. - Open
https://oauth.yandex.ru/authorize?response_type=token&client_id=CLIENT_ID, log in, authorize, copyaccess_tokenfrom the redirect URL and pass it asAPPMETRICA_OAUTH_TOKEN.
Tokens do not expire by default; revoke them anytime at passport.yandex.ru/profile/access. An env token always wins over the saved credentials file.
Installation
Claude Code (recommended)
claude mcp add appmetrica -- npx -y appmetrica-mcp
npx appmetrica-mcp auth # one-time browser login (or pass -e APPMETRICA_OAUTH_TOKEN=... instead)
To enable write operations (push campaigns, creating/updating/deleting funnels and segments):
claude mcp add appmetrica \
-e APPMETRICA_ALLOW_WRITE=true \
-- npx -y appmetrica-mcp
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"appmetrica": {
"command": "npx",
"args": ["-y", "appmetrica-mcp"],
"env": {
"APPMETRICA_ALLOW_WRITE": "true"
}
}
}
}
Building from source
git clone https://github.com/pavellunev99/app_metrica_mcp
cd app_metrica_mcp
npm install
npm run build
Configuration
| Variable | Required | Default | Description |
|---|---|---|---|
| APPMETRICA_OAUTH_TOKEN | No | — | Yandex OAuth token; optional when npx appmetrica-mcp auth saved one (env wins) |
| APPMETRICA_CREDENTIALS_FILE | No | ~/.config/appmetrica-mcp/credentials.json | Where auth stores the token |
| APPMETRICA_OAUTH_CLIENT_ID | No | bundled public app | Your own Yandex OAuth app ClientID for auth |
| APPMETRICA_OAUTH_PORT | No | 8742 | Port of the auth --loopback callback server (ignored by the default Chrome flow) |
| APPMETRICA_ALLOW_WRITE | No | false | Set to true to enable write tools: push campaign creation, funnel and segment create/update/delete |
| APPMETRICA_WORKSPACES_FILE | No | ~/.config/appmetrica-mcp/workspaces.json | JSON file where local workspaces (saved dashboard widget sets) are stored |
| APPMETRICA_BROWSER_PROFILE | No | ~/.config/appmetrica-mcp/chrome-profile | Chrome profile directory that holds the Yandex login for the experimental web_* tools |
| APPMETRICA_BROWSER_PATH | No | — | Path to a Chrome/Chromium executable (overrides the channel) |
| APPMETRICA_BROWSER_CHANNEL | No | chrome | Browser channel for the web session: chrome, chromium, msedge, ... |
| APPMETRICA_BROWSER_IDLE_MS | No | 120000 | Idle time after which the headless web session closes Chrome and frees the profile (so login can run) |
Available Tools
Management
| Tool | Description |
|---|---|
| list_applications | List all AppMetrica applications in your account |
| get_application | Get details for a specific application by ID |
| list_events | List client event names of an application (use them as funnel steps) |
| list_conversions | List configured conversions (attributed events) |
| get_logs_api_status | Check whether the Logs API is enabled for the account |
Reporting
| Tool | Description |
|---|---|
| get_report | Aggregated metrics for a date range, with filters, sort, segment_id, currency, accuracy, include_undefined, lang, offset |
| get_report_bytime | The same as a time series (group: day / week / month / hour / all). One namespace prefix per call |
| get_drilldown | Drill down into a dimension value for detailed breakdown |
| list_metrics | Metric/dimension catalogue (197 metrics, 188 dimensions): compact overview, or search / namespace / kind / limit for entries |
| audit_events | Event instrumentation audit for a period: registered vs active vs zero-volume events, optional expected_events, plain-language findings (read-only) |
Segments
| Tool | Description |
|---|---|
| list_segments | List saved segments (id, name, expression) |
| get_segment | Get one segment with all fields |
Funnels
| Tool | Description |
|---|---|
| list_funnels | List saved funnels with decoded steps and options |
| get_funnel_report | Per-step devices and conversion for a saved funnel (funnel_id) or ad-hoc steps |
Dashboards & Workspaces
| Tool | Description |
|---|---|
| get_dashboard | Run preset widgets (widgets) or a saved workspace (workspace) for a date range |
| list_dashboard_presets | List preset widgets with their metrics |
| list_workspaces | List locally saved workspaces |
| get_workspace | Get a workspace with its widget specs |
| save_workspace | Create or update a local workspace (local file only) |
| delete_workspace | Delete a local workspace (local file only) |
Web session (experimental)
Unofficial tools that drive the AppMetrica web UI's internal API through a logged-in headless Chrome — see Web session. Every tool needs npx appmetrica-mcp login once; tools marked Write also need APPMETRICA_ALLOW_WRITE=true.
| Tool | Access | Description |
|---|---|---|
| web_session_status | Read | Check the web session: logged in, Yandex login, profile directory |
| web_list_workspaces | Read | List the app's AppMetrica workspaces (system + custom) |
| web_get_workspace | Read | One workspace: groups, headers and widgets with names, metrics, dimensions |
| web_list_widget_presets | Read | Web preset widgets (widget_id = preset value), optional category |
| web_list_report_namespaces | Read | Report namespaces with their Reporting API prefix; with namespace_id the valid metrics and dimensions |
| web_create_workspace | Write | Create a workspace with groups ({header?, widgets?}) in one call |
| web_add_widgets | Write | Add a row of widgets to a workspace (position optional) |
| web_add_header | Write | Add a section header row |
| web_rename_workspace | Write | Rename a workspace |
| web_remove_widget | Write | Remove a widget by dashboard_widget_id |
| web_delete_workspace | Wri
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
106.6kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
78.3kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
CowAgent
47.7kOpen-source personal AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
Scrapling
90.4k🕷️ The BEST Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
