browser-gateway

browser-gateway

browser-gatewayMIT
5 звёзд1 форков
Browser-gateway — инфраструктурный сервер для AI-агентов и систем автоматизации. Он объединяет несколько браузерных провайдеров (облачные CDP-сервисы, Playwright, локальный Chrome) в единый endpoint. Если один провайдер падает, gateway автоматически направляет запросы к другому — клиент этого не замечает. Внутри встроен MCP-сервер, который даёт AI-ассистентам команды для управления браузером: открыть страницу, сделать скриншот, найти элемент и извлечь текст. Всё это с отказоустойчивостью и балансировкой нагрузки на уровне шлюза.

Установка

npx -y browser-gateway

Характеристики

Общее

  • СтатусСообщество
  • Разработчикbrowser-gateway
  • ЛицензияMIT

Технологии

  • Языки
    TypeScript
  • Транспорт
    stdio

Описание

Возможности

  • Поддержка разных типов провайдеров: облачные Chrome CDP, Playwright в Docker, локальный Chrome.
  • Автоматический failover — при падении провайдера запросы перенаправляются следующему без изменений в клиенте.
  • Пять стратегий балансировки: приоритетная цепочка, round-robin, least-connections, по задержке и взвешенная.
  • Ограничение параллельных сессий для каждого провайдера.
  • Очередь запросов — если все провайдеры заняты, соединения ждут в очереди, а не падают с ошибкой.
  • Регулярные health checks — проблемные провайдеры автоматически исключаются из ротации.
  • Session reconnect — при обрыве клиент может переподключиться к той же сессии и продолжить работу на той же странице (cookies, localStorage сохраняются).
  • REST API для скриншотов (PNG/JPEG), извлечения контента (markdown, text, HTML, cleaned article) и скрапинга по CSS-селекторам.
  • Пул сессий — браузерные подключения переиспользуются между запросами, как пул соединений к базе данных.
  • MCP-инструменты для AI-агентов: навигация по страницам, скриншоты, взаимодействие с элементами.
  • Webhooks — уведомления о падении провайдера, восстановлении, переполнении очереди.

Как подключить

1. Установите сервер через npm:

npx -y browser-gateway

2. Добавьте конфигурацию в MCP-клиенте (например, Claude Desktop):

{"mcpServers":{"browser-gateway":{"command":"npx","args":["-y","browser-gateway"]}}}

3. Перезапустите клиент. Сервер запустится автоматически.

Примеры запросов

  • «Сделай скриншот страницы https://example.com и сохрани как PNG»
  • «Найди на странице https://news.ycombinator.com все заголовки новостей и верни в виде списка»
  • «Открой https://github.com, нажми кнопку Sign in и сделай скриншот формы входа»
  • «Проверь статус всех провайдеров через health check и сообщи результат»

Технические детали

  • Язык: TypeScript
  • Транспорт: Stdio
  • Лицензия: MIT
  • Совместимые клиенты: Claude Desktop, Cursor, Continue, любые MCP-хосты

Поделиться