Skip to main content
Glama

Проблема

Playwright MCP отправляет ~14 000 токенов для страницы с большим объемом контента, например Hacker News. Большая часть этого — шум. Ваше контекстное окно заполняется. Ваш агент запутывается. Вы платите за это.

Leapfrog отправляет ~1 400 токенов. Та же страница. Та же информация. До 10 раз меньше шума.

┌─────────────────────────────────────────────────────┐
│  Playwright MCP                                     │
│  ████████████████████████████████████████  ~14,000   │
│                                                     │
│  Leapfrog                                           │
│  █████                                    ~1,400    │
└─────────────────────────────────────────────────────┘
          tokens per page (Hacker News, real test)

Экономия составляет от 2 до 10 раз в зависимости от сложности страницы. Страницы с большим объемом контента дают наибольший выигрыш. Плотные формы — наименьший. Медианное значение на реальных сайтах составляет ~4-5 раз.

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

npx leapfrog --doctor          # verify everything works
npx leapfrog --stealth-audit   # test all 19 stealth patches
npx leapfrog --config          # print MCP config to paste

Добавьте в ~/.mcp.json (для Claude Code) или в конфигурацию MCP вашего редактора:

{
  "leapfrog": {
    "command": "npx",
    "args": ["-y", "leapfrog"],
    "env": {
      "LEAP_MAX_SESSIONS": "15",
      "LEAP_TILE": "true",
      "LEAP_HUD": "true",
      "LEAP_SOUND": "true",
      "LEAP_AUTO_CONSENT": "true"
    }
  }
}

Leapfrog использует playwright-core (15 МБ) вместо playwright (1,6 ГБ) и не включает в себя браузер. Либо:

  • Установите LEAP_CHANNEL=chrome, чтобы использовать установленный у вас Chrome/Chromium

  • Либо выполните npx playwright-core install chromium для установки бинарного файла Chromium

Матрица функций

Leapfrog

Playwright MCP

agent-browser

Токенов на страницу

~1 200-2 500

~3 800-15 000

~300

Параллельные сессии

15

1

1

Изоляция сессий

Да

Нет

Нет

Несколько вкладок / всплывающие окна

Да

Нет

Нет

Перехват сети

Да

Нет

Нет

Захват консоли

Да

Да

Нет

Скрытность / анти-бот

Да

Нет

Нет

Умное ожидание (5 типов)

Да

Базовое

Нет

Восстановление после сбоев

Да

Нет

Нет

Пакетные действия (100/вызов)

Да

Нет

Нет

Внедрение скриптов инициализации

Да

Да

Нет

Перетаскивание / загрузка / изменение размера

Да

Да

Нет

Прокси для каждой сессии

Да

Нет

Нет

Гуманизация (по выбору)

Да

Нет

Нет

Повторное использование профиля авторизации

Да

Нет

Нет

Сохранение файлов cookie

Да

Нет

Нет

Классификация страниц (18)

Да

Нет

Нет

Память сессии

Да

Нет

Нет

Интеллект API

Да

Нет

Нет

Адаптивное ожидание + автоповтор

Да

Нет

Нет

Автоматическое решение CAPTCHA

Да

Нет

Нет

Самообучение (9 измерений)

Да

Нет

Нет

Запись / воспроизведение

Да

Нет

Нет

Извлечение пагинации

Да

Нет

Нет

Инкрементальные снимки (diff)

Да

Нет

Нет

CLI для самопроверки скрытности

Да

Нет

Нет

Защита от SSRF

Да

Нет

Нет

Скрытность

Leapfrog поставляется с 19 патчами для защиты от обнаружения, включенными по умолчанию (LEAP_STEALTH=true). Они охватывают векторы, которые на самом деле проверяют сервисы отпечатков, такие как CreepJS и fingerprint-pro:

  • Бренды Client Hints (удаляет HeadlessChrome)

  • navigator.webdriver принудительно устанавливается в undefined

  • WebGL vendor/renderer (заменяет SwiftShader на реальные строки GPU)

  • Connection RTT (ненулевое)

  • Время закрытия оповещений (задержка со скоростью человека)

  • Смещение внешней/внутренней высоты окна

  • Заполнение массива MIME-типов

  • Вывод платформы из user agent

  • Эмуляция chrome.app

  • Защита iframe contentWindow

  • Спуфинг медиа-кодеков (canPlayType)

  • Переопределение document.hasFocus()

  • Удаление комментариев Source URL

  • Сосуществование пользовательского UA + скрытности (пользовательские user agents больше не отключают контекст скрытности)

  • Обнаружение CDP Runtime.enable (фильтр Error.prepareStackTrace)

  • Спуфинг Permissions API (20+ типов разрешений)

  • Шум отпечатков AudioContext (getChannelData/getFloatFrequencyData)

  • Предотвращение утечки IP через WebRTC (фильтрация ICE-кандидатов)

  • Спуфинг отпечатков перечисления шрифтов

Управление скрытностью для каждой сессии: передайте stealth: false в session_create, чтобы отключить её для конкретной сессии.

Гуманизация (Экспериментально)

Установите LEAP_HUMANIZE=true, чтобы включить взаимодействие с браузером, похожее на человеческое. Это опциональная функция, которая добавляет задержку в обмен на более реалистичное поведение. Шесть модулей:

  • Мышь — траектории кривых Безье с таймингом по закону Фиттса и микро-дрожанием

  • Печать — логнормальные задержки между нажатиями клавиш (медиана 200 мс), время удержания клавиши, скорость с учетом биграмм, ролловер-печать

  • Прокрутка — имитация инерции с разгоном и затуханием импульса (физика тачпада/колеса мыши)

  • Пауза — задержки «размышления» между действиями, имитирующие когнитивные промежутки

  • Отпечаток — генерация согласованного отпечатка браузера (платформа, память устройства, GPU, часовой пояс)

  • Утилиты — общие математические примитивы (распределение Гаусса Бокса-Мюллера и др.)

Классификация страниц

Каждый вызов navigate и snapshot автоматически классифицирует тип страницы с использованием взвешенной оценки сигналов (LLM не требуется). 18 типов:

login · search-results · product · product-list · checkout · checkout · article · dashboard · form · error · challenge · landing · documentation · profile · media · feed · qa · ecommerce · unknown

Классификация обеспечивает более умное извлечение снимков — страницы входа показывают поля форм, статьи — контент, панели управления — интерактивные элементы.

Интеллект системы управления

Система отслеживает каждое действие в сессии и классифицирует результаты:

  • Классификация результата действияSUCCESS, SILENT_CLICK, NAVIGATION, WRONG_ELEMENT, BLOCKED, ERROR, PENDING

  • Обнаружение перенаправления на ботов — определяет, когда сайт перенаправляет на страницу проверки или блокировки после действия

  • Обнаружение циклов — предупреждает, когда агент застревает, нажимая на один и тот же элемент, переключаясь между URL или повторяя действия

  • Память сессии — инструмент session_memory вспоминает действия после сжатия контекстного окна

Постоянные профили браузера теперь используют context.cookies() + addCookies() вместо storageState(), который возвращает пустоту в постоянных контекстах. Состояние авторизации сохраняется между сессиями.

Адаптивное ожидание + эскалация скрытности

Навигация автоматически повторяется с резервными стратегиями, если страницы не загружаются:

  1. Попытка load (самая быстрая) — если пусто, повтор с networkidle (лимит 10 с)

  2. Если networkidle истекает (Amazon, сайты с большим количеством рекламы), переход к domcontentloaded

  3. Если заблокировано/вызвана проверка, эскалация скрытности: случайные задержки → ожидание JS-проверки → смена сессии со свежим отпечатком

  4. Профильные сессии (авторизованные) никогда не уничтожаются — жесткое ограничение на уровне 2

Отключите с помощью autoRetry: false в navigate. Управляйте максимальной эскалацией с помощью maxRetryLevel (0-5, по умолчанию 3).

Запись / воспроизведение

Экспортируйте историю действий сессии как воспроизводимую запись, затем воспроизводите её в новых сессиях:

  • session_export — создает параметризованный JSON или скрипт Playwright из истории сессии. Ссылки @eN разрешаются в стабильные CSS-селекторы. Автоматически определяет электронные письма, пароли, URL как {{placeholders}}.

  • session_replay — воспроизводит запись с переопределением параметров. Поддерживает onError: 'stop' или 'skip'.

Превратите разовые рабочие процессы агента в многоразовую автоматизацию.

Извлечение пагинации

Извлекайте данные с нескольких страниц за один вызов инструмента:

  • Click-next — автоматическое обнаружение кнопок «Далее», ссылок пагинации, кнопок «Загрузить еще»

  • Бесконечная прокрутка — прокручивает и ждет нового контента через сравнение хеша DOM

  • Шаблон URL — увеличивает ?page={page} или пользовательские шаблоны

Заменяет 3-4 вызова инструментов на страницу. Лимит: 50 страниц, 100 тыс. символов всего. Останавливается при: отсутствии кнопки «Далее», пустой странице, дублирующемся контенте или обнаружении бота.

Инкрементальные снимки

Инструмент diff возвращает только то, что изменилось с момента последнего снимка — добавления, удаления, изменения. Огромная экономия токенов для мониторинга и рабочих процессов опроса.

Наложения HUD (LEAP_HUD=true)

При запуске в видимом режиме Leapfrog накладывает визуальную обратную связь на каждую сессию:

  • Круг клика — расширяющийся зеленый круг в координатах клика (только действия агента)

  • Масштабирование цели — браузер кратковременно увеличивает масштаб до 1.15x на нажатом элементе, чтобы агенты (и люди) могли визуально отслеживать происходящее в окнах

  • Прокрутка к целиscrollIntoView перед кликами, чтобы вы видели, на что собирается нажать агент

Минималистично по дизайну. Никаких рамок, статус-баров, наложения курсора — только важная обратная связь.

Многотерминальная плитка (LEAP_TILE=true)

Несколько экземпляров Leapfrog делят экран через файловую координацию. Каждый экземпляр отслеживает свои окна, а TilesCoordinator назначает глобальные слоты сетки — никакого перекрытия, никакой ручной расстановки. Установите LEAP_TILE=true (или LEAP_TILE=master для основного экземпляра). Отступы между плитками настраиваются с помощью LEAP_TILE_PADDING (по умолчанию 8px).

Вмешательство человека

Leapfrog автоматически обнаруживает ситуации, требующие участия человека — CAPTCHA, формы входа, перенаправления OAuth, проверки Cloudflare — и пытается решить их самостоятельно перед паузой.

  • Сначала решает автоматически: нажимает чекбоксы reCAPTCHA, кнопки проверки Cloudflare, общие кнопки подтверждения/продолжения, затем повторная попытка — всё до того, как попросить о помощи

  • Внешние решатели: установите LEAP_CAPTCHA_PROVIDER + LEAP_CAPTCHA_API_KEY для интеграции CapSolver, 2Captcha или NopeCHA

  • Учится на том, что работает: запоминает, какой метод решения сработал для домена, и первым делом пробует известный хороший метод при повторном посещении

  • Обнаруживает reCAPTCHA, hCaptcha, Turnstile, формы входа, перенаправления OAuth, проверки Cloudflare

  • Заголовок вкладки меняется на "NEEDS HUMAN", когда требуется вмешательство

  • Инструмент wait_for_human — агент вызывает, когда застревает, блокирует до тех пор, пока вы не решите проблему или не перейдете дальше

Автоматически отклоняет баннеры согласия на cookie для 10 фреймворков (OneTrust, CookieBot, TrustArc, Quantcast, Didomi, Cookielaw, Osano, Usercentrics + общие), плюс резервный вариант сопоставления текста. Кэширование селекторов для каждого домена для мгновенного воспроизведения при повторном посещении.

Трассировка (LEAP_TRACE=true)

Трассировка Playwright для каждой сессии со скриншотами + снимками DOM. Экспорт ZIP-файлов, просматриваемых на trace.playwright.dev через инструмент session_export_trace. Автоматическое сохранение при уничтожении сессии.

Самообучение

Leapfrog учится на каждом посещении. Знания о домене сохраняются в ~/.leapfrog/domains/{domain}.json — 9 измерений, всё автоматически:

#

Измерение

Что делает

1

Стратегии ожидания

Изучает оптимальный метод ожидания для домена (networkidle vs domcontentloaded vs load) + среднее время

2

Уровни скрытности

Автоматически повышает уровень с 0 до 3 при обнаружении блокировок (2+ блокировки за 1 час). Начинает с изученного уровня при повторном посещении

3

Селекторы согласия

Запоминает селекторы закрытия баннеров cookie, автоматически нажимает при повторном посещении

4

Решение проверок

Записывает, какой метод CAPTCHA сработал (чекбокс reCAPTCHA, проверка Cloudflare и т.д.), пробует известный хороший метод первым

5

Подавление стабильных элементов

Идентифицирует элементы навигации/футера/сайдбара, увиденные 3+ раза, подавляет их в снимках (экономия 30-40% токенов на зрелых доменах)

6

Исправление селекторов

Запоминает отпечатки элементов → селекторы, исправляет сломанные ссылки между посещениями

7

Кэширование API-эндпоинтов

Обнаруженные API-эндпоинты сохраняются между сессиями

Install Server
A
security – no known vulnerabilities
A
license - permissive license
B
quality - B tier

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/anthonybono21-cloud/leapfrog'

If you have feedback or need assistance with the MCP directory API, please join our Discord server