Skip to main content
Glama

Chrome MCP Stealth

MCP-сервер для скрытной автоматизации браузера через протокол Chrome DevTools. Подключается к реальному экземпляру Chrome с использованием человекоподобных паттернов взаимодействия (кривые Безье для мыши, гауссовские задержки при вводе, дрожание при прокрутке) для предотвращения обнаружения ботов.

Зачем это нужно

Стандартные инструменты автоматизации браузера (Playwright, Puppeteer, Selenium) легко обнаруживаются современными антибот-системами. Сайты отслеживают движения мыши (прямые линии, мгновенная телепортация), паттерны ввода (равномерные задержки) и свойства JavaScript (navigator.webdriver, отсутствие плагинов) для блокировки автоматизированного доступа.

Chrome MCP Stealth решает эту проблему, накладывая человекоподобное поведение поверх CDP-соединения Playwright с реальным экземпляром Chrome — не headless-браузером, не новым профилем, а вашим настоящим браузером с сохраненными файлами cookie, расширениями и историей.

Функции

  • Скрытный режим (Stealth mode): движение мыши по кривым Безье, гауссовские задержки при нажатии клавиш, дрожание при прокрутке, патчи JS для защиты от обнаружения

  • Быстрый режим (Fast mode): мгновенные действия без задержек — доступен на незащищенных доменах

  • Безопасность: 4-уровневая защита от инъекций промптов, утечки данных и кражи учетных данных

  • Один файл: весь сервер состоит из одного файла index.js (~630 строк)

Как работает скрытность

Движение мыши следует кубическим кривым Безье со случайными контрольными точками, создавая естественные дуги вместо прямых линий. Каждое движение использует 12–50 шагов интерполяции с таймингом ease-in-out и периодической коррекцией перелетов.

Ввод текста использует гауссовское распределение задержек между нажатиями клавиш (в среднем ~75 мс), с дополнительными паузами после знаков препинания и периодическими «паузами на раздумья» каждые ~10 символов — имитируя ритм человеческого набора текста.

Прокрутка разбивается на мелкие шаги с дрожанием и паузами для стабилизации, избегая мгновенных скачков, которые выдают автоматизацию.

Патчи для защиты от обнаружения удаляют navigator.webdriver, очищают артефакты Playwright/Selenium из window, внедряют реалистичные заглушки chrome.runtime и плагинов.

Подробности реализации см. в ARCHITECTURE.md.

Модель безопасности

  1. Сканер инъекций промптов — более 20 регулярных выражений обнаруживают попытки переопределения инструкций, социальную инженерию и команды на извлечение данных в контенте страницы

  2. Санитизация контента — скрытые/невидимые элементы удаляются перед возвратом текста страницы, предотвращая инъекции через элементы нулевого размера или элементы за пределами экрана

  3. Выделение контента — весь контент страницы оборачивается в теги <EXTERNAL_CONTENT trust="untrusted"> с футерами безопасности

  4. Контроль доменов — эндпоинты облачных метаданных полностью заблокированы; банковские/почтовые домены вызывают предупреждения; домены, требующие скрытности, принудительно используют скрытный режим

Кроме того, весь вывод сканируется на наличие паттернов учетных данных (API-ключи, токены, JWT) и маскируется перед возвратом.

Инструменты (11)

Инструмент

Назначение

chrome_set_mode

Переключение между скрытным/быстрым режимом

chrome_navigate

Переход по URL

chrome_snapshot

Получение санитизированного дерева доступности

chrome_screenshot

Создание PNG-скриншота

chrome_click

Клик по элементу (мышь по кривым Безье в скрытном режиме)

chrome_type

Ввод текста (гауссовские задержки в скрытном режиме)

chrome_tabs

Список/переключение/создание/закрытие вкладок

chrome_evaluate

Выполнение JS в контексте страницы (вывод маскируется)

chrome_wait

Ожидание селектора или тайм-аута

chrome_scroll

Прокрутка вверх/вниз (с дрожанием в скрытном режиме)

chrome_page_info

Получение текущего URL, заголовка, уровня риска домена

Настройка

  1. Запустите Chrome с CDP:

    /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \
      --remote-debugging-port=9222 \
      --user-data-dir=~/.chrome-debug-profile
  2. Установите и запустите:

    npm install
    npm start
  3. Зарегистрируйте в конфигурации MCP:

    {
      "chrome-stealth": {
        "command": "node",
        "args": ["path/to/chrome-mcp/index.js"],
        "env": { "CDP_ENDPOINT": "http://127.0.0.1:9222" }
      }
    }

Домены, требующие только скрытного режима

LinkedIn (linkedin.com, www.linkedin.com) принудительно использует скрытный режим — быстрый режим заблокирован. Это обеспечивается на 5 уровнях: навигация, переключение режима, каждое взаимодействие, после перенаправления и переключение вкладок.

Зависимости

  • @modelcontextprotocol/sdk — реализация протокола MCP

  • playwright-core — подключение по протоколу Chrome DevTools

Лицензия

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

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/Riaan-Fourie/chrome-mcp-stealth'

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