Skip to main content
Glama
webkoth
by webkoth

yandex-mcp

Сервер MCP, который предоставляет API Yandex Webmaster, Yandex Direct и Yandex Metrika как инструменты для ИИ-ассистентов (Claude Desktop, Claude Code, Cursor и др.).

Он позволяет ассистенту работать с вашими данными SEO, рекламы и аналитики Yandex на естественном языке — просматривать поисковые запросы, управлять индексацией и картами сайта, запрашивать переобход, запускать диагностику, управлять кампаниями Direct с защитой записи и получать статистику по трафику, конверсиям и рекламе — без входа в веб-интерфейс Yandex.

  • 125 tool всего: 52 для Webmaster, 46 для Direct, 25 для Metrika, 2 для управления проектами.

  • 6 MCP-проектов — элементы приложений готовые сценарии (аудит кампании, еженедельный отчёт, запуск кампании, масштабирование бюджета, SEO-аудит, проверка усвоения) на playbook по autostrategies, который также публикуется как MCP resource yandex://playbook.

  • Один сервер, много-проектовая: several Yandex-аккаунтов/токенов в одном stdio-процессе.

  • TypeScript / Node ≥ 22, построенный на @modelcontextprotocol/sdk и zod.

Как это работает

src/index.ts поднимает один McpServer и регистрирует все группы инструментов из src/webmaster/ и src/direct/. Все запросы проходят через src/client.ts — HTTP-клиента для каждого проекта, который:

  • добавляет заголовок Authorization: OAuth <token> (Bearer для Direct),

  • направляет запросы Webmaster на api.webmaster.yandex.net, а Direct — на api.direct.yandex.com/json/v5 (или в Direct Sandbox, если включён direct.sandbox),

  • определяет и кэширует user_id Webmaster и подставляет host_id в пути,

  • повторяет запросы при сетевых ошибках / 429 с экспоненциальной задержкой и обрабатывает 204 No Content,

  • распаковывает внутренние ошибки Direct в теле ответа {"error": {...}} и следит за заголовком квоты Units.

Related MCP server: Yandex Wordstat MCP

Предварительные требования

  • Node.js ≥ 22.

  • OAuth-токен Yandex с доступом к API Webmaster и/или Metrika.

Получение OAuth-токена

  1. Заре.hasNextRegisterthe app in the Yandex OAuth consolе and выдайте ему прова Webmaster (webmaster:hostinfo, webmaster:verifion) and/or Metrika (metrika:read / metrika:write) scopes.

  2. Get the token for your account via OAuth flow.

Notes:

  • Direct требует собственнной области приложения и одобренной заявки (request), поданной из аккаунта Direct после регистрации приложения — существующие токенs Webmaster/Metrika не подойдут для Direct, пока не перевыпустить. Until access approved, use the Direct Sandbox (direct.sandbox: true in the project config).

  • OAuth-токены Webmaster expire after 6 месяцs and must be reissued.

Настройка

npm install
cp .env.example .env      # then put your token in .env
npm run build

.env:

YANDEX_OAUTH_TOKEN=your_oauth_token_here

Запуск

npm start          # runs dist/index.js (requires build)
npm run dev        # tsx watch mode against src/index.ts

Сервер по MCP через stdio, поэтому его обычно запускает MCP-клиент, а не вручную.

Конфигурация нескольких проектов

Сервер может обслуживать несколько проектов, у каждого из которых свой логин/токен Yandex. Скопируйте projects.example.json в projects.json.gitignore) и заполните его, либо укажите YANDEX_PROJECTS_CONFIG другой путь. Если файла конфигурации нет, но задан YANDEX_OAUTH_TOKEN, используется один проект default.

Переключайте активный проект через yandex_set_active_project, смотрите список через yandex_projects_list или передавайте project в любой инструмент Direct или Metrika. Инструменты Metrika также учитывают default_counter проекта.

Настройки Direct для отдельных проектов: sandbox (маршрутизация в Direct Sandbox), allow_login (агенцкие аккаунты) и limits — максимально допустимое изменение бюджета/ставки в процентах, ограничение применяют инструменты записи.

Подключение к MCP-клиенту

Токен считывается из переменной окружения YANDEX_OAUTH_TOKEN.

Claude Desktop / Cursor

Добавьте в конфигурацию MCP-серверов (claude_desktop_config.json или эквивалент):

{
  "mcpServers": {
    "yandex": {
      "command": "node",
      "args": ["/absolute/path/to/yandex/dist/index.js"],
      "env": {
        "YANDEX_OAUTH_TOKEN": "your_oauth_token_here"
      }
    }
  }
}

Claude Code

claude mcp add yandex --env YANDEX_OAUTH_TOKEN=your_token -- node /absolute/path/to/yandex/dist/index.js

Инструменты

Webmaster (52)

Группа

Инструменты

Пользователь

user_get

Сайты

hosts_list, hosts_get, hosts_add, hosts_delete

Проверка прав

verification_start, verification_status, verification_owners

Сводка

summary_get, summary_sqi_history

Поисковые запросы

search_queries_popular, search_queries_all_history, search_queries_history, query_analytics

Индексирование

indexing_history, indexing_samples, indexing_archive_create, indexing_archive_status

URL в поиске

search_urls_in_search_history, search_urls_in_search_samples, search_urls_events_history, search_urls_events_samples

Важные URL

important_urls_list, important_urls_history

Карты сайта

sitemaps_list, sitemaps_get, sitemaps_user_list, sitemaps_user_get, sitemaps_add, sitemaps_delete

Переобход

recrawl_submit, recrawl_status, recrawl_list, recrawl_quota, recrawl_sitemap_quota, recrawl_sitemap_submit

Диагностика

diagnostics_get

Ссылки

links_external_samples, links_external_history, links_internal_samples, links_internal_history

Экспорт Pro

pro_regions, pro_limits, pro_dates, pro_export_start, pro_export_status

Фиды

feeds_add, feeds_add_status, feeds_batch_add, feeds_list, feeds_batch_delete, feeds_change_regions

Все имена инструментов имеют префикс yandex_webmaster_.

Direct (43)

Группа

Инструменты

Чтение

campaigns_get, adgroups_get, ads_get, keywords_get, bids_get, bidmodifiers_get, sitelinks_get, adextensions_get, adimages_get, retargetinglists_get, audiencetargets_get, feeds_get, creatives_get, smartadtargets_get, dynamictextadtargets_get, negativekeywordsharedsets_get, vcards_get, leads_get, turbopages_get, businesses_get, agencyclients_get, advideos_get, dictionaries_get (кэшC 24 часа), clients_get, changes_check, units

Запись (с защитой)

campaigns_manage, adgroups_manage, ads_manage, keywords_manage, bids_set, bidmodifiers_manage, sitelikns_manage, adextensions_manage, adimages_manage, retargetinglists_manage, audience_targets_manage, feeds_manage, smartadtargets_manage, dynamictextadtargets_manage, negativekeywordsharedsets_manage, vcards_manage, advideos_manage, clients_manage

Исследование

keywords_research

Отчёты

report

Все имена инструментов имеют префикс yandex_direct_. Инструменты записивают предварительно diff до изменения, not iff confirm: true, и следат проектных лимитах бюджета/ставки (обход — force: true). Set direct.sandbox: true in the project to route вызовы into Direct Sandbox. Результаты записиваются с сводкой по каждому эlementа — Direct сообщает о чатчных failures в hello успешного HTTP-ответа, therefore check the partial_failure.

Управление проектами (2)

yandex_projects_list, yandex_set_active_project — the same config for the Configuraция тних проектов.

Metrika (22)

Группа

Инструменты

Управление

fetch_data_list counters_list, counter_get, goals_list, segments_list, filters_list

Цели (запись с защитой)

target_add, target_update, target_delete

Офлайн-конверсии

offline_conversions_upload (защита), offline_conversions_uploadings

Импорт расходов

expenses_upload (защита; расходы на рекламу вне Yandex), expenses_uploadings

Импорт CRM

crm_orders_upload (защита; заказы/выручка через CDP), calls_upload (защита), calls_uploadings

Logs API (сырые данные)

logs_evaluate, logs_request_create, logs_requests, logs_download (усечённый TSV), logs_clean

Reporting (Stat)

stat_data, stat_bytime, stat_drilldown, stat_comparison, stat_comparison_drilldown

Все имена инструментов имеют префикс yandex_metrika_. Стат-инструменты принимают direct_client_logins для рекламных отчётов (метрики ym:ad: — расходы Direct в объединении с поведением на сайте) и extra_params для любого другого параметра запроса.

Инструменты отчётности повторяют Metrika Reporting API. Метрики и измерения используют пространства имён ym:s: (визиты) / ym:pv: (просмотры страниц) — например, metrics: "ym:s:visits,ym:s:users,ym:s:bounceRate", dimensions: "ym:s:date,ym:s:lastTrafficSource". Даты принимают YYYY-MM-DD или относительные ключевые слова (today, yesterday, 7daysAgo). Инструменты, привязанные к счётчику, по умолчанию используют default_counter проекта, если counter_id/ids не указаны.

Структура проекта

src/
  index.ts            # entry point: boots the MCP server, registers all tools
  client.ts           # per-project HTTP client (auth schemes, base URLs, retries, Direct transport)
  projects.ts         # project registry: per-project tokens, Direct config, limits
  server-tools.ts     # project management tools (list / set active)
  webmaster/          # 14 modules, 51 Webmaster tools
  metrika/            # management + Reporting API — 10 Metrika tools
  direct/             # read, guarded write, reports — 14 Direct tools

Скрипты

Команда

Описание

npm run build

Компилировать TypeScript в dist/

npm run dev

Запускать из исходного кода с tsx watch

npm test

Запускать модульные тесты (tsx --test)

npm start

Запускать собранный сервер

npm run clean

Удалять dist/

Лицензия

MIT © Minas Sarkisyan

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    B
    maintenance
    MCP server for managing Yandex Direct advertising, Yandex Metrica analytics, Wordstat keyword research, and Yandex Webmaster SEO tools, with self-configuring OAuth; provides 153 tools for complete ad and search workflows from AI assistants.
    100
    19
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables querying Yandex Wordstat search statistics, including frequency, related queries, seasonality, and regional distribution, through natural language in AI clients.
    5
    120
    4
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables interaction with Yandex advertising and analytics APIs (Direct, Metrika, Audience, Webmaster, AdMetrica) through MCP tools, resources, and prompts for campaign management and data retrieval.
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to manage Yandex Direct advertising campaigns, ads, keywords, and reports via natural language using the Yandex Direct API v5.
    2
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP for Yandex Direct: manage ad campaigns & analytics from Claude or ChatGPT

  • Read-only Yandex Metrika MCP. Query visits, sources, geo, devices and more in plain language.

  • SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/webkoth/yandex-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server