appmetrica-mcp
MCP server for Yandex AppMetrica analytics, enabling Claude to access reports, raw event logs, crash data, and push notification campaigns.
README
appmetrica-mcp

MCP server for AppMetrica — Yandex's mobile analytics platform. Gives Claude direct access to your app's analytics: reports, raw event logs, crash data, and push notification campaigns.
Features
- Reporting API — aggregated metrics (users, sessions, revenue, retention) with dimension breakdowns
- Logs API — raw event, crash, and installation exports
- Management API — list and inspect your AppMetrica applications
- Push API — view campaigns and statistics; create campaigns when write mode is enabled
- Safe by default — write operations 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)
Getting an OAuth Token
AppMetrica uses Yandex OAuth. Use the Russian OAuth portal (oauth.yandex.ru) — the international version (oauth.yandex.com) does not expose AppMetrica scopes in its UI.
Step 1 — Create an OAuth app
- Go to oauth.yandex.ru/client/new
- Fill in any name (e.g.
AppMetrica MCP) - Under Platforms, select Web services and set the Callback URI to:
https://oauth.yandex.ru/verification_code - Under Доступы (Access), find the AppMetrica section and enable:
Чтение данных AppMetrica— read access (required)Запись данных AppMetrica— write access (optional, needed for push campaign creation)
- Click Создать приложение and copy the ClientID
Step 2 — Get a token
Open this URL in your browser (replace CLIENT_ID with your app's ID):
https://oauth.yandex.ru/authorize?response_type=token&client_id=CLIENT_ID
Log in → authorize the app → copy the access_token value from the redirect URL.
Note: The token does not expire by default. You can revoke it anytime at passport.yandex.ru/profile/access.
Installation
Claude Code (recommended)
claude mcp add appmetrica \
-e APPMETRICA_OAUTH_TOKEN=your_token \
-- npx -y appmetrica-mcp
To enable write operations (push campaign creation):
claude mcp add appmetrica \
-e APPMETRICA_OAUTH_TOKEN=your_token \
-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_OAUTH_TOKEN": "your_token"
}
}
}
}
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 |
Yes | — | Yandex OAuth token with AppMetrica scope |
APPMETRICA_ALLOW_WRITE |
No | false |
Set to true to enable push campaign creation |
Available Tools
Management
| Tool | Description |
|---|---|
list_applications |
List all AppMetrica applications in your account |
get_application |
Get details for a specific application by ID |
Reporting
| Tool | Description |
|---|---|
get_report |
Fetch aggregated metrics for a date range (users, sessions, crashes, etc.) |
get_drilldown |
Drill down into a dimension value for detailed breakdown |
list_metrics |
List available metric keys with descriptions |
Logs
| Tool | Description |
|---|---|
export_events |
Export raw custom event logs |
export_crashes |
Export raw crash logs |
export_installations |
Export raw installation logs |
Push Notifications
| Tool | Access | Description |
|---|---|---|
list_push_campaigns |
Read | List push notification campaigns with optional status filter |
get_push_stats |
Read | Get delivery statistics for a campaign |
create_push_campaign |
Write | Create a push campaign (requires APPMETRICA_ALLOW_WRITE=true) |
Usage Examples
Once connected, you can ask Claude things like:
- "List my AppMetrica applications"
- "Show DAU and sessions for app 12345 over the last 7 days"
- "Export crash logs for app 12345 from 2024-01-01 to 2024-01-07"
- "What push campaigns are currently active for app 12345?"
- "Show me new user counts broken down by app version"
Rate Limits
AppMetrica enforces the following limits on all API requests:
- 30 requests / second per OAuth token
- 5,000 requests / day per OAuth token
The client retries automatically on 429 and 5xx responses with exponential backoff (1s → 2s → 4s, up to 3 attempts).
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.