Сколько времени у вас отнимает ручной поиск связок в библиотеке рекламы? Найти похудалку на Францию займет меньше 30 минут? Перелопатить фитнес, курсы, приложения, миллионы читалок и другого мусора. Потом сменить ключевую фразу и по новой.
За эти полчаса можно дать AI команду и на автомате:
прокрутить десятки ключевых фраз в одном ГЕО;
загрузить тысячи активных кампаний;
отфильтровать их сначала скриптами, потом с Gemini;
получить файл с очищенным списком объявлений.
При этом не придется открывать Ads Library. Вся работа упрощена до «описал задачу — получил результат». Мы получаем раскадровку крео, тексты и ссылки на ФП, объяву и ленд. SPY работает по API внутри IDE на устройстве без API-ключа от библиотеки Цукера.
Пример поиска: 11 ключевых фраз и 4000+ объявлений за 10–15 минут.
В этой статье покажем готовый MCP под бесплатный Antigravity IDE. Не погружаясь сильно в техничку, расскажем, как работает сервер, как установить и пользоваться.
Автор материала Adultologist — медиабайер и создатель MCP-сервера. Если столкнетесь с проблемами, останутся вопросы после прочтения материала, есть предложения — напишите в канал.
Версия сервера под Cursor и Claude будет во второй части материала. Начнем с оригинала, который вдохновил на создание кастомного спая.
Ads Library MCP Server
Ads Library MCP Server — это инструмент для поиска рекламы в библиотеке Facebook*. С его помощью вы можете найти объявления компаний и брендов и анализировать их рекламу: изображения, текст, видео. Он предназначен для ресерча буквально в несколько кликов. Сервер ищет фанки по слову или фразе. Затем со всех подходящих ФП тянет объявления.
Исследование подходов iGaming-направлений на основе 400+ объявлений по промпту на 2 предложения заняло меньше минуты.
Решение полезное, когда нужно парсить крупные бренды. Оно может подсказать, как изменилась реклама social-казино после выхода нового закона, или сравнить подходы крупных контор.
Пример полного процесса с оригинальной сборкой:
- Пользователь: «Найди рекламу Nike».
- Поиск компаний: система ищет страницы с названием, содержащим Nike, и возвращает список с Platform ID.
- Получение объявлений: скрипт берет Platform ID (например, Nike: 123456789) и запрашивает объявления этой страницы.
- Результат: пользователь видит список активных объявлений Nike с текстами, изображениями и датами.
Только под баинг этот сервер не очень актуален. Проблема в том, что у арбитражников тысячи ФП и искать по их названиям бесполезно. А смотреть по ключевым фразам в тексте и крео инструмент не умеет, но мы его научим чуть позже.
MySpy Antigravity
Это уже пересобранная версия спая. Ищет сразу по множеству ключевых фраз, фильтрует часть мусора скриптами и анализирует креативы глазами ИИ.
Что требуется для запуска MySpy:
попросить IDE агента клонировать репозиторий;
скопипастить конфиг в настройки IDE;
установить ключ Gemini и Scrapecreators.
Дальше можно начать пользоваться. Если вы не кодер, пока не спешите инсталлить. Ниже в деталях покажем весь процесс.
Установка MCP в Antigravity
Если умеете работать в терминале, откройте репу и ставьте. Инструкции ниже для нетехнарей.
Откройте IDE в новой папке и вбейте промпт:
«Изучи репозиторий https://github.com/whygithub7/MySpy-Antigravity и помоги его установить в текущую папку. Команды не пытайся запускать самостоятельно, возвращайся сюда по отдельности, чтобы я скопировал в терминал. Давай начнем с проверки наличия питона».
Далее следуйте пошаговой инструкции агента. Если попробует выполнить сам команды и зависнет, прервите выполнение и напомните, что так нельзя поступать.
Показали на видео весь процесс установки.
Как использовать
- Откройте Antigravity, попросите найти по N количеству фраз нужное вам направление и отфильтровать.
- Подождите, пока закончится работа агента.
- Найдите результаты в папке results.
Что с этим делать дальше уже опционально:
можете сгенерировать и скопипастить функцию для консоли браузера, которая запускает раз в 10 секунд 1 внешнюю ссылку из этого файла;
дать команду запустить по очереди все линки во внутреннем браузере;
отсортировать объявления по наличию UTM-параметров трекера во внешней ссылке: utm_term, utm_campaign, fbpixel;
пройтись HTTP-запросом и проанализировать все ссылки на наличие кло;
сгенерировать HTML с демонстрацией всей отфильтрованной рекламы.
Можно спаить офферы
MCP-сервер изучит актив и подскажет, какой оффер чаще льется по одному из направлений нутры. Достаточно заполнить промпт, дать список названий + страну, и SPY расскажет, какие продукты льются, какие масштабируют, сколько рекламы запущено.
Что улучшили в Ads Library MCP Server
Мы добавили поиск по ключевым фразам и строгую фильтрацию в несколько шагов.
Сперва написали сервер под Cursor, и когда попытались поднять его с детища Гугла, столкнулись с кучей круговых ошибок. Оказалось, Antigravity не поддерживает установку пакетов, которые написаны под большинство вайб-игрушек. Поэтому пришлось убрать часть библиотек, местами заменить мозги на скрипты, сохранив бизнес-логику.
Особенности поиска и фильтрации
Ниже речь пойдет про внутрянку, инфа не обязательна для использования, но будет полезна.
Мы хотели решение, в котором достаточно задать промпт без специфических инструкций, режимов, тегов и получить результат. Поэтому не стали раздувать функционал. В итоге имеем спаинг через общение человеческим языком.
Поиск:
в режиме широкого соответствия Broad Match. Бот смотрит вхождения в любом порядке, даже если между ключами 10 других слов;
обходит Pagination & Limits: Scrapecreators отдает до 100 объявлений. Это техническое ограничение SC. Когда нужно получить больше, запрашиваем продолжение (до 10 запросов). Суммарно по 1 фразе можем получить 1000 сырых объектов;
извлекает ВСЕ карточки из карусели: каждая обрабатывается отдельно;
ссылки достает из 8 мест, CTA-линку сразу с UTM-параметрами;
поддерживает базовые установки: страна, актив, ключевая фраза;
для экономии API берет 100 объявлений за запрос, даже когда указали 50. Так мы получаем все, что отдает Scrapecreators за 1 кредит. Если в промпте агенту указали 200, он подставит 200;
при включенном анализе медиа креативы кешируются в отдельной папке, чтобы не засорять рабочее пространство.
MySpy вычленяет URL из текста в описании
Фильтрация — шаг 1: удаляет лишнее скриптами:
has_external_links: нет внешних ссылок вне соцсетей;
EXCLUDED_DOMAINS: домен в чс (маркетплейсы, бренды);
дубли объяв: сносятся с отметкой о количестве в «url_occurrences»;
EXCLUDED_URL_PATHS: проверяются пути на наличие приставок /course/, /shop/, /fitness;
длина текстов: описание + заг → 4000 символов = читалка.
Фильтрация — шаг 2: смотрит глазами AI:
проверка текстов и крео через Gemini в облаке. LLM от Google решает, подходит ли эта реклама под описанные критерии;
в случаях, когда лимит по API в LLM исчерпан, этот этап пропускается. И тогда начинает сыпаться чуть больше нерелевантной рекламы. Скриптовая очистка продолжает работать.
Если соберетесь адаптировать MySpy под нужды команды, не пытайтесь скинуть агенту в IDE анализ крео. Это не позволят лимиты и общая логика работы MCP в IDE. Агент — босс, сервер — лишь инструмент.
AI в Antigravity сам решает, когда включать анализ медиа через Gemini. При запуске с несколькими ключами он стоит по умолчанию.
Если нужно получить рекламу по 10+ фразам, модель отрубит параметр «analyze_media» и останется только скриптовая проверка.
Отфильтрованные данные сохраняются локально в JSON. Если первый раз ищем в новом ГЕО, скрипт создаст новый файл, если раньше искали, запишет в старый. Независимо от направления одна страна — один набор.
Поиск без ограничения количества объяв — экономит Scrapecreators
Во время ресерча не ставьте суммарное число объявлений, которые должны записаться в файл. Агент загрузит в разы больше, и часть необработанных данных попусту удалится. Будет лишняя трата времени, мощностей и кредитов Scrapecreators.
Каждый запрос тратит 1 кредит Scrapecreators, за один запрос можно получить до 100 объявлений. Чтобы использовать все, что скачали, укажите, что по каждой ключевой фразе нужно тянуть по 100 объектов.
Экономичный сценарий: запрашиваем рекламу по фразе Х:
IDE запускает поиск со стандартным размером пачки;
параметр max_ads (ограничитель) не устанавливается;
скрипт просит 100 объявлений (по умолчанию), платит 1 кредит Scrapecreators;
приходит 100 сырых данных;
фильтрует их в несколько этапов;
все, что прошло проверку, сохраняет. Выброшенных кампаний нет.
Расточительный: вы просите суммарно 100:
агент запросит с запасом, чтобы получить 100 подходящих;
скачает пачку объектов, например 500 по 5 ключам;
это 5 обращений по 1 кредиту;
запустится многошаговая фильтрация, которая найдет среди них первые 100 подходящих и остановится;
оставшиеся 100–300 необработанных данных, за которые заплачены кредиты Scrapecreators, отбрасываются.
Непроверенную рекламу можно отдельно сохранять с фильтрацией без Gemini. Или смотреть наличие параметров трекера и затем сохранять. Вариаций много, но это вопрос предпочтений.
Любая работа над остатком реализуется за 1 промпт агенту в IDE. Если даже вы не кодер, просто скажите «запиши отдельно» или «делай отметку, что не чекали, и кидай в тот же файл», ИИ добавит 2–5 строк в двух файлах и внедрит нужный функционал.
Почему именно Antigravity
Основная причина, по которой в первую очередь показали сборку под Antigravity — он не достает лимитами. Мы установили приложение сразу после выхода, авторизовались через аккаунт с подпиской One. Больше 3 недель он работал 5–8 часов каждые сутки и ни разу не уперся в ограничения.
Пробной подписки после линковки карты, которая предлагается на части Google-профилей, хватает для полноценного использования последних моделей Gemini и Claude. Google предлагает оформить тариф AI, но One тоже подходит. Бонусом получаем последние мультимедиа-генераторы и полный функционал google.vids. Триал также в разы шире, чем у любого конкурента.
Последние сборки Gemini и Claude доступны сразу после установки. Когда заканчивается лимит по одной модели, можно переключиться на другую и продолжить работу.
Какие ключи требуются
Чтобы тянуть по API кампании из ФБ*, нужны ключи от библиотеки рекламы. Но чтобы получить этот ключ, нужно пройти верификацию с качественными доками, потом создать приложение и установить разрешения. Вот только пройти подтверждение личности по документам очень сложно.
Вместо API Key из Ads Library в MySpy используются ключи ScrapeCreators. Он дает бесплатно 100 кредитов, которых хватает на 8000–10 000 кампаний ФБ*.
ScrapeCreators ищет в реальном времени. Когда вы отправляете запрос, SС отправляет ботов в библиотеку рекламы. Если кампанию запустили 5 минут назад и она прошла модерацию — SС ее увидит.
Также в MySpy используется Gemini в облаке для анализа креативов. Важно обрабатывать крео отдельно. Нельзя заставлять агента в IDE смотреть медиа, он сойдет с ума до того, как закончит половину.
Ai Studio дает только 250 запросов дейли на фри-тарифе, поэтому для Gemini ApiKey обязательна подписка. Фришки хватит только для микротестов.
Лайфхак: чтобы экономить, запускайте сервер с ключевыми фразами из 2–3 слов. Чем короче запрос, тем больше мусора. Количество сырых данных по одному слову, конечно, будет превышать в разы, но все это нужно еще переварить. Кому не жалко лимитов Gemini, берите короткий вариант.
Заключение
Процесс, который занимал несколько часов, сокращается до 10 минут. Но главное преимущество не в ускорении спаинга, а в кастомизации. За пару часов MySpy одной только перепиской с AI можно адаптировать под задачи команды, научить искать и фильтровать объявления под нужную вертикаль. Можете хоть слежку установить за конкурентами, которые льют без CloudFlare или с одними и теми же параметрами трекера.
При этом не нужно быть программистом, чтобы кастомизировать MCP, расширить функционал. Сформировали ТЗ и получили новую фичу. Апгрейд оригинала делали без строчки кода за 2–3 дня и даже без знания Python.
Когда агент не находит решения задачи внутри MCP, он сам без разрешения создает его за 10–20 секунд и в течение 1–2 минут уже показывает результат.
К примеру, захотели пройтись по всем «external_links» запросом HTTP и проверить, нутра ли по ссылке, жмем критерии отбора и краткое ТЗ до 2–3 предложений. Он меньше чем за минуту развернет приложение, которое отправляет всем найденным внешним ссылкам HTTP-запрос и проверяет содержание. Так можно выделить все, что льется без клоаки и подвинуть вверх в файле и заодно удалить явный мусор.
Включайте фантазию и не бойтесь экспериментировать.