ya-metrics-mcp

ya-metrics-mcp

MCP server for Yandex Metrika analytics, enabling AI assistants to access traffic, content, demographics, conversion, e-commerce, and drill-down reports.

Category
访问服务器

README

ya-metrics-mcp

License Python FastMCP

Model Context Protocol (MCP) server for Yandex Metrika analytics. Exposes 31 analytics tools to your AI assistant — traffic, content, demographics, geographic, conversion, e-commerce data, and hierarchical drill-down reports.

Documentation in Russian is available here / Документация на русском языке — здесь.

Quick Start

1. Get Your OAuth Token

  1. Go to oauth.yandex.ru/client/new and create a new application:

    • Name — any name you like
    • Platforms — select Web services
    • Redirect URI — enter https://oauth.yandex.ru/verification_code
    • Data access — add metrika:read (this is the only scope needed for all 31 tools)
  2. Click Create application and copy the ClientID.

  3. Open this URL in your browser (replace <ClientID> with your value):

    https://oauth.yandex.ru/authorize?response_type=token&client_id=<ClientID>
    
  4. Authorize and copy the token from the resulting page.

2. Configure Your IDE

Add to your Claude Desktop / Cursor MCP configuration:

{
  "mcpServers": {
    "ya-metrics": {
      "command": "uvx",
      "args": ["ya-metrics-mcp"],
      "env": {
        "YANDEX_API_KEY": "your_oauth_token"
      }
    }
  }
}

Running from source? Use uv run instead:

{
  "mcpServers": {
    "ya-metrics": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/ya-metrics-mcp", "ya-metrics-mcp"],
      "env": { "YANDEX_API_KEY": "your_oauth_token" }
    }
  }
}

3. Start Using

Ask your AI assistant to:

  • "List my Metrika counters" — start here to find your counter ID
  • "Show me visits for counter 12345678 over the last 30 days"
  • "What are the top traffic sources for my site?"
  • "Compare mobile vs desktop users this month"
  • "Show conversion rates for goals 1 and 2"
  • "Drill down into traffic by country → city"
  • "Compare organic vs direct traffic segments"

Tools

31 tools across 7 domains:

Account & Counters

Tool Description
list_counters List all counters on the account (use this first to find counter IDs)
list_goals List conversion goals for a counter (call before get_goals_conversion)
get_account_info Counter metadata: name, site, timezone, permissions

Traffic & Sources

Tool Description
get_visits Visit statistics with date range (defaults to 7 days)
sources_summary Traffic sources overview
sources_search_phrases Top search phrases
get_traffic_sources_types Breakdown by source type (organic, direct, referral)
get_search_engines_data Sessions by search engine, with robot/new-user filters
get_new_users_by_source New user acquisition by traffic source (defaults to 30 days)

Content Analytics

Requires Yandex Zen/Turbo publisher integration on the counter.

Tool Description
get_content_analytics_sources Sources driving readers to articles
get_content_analytics_categories Stats by content category
get_content_analytics_authors Author performance
get_content_analytics_topics Performance by topic
get_content_analytics_articles Top articles by views

Demographics & Devices

Tool Description
get_user_demographics Age, gender, device breakdown
get_device_analysis Browser and OS analysis
get_mobile_vs_desktop Mobile vs desktop comparison
get_page_depth_analysis Sessions by page depth

Geographic

Tool Description
get_regional_data Traffic by city (all cities by default, or filter by name)
get_geographical_organic_traffic Organic traffic by country and city

Performance & Conversion

Tool Description
get_page_performance Bounce rate and duration by entry URL path
get_goals_conversion Conversion rates for specified goals
get_organic_search_performance SEO performance by query and engine
get_conversion_rate_by_source_and_landing Conversion by source × landing page URL

Advanced & Drill-Down

Tool Description
get_ecommerce_performance E-commerce purchases by product name (requires e-commerce tracking)
get_data_by_time Time-series data with custom grouping
get_yandex_direct_experiment A/B experiment bounce rates
get_browsers_report Browser usage report
get_drilldown Single branch of a hierarchical tree-view report
compare_segments Compare two user segments side by side
compare_segments_drilldown Segment comparison as a hierarchical tree-view

Response Size Control

Many tools accept a limit parameter to cap the number of rows returned. This is useful when working with AI assistants to keep responses within context limits. Tools with limit support: sources_summary, sources_search_phrases, get_device_analysis, get_page_performance, get_organic_search_performance, get_conversion_rate_by_source_and_landing, get_regional_data, get_geographical_organic_traffic, get_drilldown, compare_segments, compare_segments_drilldown.

Configuration

All configuration via environment variables:

Variable Required Default Description
YANDEX_API_KEY Yandex OAuth token
YANDEX_TIMEOUT 30 Request timeout in seconds
YANDEX_RETRIES 3 Retry attempts for 5xx errors
YANDEX_RETRY_DELAY 1.0 Base delay between retries (seconds)
READ_ONLY_MODE false Restrict to read-only tools
ENABLED_TOOLS all Comma-separated list of allowed tools

Copy .env.example to .env and fill in your values.

CLI

# stdio (default, for MCP clients)
ya-metrics-mcp

# HTTP transport
ya-metrics-mcp --transport streamable-http --port 8000

# With verbose logging
ya-metrics-mcp -vv

# Load custom .env file
ya-metrics-mcp --env-file /path/to/.env

Installation

From PyPI:

uvx ya-metrics-mcp

From source:

git clone https://github.com/mrkhachaturov/ya-metrics-mcp
cd ya-metrics-mcp
uv sync
uv run ya-metrics-mcp

Development

# Install with dev dependencies
uv sync --extra dev

# Run tests
uv run pytest

# Lint
uv run ruff check src/

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选