Yandex Direct

io.github.gistrec由 GitHub 帳號 gistrec 發布v1.0.5更新於 Oct 24, 2026

MCP server for Yandex Direct API v5: manage PPC campaigns, ads, keywords, and statistics.

已驗證STDIO僅桌面資料與分析商業與電商

概覽

AI 產生的概覽

面向 Yandex Direct 廣告 API 的本機 MCP 伺服器,讓助理讀取廣告統計,並建立或修改廣告活動、廣告、關鍵字與出價。

可以做什麼
讀取廣告活動、廣告群組、廣告、關鍵字、出價、出價調整、附加資訊、帳戶餘額與 API 配額,並取得 Reports 服務的統計報表、自動翻頁處理大量清單。建立文字廣告活動、廣告群組、文字廣告、關鍵字、附加資訊與上傳圖片。更新預算、出價、名稱、排除關鍵字、廣告群組設定與出價調整。依 ID 暫停、恢復、封存或刪除物件。對沒有專屬工具的任意 API 方法送出原始請求。
適用情境
適合需要分析廣告預算流向、比較各廣告活動、廣告群組與關鍵字的花費、點擊率和單次點擊成本,或直接在對話中準備並套用 Yandex Direct 帳戶變更、不必在後台各頁面間切換的情境。
執行需求
透過 npx 在本機執行,需要 Node.js 20 或更新版本,首次啟動時下載套件。需要一個對目標廣告帳戶有權限的 Yandex Direct 帳戶。通常透過對話中的 Yandex OAuth 連結與驗證碼完成授權;CI 或無人值守環境可在 YANDEX_DIRECT_TOKEN 提供現成 OAuth 權杖,並可選設定 YANDEX_DIRECT_LOGIN、YANDEX_DIRECT_SANDBOX、YANDEX_DIRECT_LANG 等變數。需要連線至 Yandex Direct API 的網路。
安裝前請注意
本機伺服器會寫入真實廣告帳戶:可建立、更新、暫停、封存與刪除物件,修改出價或預算可能影響實際花費。刪除與部分操作無法復原,測試時請使用 YANDEX_DIRECT_SANDBOX。YANDEX_DIRECT_TOKEN 擁有帳戶完整權限並可花費預算,不要將其暴露在對話、程式碼儲存庫或截圖中。原始請求工具可呼叫任意 API 方法,其中的寫入操作需要 confirmWrite=true。預設會傳送匿名技術遙測資料。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Yandex Direct,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Яндекс Директ MCP

[npm] [CI] [Glama] [License: MIT]

Яндекс Директ MCP подключает AI-приложение к рекламному кабинету Яндекс Директа. Спросите на естественном языке, куда уходит рекламный бюджет, сопоставьте кампании, объявления и ключевые фразы, а затем подготовьте или внесите нужные изменения без переходов между разделами кабинета. Подключение начинается прямо в диалоге: не нужно заранее создавать токен или редактировать конфигурацию.

  • 46 инструментов. Кампании, группы, объявления, ключевые фразы, ставки, корректировки, расширения, статистика, баланс, справочники и подключение аккаунта прямо в диалоге.
  • Два способа подключения. Удалённый сервер по URL не требует вручную получать токен и только читает данные; локальный через npx даёт полный доступ к кабинету.
  • Подключение в чате. Яндекс откроет страницу входа; после кода из чата можно сразу работать с рекламой, а доступ действует около года.
  • Деньги в понятном виде. В удобных инструментах бюджеты, ставки и баланс показываются в валюте аккаунта, а не в микроединицах API.
  • Реальная реклама. Локальные изменения применяются в боевом кабинете и могут повлиять на расход. Для работы в тестовой среде есть песочница Яндекс Директа.

Попробуйте первым сообщением:

Покажи кампании моего аккаунта и расход за прошлую неделю по группам объявлений.

Подключить сервер · Посмотреть сценарии · Открыть техническую документацию


Увидеть работу за минуту

Вы: Подключи Яндекс Директ.

Ассистент: Даёт ссылку на вход в Яндекс. Откройте её под аккаунтом с доступом к нужному рекламному кабинету, подтвердите доступ и пришлите показанный код.

Вы: Отправляет код со страницы Яндекса.

Ассистент: Подключает Директ и показывает кабинет. Перезапускать приложение не нужно.

Вы: Покажи кампании моего аккаунта и расход за прошлую неделю по группам объявлений.

Ассистент: Находит кампании, строит отчёт по группам объявлений и показывает расход в валюте аккаунта.

Содержание

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

  1. Выберите способ подключения и добавьте сервер в AI-приложение по инструкции ниже.
  2. Откройте новый диалог и спросите: «Покажи кампании моего аккаунта и расход за прошлую неделю по группам объявлений».

Анализ без самостоятельного получения токена — по URL

Удалённый сервер https://mcp.askads.ru/mcp подключается через приложение, которое поддерживает MCP по URL. Войдите в Яндекс в браузере и подтвердите доступ: токен не нужно передавать в конфиг. Этот вариант предназначен только для чтения — статистики, аудита и просмотра объектов; он не меняет настройки рекламы.

В Claude Code можно добавить его командой:

bash
claude mcp add --transport http yandex-direct https://mcp.askads.ru/mcp

После подключения откройте /mcp и пройдите авторизацию. В остальных поддерживающих HTTP MCP приложениях добавьте тот же URL через интерфейс приложения.

Полный доступ — локально через npx

Для создания и изменения объектов нужен Node.js 20+. npx скачает сервер при первом запуске — отдельно устанавливать пакет не нужно. Получать токен заранее не требуется — подключение начинается прямо в диалоге:

  1. Добавьте сервер в AI-приложение — ниже открыт пример для Codex, остальные приложения собраны в сворачиваемые инструкции.
  2. Напишите: «Подключи Яндекс Директ» — ассистент проведёт через вход в Яндекс и покажет кабинет.

Для CI и агентских установок — готовый токен и YANDEX_DIRECT_LOGIN, см. Подключение и настройка.

Codex

Через интерфейс приложения:

  1. Откройте Settings → Plugins → MCP servers.
  2. Нажмите Add server.
  3. Добавьте команду запуска npx -y mcp-yandex-direct@latest.

Через командную строку:

bash
codex mcp add yandex-direct -- npx -y mcp-yandex-direct@latest

Проверьте подключение:

bash
codex mcp list

Официальная инструкция Codex

Claude Code
bash
claude mcp add --transport stdio --scope user yandex-direct -- npx -y mcp-yandex-direct@latest

Проверить подключение: claude mcp list.

Claude Desktop

Откройте Settings → Developer → Edit Config и добавьте в claude_desktop_config.json:

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

Откройте ~/.cursor/mcp.json, чтобы подключить сервер во всех проектах, или .cursor/mcp.json в конкретном проекте. Добавьте:

json
{  "mcpServers": {    "yandex-direct": {      "command": "npx",      "args": ["-y", "mcp-yandex-direct@latest"]    }  }}
VS Code

В палитре команд выполните MCP: Open User Configuration. В открывшемся mcp.json добавьте сервер:

json
{  "servers": {    "yandex-direct": {      "type": "stdio",      "command": "npx",      "args": ["-y", "mcp-yandex-direct@latest"]    }  }}

После сохранения выполните MCP: List Servers и запустите сервер из списка.

Что можно поручить

Проверить, как расходуется бюджет

  • «Какие кампании за прошлую неделю потратили больше всего?»
  • «Какие объявления получают показы и клики, но не дают конверсий?»
  • «Сравни расход, CTR и среднюю цену клика по кампаниям за месяц».
  • «Покажи баланс счёта и остаток дневной квоты API».
  • «Покажи клиентов агентства» и «Какие кампании идут у клиента shop-msk?» — клиент выбирается прямо в диалоге.
  • «Что у меня по аккаунтам в управлении?», «Сколько вчера потратил каждый клиент?» — сводка по балансу, кампаниям и расходу всех клиентов за один вызов.

Найти точки для улучшения

  • «Какие ключевые фразы тратят бюджет, но не приносят кликов?»
  • «Какие группы и объявления сейчас остановлены или не проходят модерацию?»
  • «Проверь, какие корректировки ставок действуют для мобильных устройств».
  • «Какие быстрые ссылки и уточнения есть у этой кампании?»

Подготовить изменения

  • «Предложи новые ставки для фраз с высоким CTR и покажи изменения до применения».
  • «Проверь, есть ли в кампании минус-слова для этой темы, и подготовь список».
  • «Собери параметры новой текстовой кампании для Москвы: бюджет, группы, ключевые фразы и объявления».

Выполнить явное действие

  • «Добавь эти ключевые фразы в группу 123 и установи ставку 45 ₽».
  • «Приостанови объявление 456».
  • «Отправь страницу с изображением в библиотеку объявлений».

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

Реклама обычно строится из трёх уровней: кампания → группа объявлений → объявление. В группе находятся ключевые фразы, настройки показа и корректировки ставок. У объявлений могут быть быстрые ссылки, уточнения и изображения.

Сервер помогает смотреть на эти объекты вместе: связать расход кампании со статистикой групп, ключевыми фразами и объявлениями. Он умеет создавать новые кампании и объявления только текстового типа. Кампании других типов можно читать, переименовывать, менять им бюджет, останавливать, архивировать и удалять по идентификатору.

Статистика формируется не мгновенно: get_statistics запускает отчёт в сервисе Reports и ждёт его готовности. Большие списки autoPaginate проходит по страницам выдачи автоматически.

Что может изменить данные

Удалённый сервер по URL только читает данные. Локальный сервер через npx может изменить живой рекламный кабинет:

ДействиеЧто происходитНа что обратить внимание
Читать статистику и объектыСервер получает кампании, объявления, ключевые фразы, баланс и отчёты.Эти вызовы не меняют данные и не двигают деньги.
СоздаватьМожно создать текстовую кампанию, группу, текстовое объявление, ключевые фразы, расширения или загрузить изображение.Новые объекты попадут в боевой кабинет, если не включена песочница.
ОбновлятьМожно менять бюджет, ставки, названия, минус-слова, настройки групп и корректировки ставок.Изменение ставок и бюджетов может повлиять на расход.
Менять статус или удалятьМожно приостановить, возобновить, архивировать или удалить некоторые объекты.Удаление и отдельные действия необратимы.
Прямой запрос APIraw_request открывает любой метод API, для которого нет отдельного инструмента.Любой метод, кроме чтения, требует confirmWrite=true; данные там передаются в микроединицах.

Инструменты передают AI-приложению метки чтения, записи и потенциально необратимого действия. Приложение может показать подтверждение, но его поведение зависит от клиента. Прямой запрос API дополнительно не выполнит запись без confirmWrite=true; для изменения рекламы нужна явная просьба.

Подключение и настройка

Для обычного использования токен заранее не нужен:

  1. В чате попросите подключить Яндекс Директ.
  2. Откройте ссылку на Яндекс OAuth под аккаунтом с доступом к нужному рекламному кабинету.
  3. Подтвердите доступ и пришлите в чат показанный код. Всё, можно работать с рекламой: перезапускать клиент не нужно, конфигурацию править тоже.

Доступ действует около года. Когда он истечёт или будет отозван, сервер попросит подключиться заново тем же способом. Автоматическое продление работает только с собственным OAuth-приложением: задайте YANDEX_DIRECT_OAUTH_CLIENT_ID и YANDEX_DIRECT_OAUTH_CLIENT_SECRET, потому что Яндекс не продлевает токены без секрета приложения. Проверить состояние — попросите «покажи статус подключения», отключить — «отключи Директ». Выданный доступ отзывается в Яндекс ID.

Для CI и автоматических установок, где диалога нет, доступна настройка через переменные окружения:

ПеременнаяНазначение
YANDEX_DIRECT_TOKENГотовый OAuth-токен; имеет приоритет над входом из чата.
YANDEX_DIRECT_LOGINКлиент по умолчанию для агентского аккаунта; иначе API покажет аккаунт агентства. Любой инструмент принимает и client_login — так один сервер работает со всеми клиентами.
YANDEX_DIRECT_CLIENTSЛогины кабинетов в управлении через запятую (вы — представитель, не агентство). API их не перечисляет, поэтому список для list_clients берётся отсюда.
YANDEX_DIRECT_SANDBOXtrue — работа в тестовой среде (песочнице) Яндекс Директа.
YANDEX_DIRECT_OAUTH_CLIENT_IDClient ID собственного OAuth-приложения вместо встроенного.
YANDEX_DIRECT_OAUTH_CLIENT_SECRETСекрет этого приложения. Нужен только для автоматического продления доступа: без секрета Яндекс токен не продлевает.
YANDEX_DIRECT_LANGЯзык ответов API; по умолчанию ru.
YANDEX_DIRECT_TIMEOUT_MSТаймаут запроса; по умолчанию 60 000 мс.
YANDEX_DIRECT_MAX_RETRIESЧисло повторов при временных ошибках; по умолчанию 3.

Получить готовый токен для YANDEX_DIRECT_TOKEN можно по ссылке, войдя под аккаунтом с доступом к нужному кабинету:

Получить токен Яндекс Директа

Не публикуйте токен в чатах, репозиториях и скриншотах: он даёт доступ к рекламному кабинету, включая действия, которые могут повлиять на бюджет.

Данные и телеметрия

По умолчанию сервер отправляет анонимные технические события: случайный идентификатор установки, название вызванного инструмента, версии сервера, AI-приложения, Node.js и операционной системы. Это нужно, чтобы понимать, какие части сервера используются и возникают ли проблемы при запуске. При вызове инструмента сервер также отправляет его исход, а при ошибке - фрагмент её текста: код и сообщение, в которых e-mail, адреса, токены, числа от 4 цифр и текст в кавычках заменены на «#». Если в тексте ошибки есть значение из запроса, оно тоже может попасть во фрагмент. Токен Яндекса, данные рекламного кабинета, аргументы инструментов, тексты запросов, значения и названия переменных окружения не отправляются.

Чтобы отключить телеметрию для MCP-серверов Ask Ads, задайте переменную окружения:

bash
ASKADS_TELEMETRY=0

Ограничения

  • Дневная квота API. Каждый вызов расходует Units. Инструмент get_quota показывает, сколько потрачено, осталось и доступно на сегодня.
  • Лимиты отчётов. У отчётов Яндекса есть собственные ограничения на объём и количество в сутки, а готовность отчёта в сервисе Reports приходится ждать.
  • Большие списки. Если при автоматической пагинации достигнут внутренний предел, сервер явно отмечает результат как неполный, а не скрывает это.
  • Временные ошибки. Сервер делает до трёх повторов при ограничениях частоты. Ошибки сети и сервера автоматически повторяются только для чтения, чтобы не продублировать изменение.
  • Боевой кабинет. Локальные изменения применяются в реальном рекламном кабинете и могут повлиять на расход. Для тестов используйте песочницу (YANDEX_DIRECT_SANDBOX=true).
  • Нет постоянного наблюдения. Сервер работает во время вызова из AI-приложения. Если приложение поддерживает регулярные задания, можно настроить периодический запрос для проверки нужных показателей.

Техническая документация

Поддержка

Нашли ошибку или не хватает сценария? Создайте issue или напишите в Telegram.

來源:README.md,提交 6b6fa54

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.0.5最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分