关于 Yandex Analytics
Yandex Analytics 是面向 AI Agent 的只读分析 MCP 服务,可从 Yandex Metrika、Webmaster、Direct 和 Wordstat 查询网站与广告数据。它以精简工具集提供指标、趋势和搜索词分析,且令牌在本机使用。
主要功能
- 01查询 Metrika 流量与目标指标
- 02比较时段并生成自定义报告
- 03查看 Webmaster 搜索词和索引状态
- 04读取 Direct 广告表现与 Wordstat 词频
- 05通过 PKCE 登录并管理令牌
适用场景
- 01分析网站流量变化和来源
- 02查找接近搜索结果首页的查询词
- 03按广告系列查看支出与点击数据
- 04生成每周网站分析报告
MCP 相关
该 MCP 服务通过 stdio 提供 Yandex 分析工具,供客户端查询 Metrika、Webmaster、Direct 和 Wordstat。除需明确确认的页面重新抓取外,工具为只读。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx yandex-mcpYANDEX_MCP_DEFAULT_COUNTERMetrika counter id used when a tool call omits counter_idYANDEX_MCP_CLIENT_IDYandex OAuth application id; alternative to storing it in the OS keystore本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
15收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| date1 | string | 否 | 开始日期:YYYY-MM-DD 或 30daysAgo |
| date2 | string | 否 | 结束日期:YYYY-MM-DD 或 yesterday |
| counter_id | string | 否 | Metrica 计数器 ID;若未传入,则使用 YANDEX_MCP_DEFAULT_COUNTER |
详细介绍
yandex-mcp
用自然语言询问你的 Yandex 数据分析。 Metric、Webmaster、Direct 和 Wordstat 集成在一个 MCP 服务中。
> Как изменился трафик за последний месяц и откуда пришёл рост?
> По каким запросам мы на второй странице — там, где до топа осталось чуть-чуть?
> Сколько стоила заявка в Директе на прошлой неделе по каждой кампании?
工作原理
服务是运行在你电脑上的普通程序。Agent 向它请求数据,它会调用 Yandex API, 并返回整理好的文本。没有任何中间服务:你的令牌和数据不会经过他人之手。
完全没有依赖项——不依赖任何第三方库。这个进程可以访问你的数据分析和广告账户, 因此这里的第三方代码越少越好。
安装
Claude Code——两条命令,安装服务的同时也会安装技能:
/plugin marketplace add nozikov/yandex-mcp
/plugin install yandex-mcp@nozikov
Codex CLI——将以下内容追加到 ~/.codex/config.toml,然后重启 Codex:
[mcp_servers.yandex]
command = "uvx"
args = ["yandex-mcp"]
env = { YANDEX_MCP_DEFAULT_COUNTER = "12345678" }
其他客户端——通过 PyPI 安装:
claude mcp add yandex -e YANDEX_MCP_DEFAULT_COUNTER=12345678 -- uvx yandex-mcp
也可以手动配置,参见 .mcp.json.example:
{
"mcpServers": {
"yandex": {
"command": "uvx",
"args": ["yandex-mcp"],
"env": { "YANDEX_MCP_DEFAULT_COUNTER": "12345678" }
}
}
}
计数器可以不填——不填写的话,每次提问都需要指定。
登录
无需使用终端:告诉 Agent“连接 Yandex”,它就会逐步引导你完成。
开始前需要在 Yandex 注册自己的应用——免费,只需五分钟。运行 yandex-mcp setup
会打开所需页面并提示你填写内容。无需应用密码:这里使用 PKCE。
唯一需要你亲自完成、Agent 无法代劳的步骤是注册应用,因为这是你的账户。 注册后,只需把 ClientID 告诉 Agent;它不是机密:
yandex-mcp setup --client-id <ClientID>
注册应用时需要填写哪些内容
Yandex 会询问应用类型。两种都可以,区别仅在于登录方式:
| 类型 | Redirect URI | 登录方式 |
|---|---|---|
| “用于用户授权” | 自定义:http://localhost:8765/callback | yandex-mcp login |
| “用于访问 API 或调试” | 由 Yandex 固定 | yandex-mcp login --manual |
在“数据访问”部分,按名称添加权限:
metrika:read
webmaster:hostinfo
webmaster:verify
direct:api ← нужна заявка в кабинете Директа, рассматривают до 7 дней
登录时会一次性申请所有权限。如果 direct:api 尚未获批,Yandex 会拒绝请求——服务会检测到这一情况,在不启用 Direct 的情况下完成登录,并告知你。Metric 和 Webmaster 会立即可用;申请获批后,再次登录即可启用 Direct。
终端命令:setup、login、status、logout。
Метрика
metrika_summary | Сводка за период: визиты, посетители, отказы, глубина, достижения всех целей |
metrika_compare | Сравнение двух периодов — по итогам или построчно по источникам, устройствам, страницам |
metrika_report | Любой отчёт: свои метрики, измерения и фильтры |
metrika_counters | Какие счётчики доступны |
Вебмастер
webmaster_summary | ИКС, страниц в поиске, исключено, активные проблемы |
webmaster_queries | Поисковые запросы: показы, клики, средняя позиция |
webmaster_indexing | Как менялось число страниц в поиске |
webmaster_sitemaps | Какие карты сайта видит Яндекс и есть ли в них ошибки |
webmaster_recrawl | Поставить страницы на переобход. Единственное действие, а не чтение — требует явного подтверждения |
Директ и Вордстат
direct_campaigns | Кампании и остаток баллов API |
direct_report | Расход, показы, клики, CTR — по кампаниям, объявлениям, группам или запросам |
wordstat_phrases | Частотности: сколько раз в месяц ищут фразу и что ищут вместе с ней |
Подключение
yandex_login | Начать вход — выдаёт ссылку |
yandex_submit_code | Завершить вход — принимает код |
yandex_auth_status | Что подключено и когда истекает |
Скиллы
Ставятся вместе с плагином Claude Code:
/yandex-mcp:site-weekly | Недельный отчёт по сайту: трафик, источники, поиск, реклама — и что делать |
/yandex-mcp:seo-opportunities | Запросы на границе топа: где до первой страницы осталось немного |
Где лежит токен
Ничего настраивать не нужно — подходящее хранилище выбирается само. Форсировать можно
переменной YANDEX_MCP_KEYSTORE.
Записи лежат под общим префиксом, чтобы logout не задел чужое:
yandex-mcp-token общий токен
yandex-mcp-metrika-token токен одного сервиса, если нужен узкий доступ
yandex-mcp-client-id ID приложения Яндекса
Токен можно передать и напрямую, минуя хранилище: YANDEX_MCP_SECRET_TOKEN для общего,
YANDEX_MCP_SECRET_METRIKA_TOKEN для узкого. Так удобно в Docker и CI.
Почему 15 инструментов, а не 130
Описания всех инструментов уходят в контекст модели при каждом запросе, пока сервер подключён. Здесь это около 1 800 токенов. У серверов со 130–150 инструментами — за 40 000, и это постоянный налог на каждый диалог.
Оставлено то, на что реально смотрят: цифры и их динамика. Управлять кампаниями и ставками отсюда нельзя — для этого есть кабинет Директа, и цена ошибки там другая.
Переменные окружения
| Переменная | Зачем |
|---|---|
YANDEX_MCP_DEFAULT_COUNTER | Счётчик Метрики по умолчанию |
YANDEX_MCP_CLIENT_ID | ID приложения Яндекса, если не хочешь держать его в хранилище |
YANDEX_MCP_KEYSTORE | keychain, secret-tool или file — выбрать хранилище вручную |
YANDEX_MCP_SECRET_TOKEN | Готовый токен мимо хранилища (Docker, CI) |
YANDEX_MCP_DIRECT_SANDBOX | 1 — Директ отвечает из песочницы, баллы API не тратятся |
YANDEX_MCP_DIRECT_CLIENT_LOGIN | Логин клиента для агентских аккаунтов |
YANDEX_MCP_WORDSTAT_WAIT | Сколько секунд ждать отчёт Вордстата, по умолчанию 170 |
О чём стоит знать
- Инструменты Директа и Вордстата требуют одобренной заявки на API Директа. До неё Директ отвечает ошибкой 58.
- Отчёт Вордстата готовится у Яндекса около трёх минут. Если вернулось «ещё готовится» — повтори запрос с теми же фразами, готовый результат подхватится сразу.
- Отчёт Директа тоже может готовиться минутами. Сервер ждёт сам, но в очереди Яндекса помещается не больше пяти таких отчётов на аккаунт.
- Переобход страниц ограничен: 20 URL за вызов при суточной квоте 150 на сайт.
- Ответ обрезается на 20 000 символах. Для больших выгрузок сужай период.
- Токен живёт около полугода, потом нужно войти заново. Обновлять его автоматически Яндекс разрешает только приложениям с паролем, а у PKCE-приложения его нет.
- Там, где системного хранилища нет (Windows, сервер без графики, контейнер), токен лежит
в файле с правами
0600— как~/.aws/credentialsили SSH-ключ без пароля.
Безопасность
Токен не появляется ни в ответе инструмента, ни в тексте ошибки: есть отдельный фильтр,
вычищающий его из любого текста. status показывает только отпечаток.
Почти всё — чтение. Единственное изменяющее действие, переобход страниц, требует явного подтверждения в аргументах вызова.
Данные из API считаются недоверенными: поисковые фразы, UTM-метки и названия кампаний пишут посторонние люди. К каждому ответу добавляется пометка, что это данные для анализа, а не инструкции агенту.
Разработка
pip install -e ".[dev]"
pytest
Тесты не ходят в сеть и не трогают системное хранилище. CI гоняет их на Linux, macOS и Windows, на Python от 3.8 до 3.14.
src/yandex_mcp/
cli.py точка входа: без аргументов сервер, с аргументами настройка
server.py JSON-RPC поверх stdio
registry.py сборка списка инструментов
httpclient.py запросы к Яндексу
scrub.py вычищение секретов из ответов
auth/ хранилище, токены, вход по PKCE
tools/ по модулю на сервис
Код лежит в src/, чтобы import yandex_mcp брал установленный пакет, а не случайно
подхваченную рабочую директорию — иначе тесты могут проходить на коде, которого нет
в собранном колесе.
Диаграммы в docs/ собираются из scripts/make_diagrams.py, а scripts/check_metadata.py
следит, чтобы README не разошёлся с кодом: версии, список инструментов и переменные
окружения проверяются на каждом прогоне CI.
Лицензия
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。