Яндекс Метрика MCP с DuckDB

Yandex.Metrika MCP

MCP-сервер Метрики для Claude Code с Stat, Logs, Management и Compare API и локальным SQL-анализом сырых логов через DuckDB

  • 0 ★ репозитория
  • Последний коммит
  • MIT
MCP-сервер

Широкий доступ

Почему такой уровень

  • Скачивает через Logs API сырые логи визитов с идентификаторами посетителей и хранит их локально
  • Агент выполняет SQL-запросы DuckDB по этим логам
  • В Метрику ничего не пишет, нужен OAuth-токен
Все причины и проверки
Российский стек

belisgard/yandex-metrika-mcp

Установка

Ручная установка

git clone https://github.com/belisgard/yandex-metrika-mcp.git && cd yandex-metrika-mcp && uv sync && cp .env.example .env

После заполнения .env токеном и ID счетчика откройте папку в Claude Code, сервер подключится через project-scoped .mcp.json.

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Скачивает через Logs API сырые логи визитов с идентификаторами посетителей и хранит их локально
  • Агент выполняет SQL-запросы DuckDB по этим логам
  • В Метрику ничего не пишет, нужен OAuth-токен

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Локальный Python-сервер дает 15 инструментов: сводка по счетчику, цели и сегменты, агрегированные отчеты Stat API, поиск по справочнику метрик и измерений, полный цикл Logs API (запрос выгрузки, статус, скачивание) с автоматическим кэшированием в parquet и регистрацией DuckDB-вьюх, а также сравнение периодов и сегментов. Инструмент run_sql позволяет агенту строить когорты и воронки SQL-запросами прямо по скачанным логам, но разрешает только SELECT, WITH, SHOW и DESCRIBE, файловые функции DuckDB заблокированы. Наружу сервер ходит только на api-metrika.yandex.net, все остальное выполняется локально.

Для кого. Для аналитиков, которые строят воронки и когорты по сырым логам визитов Метрики прямо в чате с Claude Code.

Подходит, если

  • Нужен ad-hoc SQL-анализ сырых визитов, а не только готовые отчеты
  • Нужны и агрегированные отчеты Stat API, и сравнение периодов или сегментов
  • Важно, чтобы токен и сырые данные визитов не покидали локальную машину

Не подходит, если

  • Нужен доступ к Директу или Вебмастеру: сервер работает только с Метрикой
  • Нужно управлять счетчиками, целями или сегментами, а не только читать их

Пример запроса к агенту

Из пользователей, которые видели страницу товара, какой процент добавил в корзину и оформил заказ

MCP

Транспорт
stdio
Авторизация
API-ключ

Переменные окружения

YM_OAUTH_TOKEN обязательная, секрет
OAuth-токен Яндекса со scope metrika:read
YM_COUNTER_ID обязательная
ID счетчика Метрики
YM_TIMEZONE
Часовой пояс отчетов, есть значение по умолчанию
YM_DATA_DIR
Папка для parquet-кэша и DuckDB-файла

Ограничения

Пакет не публикуется в PyPI, устанавливается клонированием и uv sync. Нет записи в Метрику: сервер только читает отчеты и логи, управлять целями или счетчиками нельзя. Скачанные логи и DuckDB-файл хранятся локально в data/ и не попадают в git, но содержат сырые визиты, с ними нужно обращаться по своей политике приватности.

Как отключить. Удалите сервер yandex-metrika из .mcp.json или из глобального конфига Claude Code.

Частые вопросы

Можно ли строить воронки по сырым данным?

Да, request_logs и download_logs выгружают Logs API в parquet, а run_sql выполняет по ним read-only SQL через DuckDB.

Какой scope нужен токену?

Достаточно metrika:read, разработчик отдельно предупреждает, что это единственное обязательное право.

Обсуждение

Вопросов и отзывов пока нет.

Российский стек

MCP-сервер Яндекс Метрики для Claude Desktop с OAuth device flow без браузерного редиректа и полным циклом Logs API

MCP-серверРасширенный доступ
Российский стек

MCP-сервер только для чтения: отчеты Яндекс Метрики с точными датами, часовым поясом и признаком семплирования.

MCP-серверРасширенный доступ130Звезды репозитория
Российский стек

MCP-сервер Метрики на npx с входом через Яндекс OAuth прямо в чате: счетчики, цели, отчеты по визитам и конверсиям, обычные запросы только на чтение

MCP-серверРасширенный доступ5Звезды репозитория
Выбор редакции

MCP-сервер Яндекс Метрики, порожденный из спеки API: 108 методов, по умолчанию 10 инструментов, прозрачные фильтры и метаданные ответа

MCP-серверРасширенный доступ2Звезды репозитория
Российский стек

MCP-сервер, CLI и Pydantic-модели для API Яндекс Метрики: отчеты, счетчики, цели, фильтры, сегменты, логи и загрузка офлайн-конверсий

MCP-серверШирокий доступ2Звезды репозитория
Российский стек

MCP-сервер Яндекс Метрики на 15 инструментов: отчеты и трафик плюс создание, изменение и удаление счетчиков и целей

MCP-серверШирокий доступ1Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
Яндекс Метрика MCP с DuckDB (эта карточка)нетAPI-ключ0
MCP Яндекс Метрики с исправлениями отчетовнетAPI-ключ1read-only, 25 инструментов, с исправлением отчетов
MCP Яндекс Метрики с управлением счетчикаминетAPI-ключ1управление счетчиками и целями
MCP-сервер Яндекс Метрики (ymetrika-mcp)нетAPI-ключ0на FastMCP, с трейсингом OpenTelemetry

Коротко о README

README подробно проводит через получение OAuth-токена и ClientID на oauth.yandex.ru, поиск ID счетчика, установку через uv и smoke-тест по Management API. Дана таблица всех 15 инструментов, типовой сценарий работы с Logs API из пяти шагов, раздел troubleshooting для 403 и 429 ошибок и раздел безопасности про песочницу run_sql.

Бейдж для README

Сообщить о проблеме