Skip to main content
Glama

mcp-helm

Управляйте своей реальной сессией Chrome из Claude — режим второго пилота с поддержкой передачи управления.

Большинство MCP-серверов для автоматизации браузера запускают новый экземпляр Playwright Chromium. Это бесполезно, когда задача состоит в том, чтобы «войти в Stripe и нажать 5 кнопок» — у вас нет ваших файлов cookie, 2FA, закладок. mcp-helm подключается к ВАШЕМУ Chrome, в который вы уже вошли, и позволяет Claude запускать небольшой набор инструментов для работы с активной вкладкой.

Он также знает, когда нужно отступить: когда на странице появляется запрос 2FA, капча, подтверждение оплаты или запрос биометрии, инструмент создания скриншотов помечает это, и Claude может вызвать handoff(), чтобы подождать вас.

Почему это существует

Проблема «глаз и рук»: Claude говорит вам «нажмите Настройки → Доступ к API», а вы нажимаете «Настройки», и там нет доступа к API, поэтому вы делаете скриншот для Claude, который снова пытается угадать. Это 5 минут переписки ради 5-секундной задачи, и это происходит при каждой настройке Stripe / Apple / Play Console / Cloudflare / Vercel.

mcp-helm разрывает этот цикл. Claude видит реальную страницу, выбирает элементы из дерева доступности (никаких угадываний координат) и останавливается, когда собирается сделать то, чего делать не следует.

Установка

npm install -g mcp-helm

Добавьте в ~/.claude.json (или конфигурацию вашего MCP-клиента):

{
  "mcpServers": {
    "helm": {
      "command": "mcp-helm"
    }
  }
}

Использование

1. Запуск управляемого Chrome

Добавьте этот псевдоним в ваш shell rc:

alias chrome-pilot='open -a "Google Chrome" --args --remote-debugging-port=9222 --user-data-dir=$HOME/.chrome-pilot'

Запустите его один раз: chrome-pilot. Откроется отдельный профиль Chrome. Войдите во все сервисы, которыми хотите управлять через Claude (Play Console, Stripe и т. д.). Файлы cookie сохраняются между запусками — вы входите в систему только один раз для каждого сервиса.

Почему отдельный профиль? Ваш основной Chrome не может быть запущен в режиме удаленной отладки, пока он уже работает. Выделенный профиль находится в ~/.chrome-pilot и остается отдельным от вашего повседневного просмотра веб-страниц.

2. Из Claude

You: Upload the AAB at <path> to Play Store internal testing.
Claude: [calls helm.attach] → [helm.navigate to play.google.com/console]
        [helm.screenshot] → sees the dashboard
        [helm.click "Personalized AI Portfolio Bot"]
        ... etc

Если появляется запрос 2FA, screenshot возвращает handoffTriggers: ["2FA prompt"], и Claude вызывает handoff, чтобы подождать.

Инструменты

Инструмент

Назначение

attach

Подключение к Chrome на порту 9222. Всегда вызывайте первым.

list_tabs

Список всех открытых вкладок.

focus_tab

Переключение активной вкладки по индексу или подстроке URL.

screenshot

PNG + URL + заголовок + обнаруженные триггеры передачи управления.

inspect

Нумерованный список интерактивных элементов (дерево a11y).

click

Нажатие по ID (из inspect), тексту или CSS-селектору. Возвращает changed: bool на основе сравнения скриншотов.

type

Ввод текста в поле. submit: true нажимает Enter после ввода.

navigate

Переход по URL.

wait_for

Ожидание текста или селектора.

handoff

Пауза и запрос к человеку взять управление на себя.

Дизайнерские решения

  • Дерево доступности, а не координаты. Нажатия на основе визуального анализа (использование компьютера Anthropic) — это здорово, но ненадежно на дисплеях Retina и при масштабировании с высоким DPR. Дерево a11y дает стабильные семантические ID — именно то, что используют программы чтения с экрана.

  • Сравнение скриншотов после каждого клика. Если changed: false, клик не привел к изменениям. Это спасает Claude от радостных отчетов об успехе, когда ничего не произошло.

  • Обнаружение передачи управления основано на регулярных выражениях, а не на LLM. Дешево, быстро, нет ложных срабатываний на распространенных фразах входа.

  • Никакой эвристики управления вкладками. attach выбирает первую непустую вкладку; используйте list_tabs + focus_tab для точности. Предсказуемость лучше, чем «умные» функции.

Статус

v0.1 — работает для простых сценариев (Play Console, панель управления Stripe, Vercel, Cloudflare). Краевые случаи, которые пока не обрабатываются:

  • Компоненты Shadow DOM (некоторые сайты с активным использованием веб-компонентов)

  • iframes (нужно реализовать переключение фреймов)

  • Загрузка файлов с диска

  • Сочетания клавиш, кроме Enter

Лицензия

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

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/flying-pisces/mcp-helm'

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