Odel
Avito Ads MCP

Avito Ads MCP

Local
@a1-x-techTypeScriptMITUpdated 1w ago

MCP server for the Avito Ads API: campaigns, ad groups, creatives, statistics and balances.

A1 Авито Реклама MCP

npm CI Glama License: MIT

A1 Авито Реклама MCP подключает AI-приложение к рекламному кабинету Авито Рекламы. Он помогает проверить кампании и статистику, управлять бюджетом и ставкой группы, работать с балансами агентства, доступами и документами ОРД — на естественном языке.

Это не API продавца Авито: сервер не работает с товарами, перепиской, заказами или продвижением объявлений продавца. Он работает только с медийными и performance-кампаниями рекламного кабинета Авито Рекламы.

  • 25 инструментов. Кампании, группы, креативы, статистика, баланс, дочерние аккаунты, пользователи и документы ОРД.
  • Узкие изменения кампаний. API позволяет менять только бюджет и ставку группы; создавать, редактировать, ставить на паузу или удалять кампании, группы и креативы нельзя.
  • Необратимые операции видны. Перевод денег или бонусов, удаление пользователя и технический запрос API помечены как destructive.
  • Недельный бюджет API. Каждый вызов тратит баллы; остаток apiPointBalance сервер возвращает с результатом.

Начните с запроса, который только читает данные:

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

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


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

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

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

Вы: Подготовь изменение ставки группы 101 до 350 рублей.

Ассистент: Показывает аккаунт, группу, текущую и новую ставку, затем запрашивает подтверждение.

Вы: Подтверждаю.

Ассистент: Меняет ставку только этой группы. Кампания, креативы и другие группы не меняются.

Содержание

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

Нужны Node.js 20+, Client Key, Client Secret и ID рекламного аккаунта Авито Рекламы. Для выдачи доступов нужна роль администратора аккаунта.

  1. Получите доступ.
  2. Добавьте сервер в AI-приложение.
  3. Отправьте безопасный первый запрос выше.
Codex

В Settings → MCP servers нажмите Add server, выберите STDIO, укажите команду npx -y mcp-avito-ads@latest и переменные окружения AVITO_ADS_CLIENT_ID, AVITO_ADS_CLIENT_SECRET и AVITO_ADS_ACCOUNT_ID, затем нажмите Save, потом Restart.

codex mcp add avito-ads \
  --env AVITO_ADS_CLIENT_ID=your_client_key \
  --env AVITO_ADS_CLIENT_SECRET=your_client_secret \
  --env AVITO_ADS_ACCOUNT_ID=your_account_id \
  -- npx -y mcp-avito-ads@latest
codex mcp list

Документация Codex MCP

Claude Code
claude mcp add \
  --env AVITO_ADS_CLIENT_ID=your_client_key \
  --env AVITO_ADS_CLIENT_SECRET=your_client_secret \
  --env AVITO_ADS_ACCOUNT_ID=your_account_id \
  --transport stdio --scope user avito-ads \
  -- npx -y mcp-avito-ads@latest
claude mcp list

Документация Claude Code MCP

Claude Desktop

Актуальный официальный путь — Settings → Extensions. Для пользовательского desktop extension откройте Advanced settings → Extension Developer → Install Extension…, выберите файл .mcpb и следуйте подсказкам.

Этот репозиторий сейчас публикует npm-пакет со stdio и пока не содержит .mcpb. Поэтому используйте приведённый ниже JSON stdio-конфиг как fallback только в сборках Claude Desktop, где ещё поддерживается локальная конфигурация:

{"mcpServers":{"avito-ads":{"command":"npx","args":["-y","mcp-avito-ads@latest"],"env":{"AVITO_ADS_CLIENT_ID":"your_client_key","AVITO_ADS_CLIENT_SECRET":"your_client_secret","AVITO_ADS_ACCOUNT_ID":"your_account_id"}}}}

В таких сборках сохраните его в ~/Library/Application Support/Claude/claude_desktop_config.json на macOS или %APPDATA%\Claude\claude_desktop_config.json на Windows.

Документация Claude Desktop MCP

Cursor

Добавьте {"mcpServers":{"avito-ads":{"type":"stdio","command":"npx","args":["-y","mcp-avito-ads@latest"],"env":{"AVITO_ADS_CLIENT_ID":"your_client_key","AVITO_ADS_CLIENT_SECRET":"your_client_secret","AVITO_ADS_ACCOUNT_ID":"your_account_id"}}}} в ~/.cursor/mcp.json на macOS/Linux или %USERPROFILE%\.cursor\mcp.json на Windows. Документация Cursor MCP

VS Code

Запустите MCP: Open User Configuration и добавьте:

{"servers":{"avito-ads":{"type":"stdio","command":"npx","args":["-y","mcp-avito-ads@latest"],"env":{"AVITO_ADS_CLIENT_ID":"${input:avito_client_id}","AVITO_ADS_CLIENT_SECRET":"${input:avito_client_secret}","AVITO_ADS_ACCOUNT_ID":"${input:avito_account_id}"}}},"inputs":[{"type":"promptString","id":"avito_client_id","description":"Avito Ads Client Key"},{"type":"promptString","id":"avito_client_secret","description":"Avito Ads Client Secret","password":true},{"type":"promptString","id":"avito_account_id","description":"ID рекламного аккаунта"}]}

Проверьте сервер командой MCP: List Servers. Документация VS Code MCP

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

  • Покажи кампании, группы, креативы, статусы и статистику за период.
  • Сравни расход, CTR, CPM, CPC или VTR по группам и креативам.
  • Проверь баланс и дочерние аккаунты агентства.
  • Подготовь изменение бюджета или ставки одной группы.
  • Создай рекламодателя и договор ОРД, сначала показав передаваемые реквизиты.
  • Добавь пользователя, измени его роль или отзови доступ после подтверждения.

Что может измениться

ОперацияЧто происходитГраница подтверждения
Кампании, группы, креативы, статистика, баланс, пользователи и ОРДЧитает данные аккаунтаНичего не меняет
Бюджет или ставка группыМеняет одно из двух доступных API-полей группыМеняет рекламную группу
Пользователь и рольВыдаёт доступ или меняет рольМеняет доступы аккаунта
Рекламодатель, договор, дочерний или sandbox-аккаунтСоздаёт новую записьНеобратимо создаёт объект
Перевод денег или бонусов, удаление пользователяМеняет баланс или удаляет доступРазрушительно и необратимо
Raw API requestМожет менять данные при confirmWrite: trueПотенциально разрушительно

Кампании, группы и креативы нельзя создавать, редактировать, ставить на паузу, архивировать или удалять через этот API. Креативы и таргетинги тоже недоступны для записи.

Получение доступа

  1. Откройте кабинет Авито Рекламы пользователем с ролью администратора.
  2. Создайте API-приложение и скопируйте Client Key и Client Secret.
  3. Скопируйте ID рекламного аккаунта.
  4. Передайте их как AVITO_ADS_CLIENT_ID, AVITO_ADS_CLIENT_SECRET, AVITO_ADS_ACCOUNT_ID.

Сервер получает Bearer token через OAuth2 client_credentials. Храните Client Secret как пароль. ID аккаунта задан конфигурацией: инструменты не смогут случайно перейти в другой аккаунт.

Для репетиции записей можно задать AVITO_ADS_ENVIRONMENT=sandbox. Песочница не является полной копией production: например, баланс там недоступен.

Настройка

ПеременнаяОбязательнаОписание
AVITO_ADS_CLIENT_IDДаClient Key API-приложения.
AVITO_ADS_CLIENT_SECRETДаClient Secret API-приложения.
AVITO_ADS_ACCOUNT_IDДаID рекламного аккаунта.
AVITO_ADS_ENVIRONMENTНетproduction или sandbox; по умолчанию production.
AVITO_ADS_TIMEOUT_MSНетТайм-аут запроса; по умолчанию 30000 мс.
AVITO_ADS_MAX_RETRIESНетПовторы 429; по умолчанию 4.

Данные, лимиты и работа в фоне

  • Недельный бюджет баллов. Баллы пополняются в понедельник в 00:00 UTC. Один длинный отчёт до 100 дней обычно экономнее серии коротких; сервер показывает apiPointBalance с каждым результатом.
  • Временные ошибки. При 429 в ошибке возвращаются Retry-After и остаток баллов. Записи не повторяются после сетевой или 5xx ошибки, чтобы не перевести деньги дважды.
  • Постоянного наблюдения нет. Сервер работает только при вызове. Если AI-приложение поддерживает задания по расписанию, оно может периодически собирать статистику и остаток баллов.
  • Анонимная телеметрия. В неё не попадают секреты, данные аккаунта, аргументы и промпты; отключение: ASKADS_TELEMETRY=0.

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

Поддержка

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


Две Моны дают пять

Вы дочитали до конца!