MCPcopy Index your code
hub / github.com/SvechaPVL/yandex-mcp

github.com/SvechaPVL/yandex-mcp @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
520 symbols 1,633 edges 55 files 348 documented · 67%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Yandex MCP Server

🇬🇧 English version

Python 3.10+ License: MIT MCP

MCP (Model Context Protocol) сервер для Yandex Direct, Yandex Metrika, Yandex Wordstat и Yandex Webmaster API. Предоставляет 132 инструмента для управления рекламными кампаниями, аналитикой, исследованием ключевых слов, органическим поиском и отчётностью через любой MCP-совместимый клиент.

Управляй рекламой и аналитикой Яндекса через AI

Возможности

Yandex Direct API v5 (80 инструментов)

  • Кампании — создание, обновление, приостановка, возобновление, архивирование, удаление
  • Группы объявлений — создание, обновление с настройками таргетинга
  • Объявления — текстовые, графические, динамические, товарные с модерацией
  • Ключевые слова — управление словами и ставками
  • Статистика — детальные отчёты по эффективности с асинхронным retry
  • Корректировки ставок — мобильные, десктопные, демографические, региональные
  • Ретаргетинг — списки ретаргетинга и аудиторные таргетинги
  • Смарт-таргеты — фильтры по фидам
  • Быстрые ссылки, визитки, уточнения — расширения объявлений
  • Изображения — загрузка, управление и удаление изображений объявлений
  • Фиды — управление товарными фидами
  • Видео и креативы — создание видеообъявлений
  • Справочники — регионы, интересы, категории
  • Минус-слова — общие наборы минус-слов

Yandex Wordstat API (5 инструментов)

  • Популярные запросы — топ поисковых запросов и ассоциации
  • Динамика — тренды частотности запросов по времени
  • Регионы — региональное распределение поисковых запросов
  • Дерево регионов — иерархическая структура регионов
  • Информация о пользователе — квота и лимиты API

Yandex Webmaster API v4 (4 инструмента)

  • UserID — определение UserID владельца токена
  • Сайты — список подтверждённых сайтов и их ID
  • Сводка по хосту — ИКС (SQI), число страниц в поиске и исключённых
  • Популярные запросы — органические запросы с показами, кликами и позициями

Yandex Metrika API (43 инструмента)

  • Счётчики — создание, настройка, удаление
  • Цели — управление конверсионными целями
  • Отчёты — аналитика с метриками, временные ряды, сравнения, drill-down
  • Сегменты — сегментация аудитории
  • Фильтры — правила фильтрации трафика
  • Доступы — управление правами доступа
  • Офлайн-данные — загрузка конверсий, звонков, расходов, параметров
  • Метки и аннотации — организация счётчиков и пометки на графиках
  • Представители — делегирование аккаунта

Быстрый старт

1. Установка

git clone https://github.com/SvechaPVL/yandex-mcp.git
cd yandex-mcp
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install -e .

2. Получение токена

Создайте файл .env:

YANDEX_TOKEN=ваш_oauth_токен

Получите токен на Yandex OAuth с правами direct:api, metrika:read, metrika:write.

3. Настройка MCP-клиента

Добавьте в настройки вашего MCP-клиента:

{
  "mcpServers": {
    "yandex": {
      "command": "python",
      "args": ["-m", "yandex_mcp"],
      "cwd": "/path/to/yandex-mcp",
      "env": {
        "YANDEX_TOKEN": "your_token"
      }
    }
  }
}

4. Готово!

> Покажи все мои кампании в Директе
> Приостанови кампанию 12345
> Какая статистика по сайту за неделю?

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

Переменная Обязательная Описание
YANDEX_TOKEN Да OAuth-токен Яндекса (используется для Direct и Metrika)
YANDEX_DIRECT_TOKEN Нет Отдельный токен для Direct API
YANDEX_METRIKA_TOKEN Нет Отдельный токен для Metrika API
YANDEX_CLIENT_LOGIN Нет Логин клиента для агентских аккаунтов
YANDEX_USE_SANDBOX Нет true для использования песочницы
YANDEX_WORDSTAT_API_KEY Для Wordstat API-ключ сервисного аккаунта Yandex Cloud (Search API v2); старый OAuth Wordstat API отключён
YANDEX_CLOUD_FOLDER_ID Нет ID каталога Yandex Cloud для запросов Search API v2 (опционально)

Инструменты (132)

Yandex Direct (80 инструментов)

Кампании (8)

Инструмент Описание
direct_get_campaigns Получить список кампаний со статусом, стратегией и бюджетом
direct_create_campaign Создать кампанию (поиск, сети или оба)
direct_update_campaign Обновить настройки (стратегия, бюджет, расписание, регионы, модель атрибуции)
direct_suspend_campaigns Приостановить кампании
direct_resume_campaigns Возобновить кампании
direct_archive_campaigns Архивировать кампании
direct_unarchive_campaigns Разархивировать кампании
direct_delete_campaigns Удалить кампании

Группы объявлений (3)

Инструмент Описание
direct_get_adgroups Получить группы с настройками таргетинга
direct_create_adgroup Создать группу объявлений
direct_update_adgroup Обновить настройки группы

Объявления (12)

Инструмент Описание
direct_get_ads Получить объявления с контентом и статусом модерации
direct_create_text_ad Создать текстовое объявление
direct_create_image_ad Создать графическое объявление (баннер)
direct_create_dynamic_ad Создать динамическое объявление из фида
direct_create_shopping_ad Создать товарное объявление (ЕПК)
direct_update_ad Обновить контент (требует повторной модерации)
direct_moderate_ads Отправить на модерацию
direct_suspend_ads Приостановить объявления
direct_resume_ads Возобновить объявления
direct_archive_ads Архивировать объявления
direct_unarchive_ads Разархивировать объявления
direct_delete_ads Удалить объявления

Ключевые слова (6)

Инструмент Описание
direct_get_keywords Получить ключевые слова со ставками и статусом
direct_add_keywords Добавить ключевые слова в группу
direct_set_keyword_bids Установить ставки на поиске и в сетях
direct_suspend_keywords Приостановить ключевые слова
direct_resume_keywords Возобновить ключевые слова
direct_delete_keywords Удалить ключевые слова

Статистика (1)

Инструмент Описание
direct_get_statistics Получить отчёт (показы, клики, расход, CTR)

Корректировки ставок (5)

Инструмент Описание
direct_get_bid_modifiers Получить корректировки (мобильные, десктоп, демография, регионы)
direct_add_bid_modifier Добавить корректировку ставки
direct_set_bid_modifier Установить значение корректировки (0-1300%)
direct_delete_bid_modifiers Удалить корректировки
direct_toggle_bid_modifiers Включить/выключить корректировки

Ретаргетинг и аудитории (9)

Инструмент Описание
direct_get_retargeting_lists Получить списки ретаргетинга
direct_add_retargeting_list Создать список с правилами по целям Метрики
direct_update_retargeting_list Обновить правила списка
direct_delete_retargeting_lists Удалить списки ретаргетинга
direct_get_audience_targets Получить аудиторные таргетинги
direct_add_audience_target Добавить аудиторный таргетинг в группу
direct_suspend_audience_targets Приостановить аудиторные таргетинги
direct_resume_audience_targets Возобновить аудиторные таргетинги
direct_delete_audience_targets Удалить аудиторные таргетинги

Смарт-таргеты (5)

Инструмент Описание
direct_get_smart_ad_targets Получить фильтры смарт-объявлений
direct_add_smart_ad_target Добавить фильтр в смарт-группу
direct_suspend_smart_ad_targets Приостановить смарт-таргеты
direct_resume_smart_ad_targets Возобновить смарт-таргеты
direct_delete_smart_ad_targets Удалить смарт-таргеты

Быстрые ссылки (3)

Инструмент Описание
direct_get_sitelinks Получить наборы быстрых ссылок
direct_add_sitelinks Создать набор (до 8 ссылок)
direct_delete_sitelinks Удалить наборы ссылок

Визитки (3)

Инструмент Описание
direct_get_vcards Получить визитки (адрес, телефон, часы работы)
direct_add_vcard Создать визитку для объявлений
direct_delete_vcards Удалить визитки

Общие наборы минус-слов (4)

Инструмент Описание
direct_get_negative_keyword_shared_sets Получить общие наборы минус-слов
direct_add_negative_keyword_shared_set Создать набор минус-слов
direct_update_negative_keyword_shared_set Обновить набор
direct_delete_negative_keyword_shared_sets Удалить наборы

Расширения объявлений (3)

Инструмент Описание
direct_get_adextensions Получить расширения (уточнения и т.д.)
direct_add_callouts Добавить уточнения
direct_link_callouts_to_ad Привязать уточнения к объявлению

Видео и креативы (4)

Инструмент Описание
direct_upload_video Загрузить видео для расширений
direct_get_advideos Получить загруженные видео
direct_create_video_creative Создать видеокреатив
direct_get_creatives Получить видеокреативы

Фиды (4)

Инструмент Описание
direct_get_feeds Получить товарные фиды
direct_add_feed Добавить фид (URL или файл)
direct_update_feed Обновить настройки фида
direct_delete_feeds Удалить фиды

Изображения (3)

Инструмент Описание
direct_upload_image Загрузить изображение в base64 (JPEG, GIF, PNG)
direct_get_images Получить метаданные изображений, хеши и статус привязки
direct_delete_images Удалить непривязанные изображения по хешу

Справочники и регионы (3)

Инструмент Описание
direct_get_dictionaries Получить справочники Директа (категории, интересы)
direct_get_regions Получить дерево регионов
direct_get_interests Получить категории интересов для таргетинга

Клиент и изменения (4)

Инструмент Описание
direct_get_client_info Получить информацию об аккаунте
direct_check_campaign_changes Проверить изменения в кампаниях
direct_check_all_changes Проверить все изменения в аккаунте
direct_get_recent_changes_timestamp Получить время последних изменений

Yandex Metrika (43 инструмента)

Счётчики (5)

Инструмент Описание
metrika_get_counters Получить список счётчиков
metrika_get_counter Детальная информация (код, вебвизор, цели)
metrika_create_counter Создать счётчик с кодом отслеживания
metrika_update_counter Обновить имя, сайт, избранное
metrika_delete_counter Удалить счётчик и все данные

Цели (4)

Инструмент Описание
metrika_get_goals Получить конверсионные цели
metrika_create_goal Создать цель (URL, событие, составная)
metrika_update_goal Обновить условия цели
metrika_delete_goal Удалить цель

Отчёты (4)

Инструмент Описание
metrika_get_report Получить отчёт с метриками и измерениями
metrika_get_report_by_time Отчёт по времени (день, неделя, месяц)
metrika_get_comparison_report Сравнение двух периодов
metrika_get_drilldown_report Иерархический drill-down отчёт

Сегменты (4)

Инструмент Описание
metrika_get_segments Получить сегменты аудитории
metrika_create_segment Создать сегмент с фильтром
metrika_update_segment Обновить определение сегмента
metrika_delete_segment Удалить сегмент

Фильтры (4)

Инструмент Описание
metrika_get_filters Получить фильтры данных
metrika_create_filter Создать фильтр (включение/исключение трафика)
metrika_update_filter Обновить условия фильтра
metrika_delete_filter Удалить фильтр

Доступы (4)

Инструмент Описание
metrika_get_grants Получить права доступа к счётчику
metrika_add_grant Дать доступ пользователю
metrika_update_grant Обновить права доступа
metrika_delete_grant Отозвать доступ

Офлайн-данные (5)

Инструмент Описание
metrika_upload_offline_conversions Загрузить офлайн-конверсии
metrika_get_offline_conversions_status Проверить статус загрузки
metrika_upload_calls Загрузить данные о звонках
metrika_upload_expenses Загрузить данные о расходах
metrika_upload_user_parameters Загрузить параметры посетителей

Метки (6)

Инструмент Описание
metrika_get_labels Получить метки для организации счётчиков
metrika_create_label Создать метку
metrika_update_label Переименовать метку
metrika_delete_label Удалить метку
metrika_link_counter_to_label Привязать счётчик к метке
metrika_unlink_counter_from_label Отвязать счётчик от метки

Аннотации (4)

Инструмент Описание
metrika_get_annotations Получить аннотации графиков
metrika_create_annotation Создать аннотацию (пометка событий на графиках)
metrika_update_annotation Обновить текст аннотации
metrika_delete_annotation Удалить аннотацию

Core symbols most depended-on inside this repo

handle_api_error
called by 123
yandex_mcp/utils.py
direct_request
called by 62
yandex_mcp/client.py
metrika_request
called by 43
yandex_mcp/client.py
webmaster_request
called by 20
yandex_mcp/client.py
webmaster_user_id
called by 12
yandex_mcp/client.py
wordstat_request
called by 7
yandex_mcp/client.py
map_devices
called by 6
yandex_mcp/tools/wordstat.py
map_period
called by 6
yandex_mcp/tools/wordstat.py

Shape

Function 197
Class 167
Method 88
Route 68

Languages

Python100%

Modules by API surface

yandex_mcp/models/direct_extended.py37 symbols
tests/test_webmaster_v4_write.py37 symbols
yandex_mcp/models/metrika.py29 symbols
tests/test_wordstat_v2.py29 symbols
yandex_mcp/models/direct.py28 symbols
tests/test_package.py28 symbols
yandex_mcp/tools/webmaster.py22 symbols
yandex_mcp/models/metrika_extended.py21 symbols
yandex_mcp/tools/metrika/labels.py20 symbols
yandex_mcp/tools/wordstat.py19 symbols
yandex_mcp/models/webmaster.py16 symbols
yandex_mcp/tools/direct/retargeting.py13 symbols

For agents

$ claude mcp add yandex-mcp \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact