vk-ads-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vk-ads-mcpget top 5 ad groups by CTR in campaign 456"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
vk-ads-mcp
MCP-сервер для Claude Code: отдаёт статистику и структуру рекламных кампаний
VK Рекламы (новый кабинет ads.vk.com, база https://ads.vk.com/api/v2).
Только чтение. Ничего не создаёт и не меняет. Рассчитан на свой кабинет.
Под капотом — тот же движок, что у myTarget. Словарь объектов:
ad_plans — кампании, ad_groups — группы объявлений, banners — объявления.
Инструменты
Инструмент | Что делает |
| список кампаний ( |
| список групп объявлений, фильтр по кампании |
| список объявлений, фильтр по группе |
| статистика по |
| топ кампаний / групп / объявлений по метрике ( |
| список допустимых полей для |
| выгрузка статистики в CSV-файл |
| остаток квоты API для диагностики |
Списочные инструменты по умолчанию отдают минимальный набор полей. Чтобы получить
больше данных, передайте fields (через запятую). Какие поля доступны для объекта —
подскажет describe_fields.
Ресурсы и промпт
Ресурс | Что внутри |
| справочник групп метрик статистики ( |
| иерархия |
Промпт campaign_analysis — пошаговый сценарий разбора кампаний на русском.
Принимает необязательные date_from, date_to, objective.
Анализ и рекомендации
Сервер не только отдаёт данные, но и помогает их разобрать по схеме анализ → ранжирование → рекомендации:
Анализ.
list_campaignsиget_statisticsдают структуру и цифры за период. Ресурсыvk-ads://metricsиvk-ads://objectsобъясняют, что значат метрики и поля.Ранжирование.
get_top_objectsпоказывает лучшие и худшие объекты по нужной метрике:order=descдля CTR и конверсий,order=ascдляcpc/cpa, где меньше — лучше.Рекомендации. Промпт
campaign_analysisсобирает шаги в готовый сценарий: на что смотреть, что отключить, где поднять ставку.
Доступ к API
client_id/client_secret не выдаются автоматически. В кабинете VK Рекламы:
Настройки → Доступ к API → Запросить доступ к API (или письмо на
ads_api@vk.team). client_secret показывают один раз. Подробнее —
в исходном обзоре ../Open-Source решения для MCP Server VK Ads — полный обзор.md.
Настройка
Скопируйте .env.example в .env и задайте пару из кабинета:
VK_ADS_CLIENT_ID=...
VK_ADS_CLIENT_SECRET=...Сервер сам получит и обновит токен через grant_type=client_credentials
(и перезапросит при 401). Если когда-нибудь окажется готовый Bearer-токен —
можно вместо пары задать VK_ADS_TOKEN, тогда OAuth не используется.
.env в git не попадает. .mcp.json хранит только плейсхолдеры
${VK_ADS_CLIENT_ID} / ${VK_ADS_CLIENT_SECRET}.
VK ограничивает кабинет 5 живыми токенами на client_id, а Claude Code часто
перезапускает сервер. Поэтому токен кешируется на диск
(~/.cache/vk-ads-mcp/token.json, права 0600) и переиспользуется между
перезапусками — новый токен не выпускается, пока старый не истёк. Путь меняется
через VK_ADS_TOKEN_CACHE.
Подключение к Claude Code
claude mcp add vk-ads --scope project \
--env VK_ADS_CLIENT_ID=$VK_ADS_CLIENT_ID \
--env VK_ADS_CLIENT_SECRET=$VK_ADS_CLIENT_SECRET \
-- uv run --with fastmcp fastmcp run src/vk_ads_mcp/server.pyКоманда дописывает .mcp.json в корень проекта (он уже здесь). Реальный токен
берётся из окружения при запуске, в репозиторий не коммитится.
Разработка
uv sync --all-extras --dev
uv run pytest -q # тесты, сеть не нужна (httpx замокан через respx)
uv run ruff check . # линт
uv run ruff format . # форматированиеОтладка вручную
uv run fastmcp dev src/vk_ads_mcp/server.pyПоднимает MCP Inspector — можно дёргать инструменты руками и смотреть ответы.
Структура
src/vk_ads_mcp/
app.py общий FastMCP-инстанс + ленивый клиент
config.py чтение env
auth.py OAuth2 client_credentials + refresh / Bearer-override
client.py весь HTTP: пагинация, чанкинг 92 дней / 50 id, бэкофф на 429
models.py pydantic-модели ответов
tools/ по файлу на инструмент
resources.py ресурсы vk-ads://metrics и vk-ads://objects
prompts.py промпт campaign_analysis
server.py точка входа (регистрирует инструменты, ресурсы, промпт, запускает stdio)
tests/ pytest + respxMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/Qusto/vk-ads-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server