Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Yandex Direct MCP

NPM · MCP-YANDEX-DIRECT · SCANNED SEP 20

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

Available components

0 this week 82 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability76
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 5674 tokens (~128/item across 44 items; 44 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
  • Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage98
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 94% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 5 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 45 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the Yandex Direct MCP server?

Yandex Direct MCP runs locally as an npm package, launched with npx -y mcp-yandex-direct. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · mcp-yandex-direct

# add to Claude Code
claude mcp add askads-mcp-yandex-direct -- npx -y mcp-yandex-direct
// .cursor/mcp.json
{
  "mcpServers": {
    "askads-mcp-yandex-direct": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-direct"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "askads-mcp-yandex-direct": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-direct"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add askads-mcp-yandex-direct -- npx -y mcp-yandex-direct
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "askads-mcp-yandex-direct": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "mcp-yandex-direct"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add askads-mcp-yandex-direct --command npx --arg -y --arg mcp-yandex-direct
# ~/.hermes/config.yaml
mcp_servers:
  askads-mcp-yandex-direct:
    command: "npx"
    args: ["-y", "mcp-yandex-direct"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "askads-mcp-yandex-direct": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "mcp-yandex-direct"
      ]
    }
  }
}
# add to Vellum
assistant mcp add askads-mcp-yandex-direct -t stdio -c npx -a -y mcp-yandex-direct
// mcp.json
{
  "mcpServers": {
    "askads-mcp-yandex-direct": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-yandex-direct"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 18 Sept 26 −3
    • Stability: pass → 0.80 functional
  • 17 Sept 26 0
    • Stability: 0.97 → pass security
  • 16 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 14 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 87 to 90. That category is still filling its 30-day observation window: 26 days of observed history at the previous scan, 27 at this one. The score rises as the window fills, whether or not the server changes.

  • 12 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 80 to 83. That category is still filling its 30-day observation window: 24 days of observed history at the previous scan, 25 at this one. The score rises as the window fills, whether or not the server changes.

  • 10 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 73 to 77. That category is still filling its 30-day observation window: 22 days of observed history at the previous scan, 23 at this one. The score rises as the window fills, whether or not the server changes.

  • 8 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 67 to 70. That category is still filling its 30-day observation window: 20 days of observed history at the previous scan, 21 at this one. The score rises as the window fills, whether or not the server changes.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/mcp-yandex-direct@1.5.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm

Background: How many MCP packages publish verified provenance →

Dependencies 96 packages
Packages resolved 96
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 44 exposed · ~5,226 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
ad_action ~54

Выполняет действие над объявлениями по id: moderate, suspend, resume, archive, unarchive или delete.

NameTypeReqDescription
actionstringyes
idsarrayyesId объявлений, к которым применить действие.

No output schema declared.

No examples provided.

add_bid_modifier ~167

Добавляет корректировку ставок на кампанию или группу объявлений. Значения BidModifier — проценты по правилам API (например, 0–1300), а не деньги.

NameTypeReqDescription
adGroupIdintegerId группы объявлений (либо это поле, либо campaignId).
campaignIdintegerId кампании (либо это поле, либо adGroupId).
demographicsarrayКорректировки по демографии.
desktopobjectКорректировка для десктопа.
mobileobjectКорректировка для мобильных.
regionalarrayКорректировки по регионам.
retargetingarrayКорректировки по ретаргетингу.

No output schema declared.

No examples provided.

add_callouts ~73

Создаёт уточнения, до 25 символов каждое. Уточнения неизменяемы — чтобы поменять, нужно удалить и создать заново. Привязка к объявлениям — через сервис Ads.

NameTypeReqDescription
textsarrayyesТексты уточнений, до 25 символов каждый.

No output schema declared.

No examples provided.

add_keywords ~59

Добавляет ключевые фразы в группу объявлений, при необходимости — со ставками для поиска и сетей.

NameTypeReqDescription
adGroupIdintegeryesId группы объявлений.
keywordsarrayyesКлючевые фразы для добавления.

No output schema declared.

No examples provided.

auth_status ~101

Показывает, подключён ли Яндекс Директ: есть ли токен, откуда он взят (переменная окружения YANDEX_DIRECT_TOKEN или сохранённый вход), когда истекает и где лежит файл с сохранёнными данными. Ничего не отправляет в сеть и не показывает сам токен. Вызовите это, если инструменты Директа отвечают, что подключение не настроено.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

campaign_action ~53

Выполняет действие над кампаниями по id: suspend, resume, archive, unarchive или delete.

NameTypeReqDescription
actionstringyes
idsarrayyesId кампаний, к которым применить действие.

No output schema declared.

No examples provided.

create_ad_group ~72

Создаёт группу объявлений в кампании с заданными регионами показа.

NameTypeReqDescription
campaignIdintegeryesId родительской кампании.
namestringyesНазвание группы объявлений.
regionIdsarrayyesId регионов показа, например [225] — Россия.

No output schema declared.

No examples provided.

create_sitelinks_set ~71

Создаёт набор быстрых ссылок (1–8 штук). Наборы неизменяемы — чтобы поменять ссылки, нужно создать новый набор и переназначить его объявлению.

NameTypeReqDescription
sitelinksarrayyesОт 1 до 8 быстрых ссылок.

No output schema declared.

No examples provided.

create_text_ad ~214

Создаёт текстовое объявление (TextAd) в группе объявлений. Новые объявления создаются черновиками. TextAdAdd требует хотя бы одно из Href/TurboPageId/VCardId/BusinessId — этот инструмент передаёт посадочную страницу через href (обязателен); объявление с BusinessId вместо ссылки создаётся через raw_request.

NameTypeReqDescription
adGroupIdintegeryesId родительской группы объявлений.
hrefstringyesURL посадочной страницы (обязателен для TextAdAdd).
mobilebooleanМобильное ли это объявление. Поле в API устарело (значение принудительно NO), но остаётся обязательным.
textstringyesТекст объявления, до 81 символа.
titlestringyesЗаголовок (Title 1), до 56 символов.
title2stringВторой заголовок (Title 2), до 30 символов.

No output schema declared.

No examples provided.

create_text_campaign ~215

Создаёт кампанию TextCampaign (текстово-графические объявления). Без biddingStrategy применяются ручные ставки на поиске с отключёнными сетями (Search HIGHEST_POSITION, Network SERVING_OFF); чтобы включить автостратегию или сети, передать biddingStrategy целиком — {Search, Network}.

NameTypeReqDescription
biddingStrategyobjectПолный объект BiddingStrategy {Search, Network}. Заменяет значение по умолчанию.
dailyBudgetAmountnumberДневной бюджет в валюте аккаунта (конвертируется в микроединицы).
dailyBudgetModestringРежим траты дневного бюджета: STANDARD — показы как можно быстрее, DISTRIBUTED — равномерно в течение дня. По умолчанию STANDARD.
endDatestringДата окончания в формате YYYY-MM-DD.
namestringyesНазвание кампании.
startDatestringyesДата начала в формате YYYY-MM-DD.

No output schema declared.

No examples provided.

create_vcard ~219

Создаёт виртуальную визитку в кампании. Визитки неизменяемы — чтобы поменять, нужно удалить и создать заново.

NameTypeReqDescription
apartmentstring
buildingstring
campaignIdintegeryesКампания, к которой относится визитка.
citystringyesГород, например Москва.
companyNamestringyesНазвание организации.
contactEmailstring
contactPersonstring
countrystringyesСтрана, например Россия.
extraMessagestringДополнительная информация на визитке.
housestring
ogrnstringОГРН.
phoneobjectyesКонтактный телефон.
streetstring
workTimestringyesВремя работы в формате API, например "1#5#9#00#18#00" — пн–пт 09:00–18:00.

No output schema declared.

No examples provided.

delete_ad_groups ~55

Удаляет группы объявлений по id (adgroups/delete). Вместе с группой удаляются её объявления и ключевые фразы; отменить это нельзя.

NameTypeReqDescription
idsarrayyesId групп, которые нужно удалить.

No output schema declared.

No examples provided.

delete_bid_modifiers ~39

Удаляет корректировки ставок по id (bidmodifiers/delete).

NameTypeReqDescription
idsarrayyesId корректировок, которые нужно удалить.

No output schema declared.

No examples provided.

delete_callouts ~35

Удаляет уточнения по id (adextensions/delete).

NameTypeReqDescription
idsarrayyesId уточнений, которые нужно удалить.

No output schema declared.

No examples provided.

delete_sitelinks ~54

Удаляет наборы быстрых ссылок по id (удалить можно только наборы, не привязанные ни к одному объявлению).

NameTypeReqDescription
idsarrayyesId наборов, которые нужно удалить.

No output schema declared.

No examples provided.

delete_vcards ~37

Удаляет визитки по id (vcards/delete).

NameTypeReqDescription
idsarrayyesId визиток, которые нужно удалить.

No output schema declared.

No examples provided.

finish_login ~124

Второй шаг подключения: обменивает код подтверждения из start_login на токен доступа, сохраняет его в файл только для владельца (0600) и сразу проверяет живым запросом к Директу. После успеха остальные инструменты работают немедленно — перезапускать клиент не нужно. Код одноразовый и живёт 10 минут: если он не принят, вызовите start_login заново и попросите свежий.

NameTypeReqDescription
codestringyesКод подтверждения, который Яндекс показал пользователю после входа.

No output schema declared.

No examples provided.

get_account_info ~64

Возвращает данные текущего аккаунта рекламодателя (логин, валюта, тип, страна) через сервис `clients` Яндекс Директа.

NameTypeReqDescription
fieldNamesarrayКакие поля клиента вернуть. По умолчанию — типовой набор.

No output schema declared.

No examples provided.

get_ad_images ~79

Возвращает список изображений из библиотеки изображений, ключ — хеш изображения. Новые изображения загружает upload_ad_image.

NameTypeReqDescription
hashesarrayФильтр по хешам изображений.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи.

No output schema declared.

No examples provided.

get_ad_videos ~81

Читает видео из библиотеки видео по id (API требует id). Загрузка идёт через raw_request (advideos/add).

NameTypeReqDescription
idsarrayyesId видео (обязательны по требованию API).
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи.

No output schema declared.

No examples provided.

get_balance ~154

Возвращает баланс общего счёта и финансовые поля (Amount, AmountAvailableForTransfer, Currency, Discount, AccountID) через устаревший сервис AccountManagement Live v4 — единственный API Яндекс Директа, который отдаёт баланс (в v5 финансового метода нет). Amount — строка в ВАЛЮТЕ АККАУНТА (не в микроединицах); отрицательный Amount означает задолженность. По умолчанию — собственный аккаунт токена; чтобы получить конкретные общие счета, передать logins.

NameTypeReqDescription
loginsarrayЛогины аккаунтов, по которым нужны данные. По умолчанию — собственный аккаунт токена.

No output schema declared.

No examples provided.

get_bid_modifiers ~147

Читает корректировки ставок (мобильные, десктоп, демография, ретаргетинг, регионы, видео) для кампаний или групп объявлений. BidModifier — это процент, а не деньги.

NameTypeReqDescription
adGroupIdsarrayФильтр по id групп объявлений.
campaignIdsarrayФильтр по id кампаний.
idsarrayФильтр по id корректировок.
levelsarrayУровни, на которых читать. По умолчанию оба: CAMPAIGN и AD_GROUP.
typesarrayФильтр по типам корректировок.

No output schema declared.

No examples provided.

get_callouts ~75

Возвращает список уточнений из библиотеки adextensions. Привязать уточнение к объявлению можно через сервис Ads.

NameTypeReqDescription
idsarrayФильтр по id уточнений.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи.

No output schema declared.

No examples provided.

get_creatives ~78

Возвращает список креативов (смарт-баннеры, HTML5) из библиотеки креативов.

NameTypeReqDescription
idsarrayФильтр по id креативов.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи.

No output schema declared.

No examples provided.

get_dictionaries ~69

Возвращает справочники Яндекс Директа (валюты, часовые пояса, константы, категории объявлений, …). GeoRegions может быть очень большим — для поиска регионов лучше get_regions.

NameTypeReqDescription
namesarrayyesНазвания нужных справочников.

No output schema declared.

No examples provided.

get_quota ~47

Возвращает сегодняшнюю квоту баллов API (потрачено / осталось / лимит) из заголовка Units — чтобы не упереться в дневной лимит.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_regions ~95

Ищет id регионов для таргетинга (те самые regionIds, которые нужны create_ad_group). Фильтр — подстрока названия; количество результатов ограничено limit.

NameTypeReqDescription
limitintegerМаксимум регионов в ответе. По умолчанию 50.
querystringПодстрока названия региона без учёта регистра, например 'Москва' или 'Moscow'.

No output schema declared.

No examples provided.

get_sitelinks ~90

Читает наборы быстрых ссылок по id. API требует id наборов — их можно взять из поля SitelinkSetId объявлений.

NameTypeReqDescription
idsarrayyesId наборов быстрых ссылок (обязательны по требованию API).
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи.

No output schema declared.

No examples provided.

get_statistics ~564

Запрашивает отчёт по эффективности через сервис Reports Яндекс Директа. По умолчанию отчёт АГРЕГИРОВАН за весь период (одна строка на объект) — добавлять "Date" в fieldNames только для динамики по дням или вопросов о трендах. ALL_TIME без фильтра по кампаниям отклоняется для отчётов SEARCH_QUERY/CRITERIA: нужно передать campaignIds или ограниченный период. SEARCH_QUERY_PERFORMANCE_REPORT возвращает не сырые строки, а ВЫЧИСЛЕННУЮ СВОДКУ (итоги по ВСЕМ строкам + детализация top-N + свёртка хвоста + количество строк без кликов и без конверсий); её форму задают sortBy/topN/minCost/queryContains/zeroClicksOnly/zeroConversionsOnly, а для подсчётов по конверсиям нужно добавить Conversions в fieldNames. Остальные типы отчётов возвращают строки, разделённые табуляцией (без заголовка).

NameTypeReqDescription
campaignIdsarrayОграничить отчёт этими id кампаний.
dateFromstringДата начала YYYY-MM-DD (обязательна для CUSTOM_DATE).
dateRangeTypestringПредустановленный период. Если заданы dateFrom/dateTo, подставляется CUSTOM_DATE.
dateTostringДата окончания YYYY-MM-DD (обязательна для CUSTOM_DATE).
fieldNamesarrayКолонки отчёта (должны быть допустимы для его типа).
includeVatbooleanВключать ли НДС в расход. По умолчанию true.
minCostnumberВключать в детализацию только строки с Cost >= этого значения.
orderstringПорядок сортировки строк детализации. По умолчанию desc.
queryContainsstringВключать только строки, где запрос или условие содержит эту подстроку (без учёта регистра).
reportTypestringТип отчёта. По умолчанию CAMPAIGN_PERFORMANCE_REPORT.
sortBystringМетрика для ранжирования строк детализации. По умолчанию Cost.
topNintegerМаксимум строк детализации в сводке (на сервере ограничено 100). По умолчанию 50.
zeroClicksOnlybooleanВключать в детализацию только строки с 0 кликов.
zeroConversionsOnlybooleanТолько строки с clicks>0 и 0 конверсий (нужно Conversions в fieldNames).

No output schema declared.

No examples provided.

get_vcards ~81

Читает виртуальные визитки по id. API требует id — их можно взять из поля VCardId объявлений.

NameTypeReqDescription
idsarrayyesId визиток (обязательны по требованию API).
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи.

No output schema declared.

No examples provided.

keyword_action ~53

Выполняет действие над ключевыми фразами по id: suspend, resume или delete.

NameTypeReqDescription
actionstringyes
idsarrayyesId ключевых фраз, к которым применить действие.

No output schema declared.

No examples provided.

list_ad_groups ~144

Возвращает список групп объявлений. Нужно передать campaignIds и/или ids — API Яндекс Директа требует хотя бы один критерий отбора.

NameTypeReqDescription
autoPaginatebooleanЗабрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём).
campaignIdsarrayФильтр по id кампаний.
fieldNamesarrayКакие поля группы вернуть.
idsarrayФильтр по id групп объявлений.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи (сколько объектов пропустить).

No output schema declared.

No examples provided.

list_ads ~185

Возвращает список объявлений с необязательными фильтрами по кампании, группе, id, состоянию и статусу.

NameTypeReqDescription
adGroupIdsarrayФильтр по id групп объявлений.
autoPaginatebooleanЗабрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём).
campaignIdsarrayФильтр по id кампаний.
fieldNamesarrayКакие поля объявления вернуть.
idsarrayФильтр по id объявлений.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи (сколько объектов пропустить).
statesarrayФильтр по состояниям объявлений.
statusesarrayФильтр по статусам модерации.

No output schema declared.

No examples provided.

list_campaigns ~202

Возвращает список кампаний с необязательными фильтрами по id, типу, состоянию и статусу. Денежные поля (DailyBudget.Amount и Funds общего счёта — Sum, Balance, SumAvailableForTransfer, Spend) отдаются в валюте аккаунта.

NameTypeReqDescription
autoPaginatebooleanЗабрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём).
fieldNamesarrayКакие поля кампании вернуть.
idsarrayФильтр по id кампаний.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи (сколько объектов пропустить).
statesarrayФильтр по состояниям кампаний.
statusesarrayФильтр по статусам модерации.
typesarrayФильтр по типам кампаний.

No output schema declared.

No examples provided.

list_keywords ~165

Возвращает список ключевых фраз с фильтром по кампании, группе объявлений или id. Bid и ContextBid отдаются в валюте аккаунта.

NameTypeReqDescription
adGroupIdsarrayФильтр по id групп объявлений.
autoPaginatebooleanЗабрать все страницы, идя по LimitedBy (limit тогда не ограничивает общий объём).
campaignIdsarrayФильтр по id кампаний.
fieldNamesarrayКакие поля ключевой фразы вернуть.
idsarrayФильтр по id ключевых фраз.
limitintegerМаксимум объектов на страницу.
offsetintegerСмещение постраничной выдачи (сколько объектов пропустить).

No output schema declared.

No examples provided.

logout ~84

Удаляет сохранённый токен Директа с диска. Токен, заданный переменной окружения YANDEX_DIRECT_TOKEN, не трогает — его нужно убирать из конфигурации клиента вручную. Доступ, выданный приложению, остаётся активным на стороне Яндекса: отозвать его можно в Яндекс ID.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

raw_request ~198

Универсальный запрос: вызывает напрямую любой сервис или метод API Яндекс Директа v5 (например service "bidmodifiers", method "get"). Нужен для сервисов, у которых нет отдельного инструмента. Деньги — в микроединицах (без конвертации). Методы чтения (get/has/check) выполняются свободно; любой другой метод считается записью и требует confirmWrite=true.

NameTypeReqDescription
confirmWritebooleanДолжен быть true для запуска метода записи (всё, кроме get/has/check).
methodstringyesМетод API, например get, add, update, delete, set, toggle, checkCampaigns.
paramsobjectОбъект params для метода — как есть.
servicestringyesПуть сервиса строчными буквами, например campaigns, bidmodifiers, sitelinks, vcards, changes, keywordsresearch.

No output schema declared.

No examples provided.

set_bid_modifiers ~97

Меняет процент существующих корректировок (bidmodifiers/set) по id корректировки. BidModifierSetItem принимает только Id и BidModifier; включить/выключить корректировку через API нельзя (метод bidmodifiers/toggle устарел и не поддерживается) — чтобы отключить корректировку, удалить её через delete_bid_modifiers.

NameTypeReqDescription
bidsarrayyesВ каждом элементе нужны id и percent.

No output schema declared.

No examples provided.

set_keyword_bids ~83

Задаёт ручные ставки на поиске и в сетях для ключевых фраз либо для всех фраз указанных групп объявлений или кампаний (keywordbids/set). Ставки — в валюте аккаунта.

NameTypeReqDescription
bidsarrayyesВ каждом элементе нужен один целевой id и хотя бы одно из полей bid/contextBid.

No output schema declared.

No examples provided.

start_login ~123

Первый шаг подключения Яндекс Директа без правки конфигурации и без перезапуска клиента. Возвращает ссылку на страницу Яндекс OAuth. Покажите ссылку пользователю целиком и попросите: открыть её в браузере под аккаунтом, у которого есть доступ к нужному рекламному кабинету, подтвердить доступ и прислать показанный код подтверждения. Полученный код передайте в finish_login. Код действует 10 минут. Сам по себе код бесполезен для постороннего: обменять его может только этот сервер.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

update_ad_group ~91

Обновляет название и/или регионы показа группы объявлений (adgroups/update).

NameTypeReqDescription
idintegeryesId группы, которую нужно обновить.
namestringНовое название группы.
negativeKeywordsarrayЗаменяет минус-фразы группы; пустой массив очищает их.
regionIdsarrayНовые id регионов показа.

No output schema declared.

No examples provided.

update_campaign ~211

Обновляет название, дату окончания и/или дневной бюджет кампании (campaigns/update). API требует передавать режим бюджета (Mode) вместе с суммой, поэтому если dailyBudgetMode не задан, текущий режим кампании дочитывается через campaigns/get и сохраняется — смена суммы не меняет темп открутки.

NameTypeReqDescription
dailyBudgetAmountnumberДневной бюджет в валюте аккаунта.
dailyBudgetModestringРежим траты дневного бюджета: STANDARD — показы как можно быстрее, DISTRIBUTED — равномерно в течение дня. Если не задан, сохраняется текущий режим кампании.
endDatestringНовая дата окончания в формате YYYY-MM-DD.
idintegeryesId кампании, которую нужно обновить.
namestringНовое название кампании.
negativeKeywordsarrayЗаменяет минус-фразы кампании; пустой массив очищает их.

No output schema declared.

No examples provided.

update_text_ad ~129

Обновляет заголовок, текст или посадочную страницу текстового объявления (ads/update). Правка активного объявления отправляет его на повторную модерацию.

NameTypeReqDescription
hrefstringНовый URL посадочной страницы.
idintegeryesId объявления, которое нужно обновить.
textstringНовый текст объявления, до 81 символа.
titlestringНовый заголовок (Title 1), до 56 символов.
title2stringНовый второй заголовок (Title 2), до 30 символов.

No output schema declared.

No examples provided.

upload_ad_image ~195

Загружает изображение в библиотеку изображений (adimages/add) и возвращает его AdImageHash — этот хеш подставляется в поле AdImageHash текстово-графического объявления. Изображение передаётся публичным URL (сервер сам скачает и закодирует) или в base64 через imageData. Яндекс принимает JPG/PNG/GIF до 10 МБ; текстово-графическому объявлению нужна горизонтальная картинка (минимум 1080×607).

NameTypeReqDescription
imageDatastringБайты изображения в base64 (префикс data:-URL отбрасывается). Нужно передать это поле или url.
namestringyesНазвание изображения в библиотеке.
urlstringПубличный URL изображения; сервер скачает его и закодирует в base64. Нужно передать это поле или imageData.

No output schema declared.

No examples provided.

Common questions

What is the Yandex Direct MCP server?

Yandex Direct MCP is listed in the public MCP registry as io.github.askads/mcp-yandex-direct. MCP server for Yandex Direct API v5: manage PPC campaigns, ads, keywords, and statistics. This page covers its npm package (mcp-yandex-direct).

Is the Yandex Direct MCP server safe to use?

Yandex Direct MCP scores 82 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Yandex Direct MCP server expose?

Yandex Direct MCP exposes 44 tools: auth_status, start_login, finish_login, logout, get_account_info, and 39 more. Their descriptions and schemas cost roughly 5,226 tokens of context every time the server is loaded.

Is the Yandex Direct MCP server still maintained?

Yandex Direct MCP is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Yandex Direct MCP server under?

Yandex Direct MCP declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.