YetiBrowser MCP

официальный

YetiBrowser MCP — это полностью открытое решение, позволяющее ИИ-ассистентам легко взаимодействовать с вашим существующим браузером.

Что можно делать с Yeti Browser MCP?

  • Навигация и создание снимков страницы — попросите ассистента загрузить URL с помощью browser_navigate и вернуть снимок доступности полученной страницы.
  • Заполнение и отправка веб-форм — используйте browser_fill_form или browser_type для заполнения нескольких полей и, при необходимости, отправки формы.
  • Проверка вывода консоли и состояния страницы — получайте ошибки, журналы, данные форм, куки и ключи хранилища с помощью browser_get_console_logs и browser_page_state.
  • Выполнение пользовательского JavaScript на странице — выполняйте произвольные скрипты с помощью browser_evaluate и получайте результаты, сериализуемые в JSON, для отладки или извлечения данных.
  • Создание скриншотов — делайте скриншоты области просмотра или всей страницы с помощью browser_screenshot для визуальной проверки или рабочих процессов QA.

Документация

[!IMPORTANT] Этот проект заархивирован. Он был создан для решения проблемы отсутствия управления браузером в AI-агентах, таких как Claude и Codex, но теперь агенты имеют эти функции встроенными без необходимости в специализированном решении на базе MCP.

YetiBrowser MCP

YetiBrowser MCP — это полностью открытая реализация рабочего процесса Browser MCP. Он связывает MCP-сервер на Node с расширениями Chrome/Firefox, чтобы клиенты Model Context Protocol — Codex/Claude Code, Cursor, Windsurf, MCP Inspector или ваши собственные инструменты — могли автоматизировать реальную вкладку браузера, сохраняя каждый байт на вашей машине и доступным для аудита.

Почему стоит выбрать YetiBrowser MCP?

  • Прозрачность и возможность модификации – никаких бинарных загрузок. Изучайте, форкайте и расширяйте каждый компонент.
  • Локальность прежде всего – расширение взаимодействует только с локальным MCP-сервером; данные просмотра никогда не покидают ваше устройство.
  • Кросс-браузерность – общая логика работает как в пакетах для Chrome, так и для Firefox (сборка для Firefox ожидает улучшения поддержки Manifest V3, поэтому UX подключения может быть ограничен до тех пор, пока Mozilla не выпустит полные API MV3).
  • Инструментарий, ориентированный на разработчиков – расширенный захват консоли, сравнение DOM, дампы состояния страницы и скриншоты всей страницы, созданные для отладки и QA.
  • Готовность к продакшену – скрипты и документация для упаковки, публикации и интеграции с рабочими процессами IDE.

Структура репозитория

  • packages/shared – общие определения TypeScript для сообщений и схем инструментов.
  • packages/server – MCP-сервер, соединяющий MCP-клиентов с работающей вкладкой браузера.
  • extensions/shared – общий исходный код расширения (фон/всплывающее окно) и ресурсы.
  • extensions/chrome / extensions/firefox – слои упаковки для каждого браузера.
  • docs/ – команды рабочей области, контрольные списки публикации и заметки о функциях.
  • scripts/ – вспомогательные утилиты, такие как package-extensions.sh для создания zip-архивов релизов.

Доступные инструменты MCP

  • browser_snapshot – захват снимка текущей страницы, ориентированного на доступность
  • browser_snapshot_diff – сравнение двух последних снимков для выявления изменений DOM/ARIA
  • browser_navigate – загрузка нового URL в подключенной вкладке и возврат обновленного снимка
  • browser_go_back / browser_go_forward – навигация по истории с синхронизацией MCP
  • browser_wait – приостановка автоматизации на заданное количество секунд
  • browser_wait_for – блокировка до появления селектора (опционально видимого) перед продолжением
  • browser_press_key – имитация нажатия клавиши клавиатуры на сфокусированном элементе
  • browser_click – клик по элементу, идентифицированному CSS-селектором
  • browser_hover – наведение указателя на целевой элемент
  • browser_drag – перетаскивание элемента на цель для сортируемых интерфейсов или интерфейсов drag-and-drop
  • browser_type – ввод текста (опционально с отправкой Enter) в редактируемый элемент
  • browser_fill_form – заполнение нескольких полей ввода/выбора/флажков/радиокнопок за один вызов
  • browser_select_option – выбор одного или нескольких вариантов в элементе <select>
  • browser_screenshot – захват скриншота области просмотра или всей страницы через протокол DevTools
  • browser_get_console_logs – возврат последнего вывода консоли, включая ошибки с трассировкой стека
  • browser_page_state – дамп форм, ключей хранилища и файлов cookie для подключенной страницы
  • browser_connection_info – отчет о порте WebSocket моста, статусе подключения и версии расширения
  • browser_evaluate – выполнение пользовательского JavaScript на странице и возврат результатов, сериализуемых в JSON
  • browser_handle_dialog – принятие или отклонение диалогов alert/confirm/prompt с опциональным текстом подсказки

Установка расширения MCP для браузера

Браузер Chrome

Браузер Firefox (в настоящее время недоступен)

  • Из-за ограниченных возможностей Manifest v3 в стабильной версии Firefox расширение для Firefox отложено до тех пор, пока полная поддержка не станет общедоступной (за пределами ночных сборок).

Установка MCP-сервера

Codex CLI

  • Отредактируйте ваш ~/.codex/config.toml и добавьте запись MCP:
    [mcp_servers.yetibrowser-mcp]
    command = "npx"
    args = ["-y", "@yetidevworks/server"]
    
  • Перезапустите команду codex CLI; вы должны увидеть yetibrowser-mcp в списке инструментов /mcp.
  • Если вы хотите указать конкретный порт, используйте этот формат для записи args: args = ["-y", "@yetidevworks/server", "--ws-port", "9010"]

Claude Code

  • Убедитесь, что расширение установлено и подключено к вкладке, затем запустите MCP-сервер с помощью npx -y @yetidevworks/server (или запустите локально собранный CLI).
  • Добавьте запись сервера в ~/Library/Application Support/Claude/claude_desktop_config.json (см. пример в docs/publishing.md).
  • Перезапустите claude, чтобы он подхватил новый MCP-сервер; вы должны увидеть yetibrowser-mcp в меню инструментов /mcp после подключения расширения.

Другие клиенты с поддержкой MCP

  • Любой MCP-клиент может подключиться, запустив CLI (npx -y @yetidevworks/server) или опционально указав конкретный порт, например npx -y @yetidevworks/server --ws-port 9010.
  • Сервер предоставляет стандартный транспорт MCP через stdio, поэтому используйте любой механизм конфигурации, поддерживаемый вашим клиентом, для выполнения указанной выше команды при подключенной вкладке.

MCP Inspector

  • Для тестирования и отладки вне агента кодирования.
  • npx @modelcontextprotocol/inspector npx -y @yetidevworks/server -- --ws-port 9010 для запуска и проверки MCP-сервера совместно с расширением YetiBrowser MCP для браузера.

Устранение неполадок

  • CLI перебирает порты 9010-9020, пока не найдет свободный, записывая switched to при переходе. Передайте --ws-port <port>, если хотите закрепить конкретный порт.
  • Всплывающее окно расширения браузера отражает это поведение: оставьте «Автоматический» режим, чтобы отслеживать порт CLI, или выберите «Ручной» и введите порт, сообщаемый browser_connection_info / журналом CLI, чтобы переопределить его.
  • Просто спросите ваш AI-инструмент о порте подключения. Например: what is the yetibrowser mcp connction info?, затем установите ручной порт, который был сообщен.

Документация и скрипты сборки

  • Команды рабочей области находятся в docs/workspace-commands.md.
  • Шаги публикации (npm + магазины расширений) описаны в docs/publishing.md.
  • Поведение скриншотов задокументировано в docs/screenshot.md.
  • Создавайте распространяемые zip-архивы для Chrome/Firefox с помощью ./scripts/package-extensions.sh (вывод в artifacts/).
  • Политика конфиденциальности на уровне репозитория доступна в PRIVACY.md.