MCP server for Yandex Direct API v5: manage PPC campaigns, ads, keywords, and statistics.
Яндекс Директ MCP подключает AI-приложение к рекламному кабинету Яндекс Директа. Спросите на естественном языке, куда уходит рекламный бюджет, сопоставьте кампании, объявления и ключевые фразы, а затем подготовьте или внесите нужные изменения без переходов между разделами кабинета. Подключение начинается прямо в диалоге: не нужно заранее создавать токен или редактировать конфигурацию.
npx даёт полный доступ к кабинету.Попробуйте первым сообщением:
Покажи кампании моего аккаунта и расход за прошлую неделю по группам объявлений.
Подключить сервер · Посмотреть сценарии · Открыть техническую документацию
Вы: Подключи Яндекс Директ.
Ассистент: Даёт ссылку на вход в Яндекс. Откройте её под аккаунтом с доступом к нужному рекламному кабинету, подтвердите доступ и пришлите показанный код.
Вы: Отправляет код со страницы Яндекса.
Ассистент: Подключает Директ и показывает кабинет. Перезапускать приложение не нужно.
Вы: Покажи кампании моего аккаунта и расход за прошлую неделю по группам объявлений.
Ассистент: Находит кампании, строит отчёт по группам объявлений и показывает расход в валюте аккаунта.
Удалённый сервер https://mcp.askads.ru/mcp подключается через приложение, которое поддерживает MCP по URL. Войдите в Яндекс в браузере и подтвердите доступ: токен не нужно передавать в конфиг. Этот вариант предназначен только для чтения — статистики, аудита и просмотра объектов; он не меняет настройки рекламы.
В Claude Code можно добавить его командой:
claude mcp add --transport http yandex-direct https://mcp.askads.ru/mcp
После подключения откройте /mcp и пройдите авторизацию. В остальных поддерживающих HTTP MCP приложениях добавьте тот же URL через интерфейс приложения.
npxДля создания и изменения объектов нужен Node.js 20+. npx скачает сервер при первом запуске — отдельно устанавливать пакет не нужно. Получать токен заранее не требуется — подключение начинается прямо в диалоге:
Для CI и агентских установок — готовый токен и YANDEX_DIRECT_LOGIN, см. Подключение и настройка.
Через интерфейс приложения:
npx -y mcp-yandex-direct@latest.Через командную строку:
codex mcp add yandex-direct -- npx -y mcp-yandex-direct@latest
Проверьте подключение:
codex mcp list
claude mcp add --transport stdio --scope user yandex-direct -- npx -y mcp-yandex-direct@latest
Проверить подключение: claude mcp list.
Откройте Settings → Developer → Edit Config и добавьте в claude_desktop_config.json:
{
"mcpServers": {
"yandex-direct": {
"command": "npx",
"args": ["-y", "mcp-yandex-direct@latest"]
}
}
}
Если раздела Developer нет, откройте файл вручную: macOS — ~/Library/Application Support/Claude/claude_desktop_config.json, Windows — %APPDATA%\Claude\claude_desktop_config.json. Перезапустите Claude Desktop.
Откройте ~/.cursor/mcp.json, чтобы подключить сервер во всех проектах, или .cursor/mcp.json в конкретном проекте. Добавьте:
{
"mcpServers": {
"yandex-direct": {
"command": "npx",
"args": ["-y", "mcp-yandex-direct@latest"]
}
}
}
В палитре команд выполните MCP: Open User Configuration. В открывшемся mcp.json добавьте сервер:
{
"servers": {
"yandex-direct": {
"type": "stdio",
"command": "npx",
"args": ["-y", "mcp-yandex-direct@latest"]
}
}
}
После сохранения выполните MCP: List Servers и запустите сервер из списка.
Реклама обычно строится из трёх уровней: кампания → группа объявлений → объявление. В группе находятся ключевые фразы, настройки показа и корректировки ставок. У объявлений могут быть быстрые ссылки, уточнения, визитки и изображения.
Сервер помогает смотреть на эти объекты вместе: связать расход кампании со статистикой групп, ключевыми фразами и объявлениями. Он умеет создавать новые кампании и объявления только текстового типа. Кампании других типов можно читать, переименовывать, менять им бюджет, останавливать, архивировать и удалять по идентификатору.
Статистика формируется не мгновенно: get_statistics запускает отчёт в сервисе Reports и ждёт его готовности. Большие списки autoPaginate проходит по страницам выдачи автоматически.
Удалённый сервер по URL только читает данные. Локальный сервер через npx может изменить живой рекламный кабинет:
| Действие | Что происходит | На что обратить внимание |
|---|---|---|
| Читать статистику и объекты | Сервер получает кампании, объявления, ключевые фразы, баланс и отчёты. | Эти вызовы не меняют данные и не двигают деньги. |
| Создавать | Можно создать текстовую кампанию, группу, текстовое объявление, ключевые фразы, расширения или загрузить изображение. | Новые объекты попадут в боевой кабинет, если не включена песочница. |
| Обновлять | Можно менять бюджет, ставки, названия, минус-слова, настройки групп и корректировки ставок. | Изменение ставок и бюджетов может повлиять на расход. |
| Менять статус или удалять | Можно приостановить, возобновить, архивировать или удалить некоторые объекты. | Удаление и отдельные действия необратимы. |
| Прямой запрос API | raw_request открывает любой метод API, для которого нет отдельного инструмента. | Любой метод, кроме чтения, требует confirmWrite=true; данные там передаются в микроединицах. |
Инструменты передают AI-приложению метки чтения, записи и потенциально необратимого действия. Приложение может показать подтверждение, но его поведение зависит от клиента. Прямой запрос API дополнительно не выполнит запись без confirmWrite=true; для изменения рекламы нужна явная просьба.
Для обычного использования токен заранее не нужен:
Дальше подключение живёт само: доступ продлевается автоматически и не отваливается через год. Проверить состояние — попросите «покажи статус подключения», отключить — «отключи Директ». Выданный доступ отзывается в Яндекс ID.
Для CI и автоматических установок, где диалога нет, доступна настройка через переменные окружения:
| Переменная | Назначение |
|---|---|
YANDEX_DIRECT_TOKEN | Готовый OAuth-токен; имеет приоритет над входом из чата. |
YANDEX_DIRECT_LOGIN | Логин клиента при работе через агентский аккаунт; иначе API покажет аккаунт агентства. |
YANDEX_DIRECT_SANDBOX | true — работа в тестовой среде (песочнице) Яндекс Директа. |
YANDEX_DIRECT_OAUTH_CLIENT_ID | Client ID собственного OAuth-приложения вместо встроенного. |
YANDEX_DIRECT_LANG | Язык ответов API; по умолчанию ru. |
YANDEX_DIRECT_TIMEOUT_MS | Таймаут запроса; по умолчанию 60 000 мс. |
YANDEX_DIRECT_MAX_RETRIES | Число повторов при временных ошибках; по умолчанию 3. |
Получить готовый токен для YANDEX_DIRECT_TOKEN можно по ссылке, войдя под аккаунтом с доступом к нужному кабинету:
Не публикуйте токен в чатах, репозиториях и скриншотах: он даёт доступ к рекламному кабинету, включая действия, которые могут повлиять на бюджет.
По умолчанию сервер отправляет анонимные технические события: случайный идентификатор установки, название вызванного инструмента, версии сервера, AI-приложения, Node.js и операционной системы. Это нужно, чтобы понимать, какие части сервера используются и возникают ли проблемы при запуске. Токен Яндекса, данные рекламного кабинета, аргументы инструментов, тексты запросов, значения и названия переменных окружения не отправляются.
Чтобы отключить телеметрию для MCP-серверов Ask Ads, задайте переменную окружения:
ASKADS_TELEMETRY=0
get_quota показывает, сколько потрачено, осталось и доступно на сегодня.YANDEX_DIRECT_SANDBOX=true).Нашли ошибку или не хватает сценария? Создайте issue или напишите в Telegram.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y mcp-yandex-directMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-gistrec-mcp-yandex-direct": {
"command": "npx",
"args": [
"-y",
"mcp-yandex-direct"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceYandex Direct works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.