Skip to main content
Glama

GUI2MCP

Превратите устаревшее программное обеспечение, работающее только в браузере, в инструменты, которые может вызывать ИИ.

Node.js 20+ Model Context Protocol Playwright Hackathon Prototype

GUI2MCP Studio, показывающий сгенерированные CRM-инструменты и настоящий счёт, созданный в устаревшем приложении

Смотрите 27-секундное демо (MP4)

Смотрите презентацию GUI2MCP на Canva

Устаревший GUI -> GUI2MCP -> сгенерированный MCP-сервер -> Codex использует его как нативный API

Проблема

Компании по-прежнему зависят от внутреннего и устаревшего программного обеспечения, у которого нет пригодного для использования API. Люди могут искать записи, создавать клиентов и отправлять счета через браузер, но ИИ-агенты не могут получить доступ к этим возможностям, не анализируя весь интерфейс при каждом запуске.

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

Ключевая идея

GUI уже является машиночитаемым описанием того, что умеет программное обеспечение.

GUI2MCP наблюдает за этим интерфейсом, обнаруживает полезные действия, компилирует их в типизированные MCP-инструменты и реализует каждый вызов, управляя исходным GUI с помощью Playwright.

Для включённой в комплект CRM без API GUI2MCP генерирует:

search_customer(customer_name)
create_customer(name, email, company)
create_invoice(customer, amount_jpy, description)

Codex больше не нужно искать меню, изучать DOM или решать, какую кнопку нажать. Он вызывает один инструмент уровня домена:

{
  "name": "create_invoice",
  "arguments": {
    "customer": "Aiko Tanaka",
    "amount_jpy": 120000,
    "description": "AI integration workshop"
  }
}

GUI2MCP открывает настоящий экран счетов, заполняет поля, отправляет форму, проверяет видимый результат и возвращает INV-0001 вместе со скриншотом.

Почему не вызывать Playwright напрямую?

Playwright — это исполнительный механизм. GUI2MCP — это компилятор интерфейса.

Прямое управление браузером

GUI2MCP

Заново наблюдать и анализировать страницу при каждом запуске

Обнаружить один раз, многократно вызывать стабильный доменный инструмент

Низкоуровневые вызовы navigate, snapshot, fill и click

Один вызов create_invoice(...)

Широкие разрешения браузера

Явно разрешённые бизнес-возможности из белого списка

Детали интерфейса расходуют контекст агента

Компактная JSON Schema, доступная агенту

Знания о рабочем процессе остаются в промпте

Рабочий процесс становится переносимым MCP-контрактом

Успех каждый раз определяется по косвенным признакам

Фиксируются видимое состояние успеха и структурированные результаты

Для разовой задачи достаточно прямого использования Playwright. GUI2MCP предназначен для повторяющихся операций, которые должны стать переиспользуемыми, проверяемыми и доступными любому MCP-клиенту.

Как это работает

flowchart LR
    A[Legacy web GUI<br/>No JSON API] -->|Observe DOM and forms| B[GUI Inspector]
    B -->|Compile labels, fields, actions| C[generated/tools.json]
    C --> D[Generic STDIO<br/>MCP server]
    D -->|tools/list and tools/call| E[Codex]
    E -->|Typed business action| D
    D -->|Replay through Playwright| A
    A -->|Visible result + evidence| D
  1. Наблюдение: Playwright обходит ограниченный набор страниц того же источника.

  2. Понимание: извлекаются заголовки, метки, обязательные поля, типы ввода, параметры и действия отправки.

  3. Компиляция: действия GUI превращаются в имена MCP, описания, JSON Schema и аннотации безопасности.

  4. Выполнение: универсальная MCP-среда выполнения загружает сгенерированную спецификацию и воспроизводит вызовы через GUI.

  5. Проверка: видимые уведомления и таблицы результатов возвращаются в виде структурированного вывода со скриншотом.

Сгенерированная MCP-среда выполнения не содержит обработчиков, специфичных для CRM. Её поведение определяется файлом generated/tools.json.

Демо для судей за 90 секунд

  1. Откройте Legacy CRM и обратите внимание, что она предоставляет только браузерные страницы.

  2. Откройте GUI2MCP Studio и нажмите Discover tools.

  3. Покажите три сгенерированных инструмента и их типизированные параметры.

  4. Спросите Codex:

    Найди клиента Acme, затем создай счёт на 120 000 JPY за воркшоп по интеграции ИИ.

  5. Codex вызывает search_customer, а затем create_invoice.

  6. Откройте реестр счетов CRM и покажите INV-0001, созданный через исходный GUI.

В демо намеренно используются разные источники:

  • Плоскость управления GUI2MCP: http://127.0.0.1:4310

  • Неизменённая устаревшая система: http://127.0.0.1:4311/legacy

  • http://127.0.0.1:4311/api/health возвращает 404

JSON-эндпоинты на порту 4310 принадлежат GUI2MCP Studio, а не устаревшему приложению.

Запуск локально

Предварительные требования: Node.js 20+ и pnpm.

corepack pnpm install
corepack pnpm exec playwright install chromium
corepack pnpm dev

Откройте:

В Studio нажмите Discover tools, выберите любую карточку сгенерированного инструмента, укажите аргументы и выберите Run via Playwright.

Studio поддерживает английский и японский языки с помощью переключателя EN / JP в правом верхнем углу.

Подключение Codex

Сначала сгенерируйте спецификацию инструментов в Studio. Оставьте Studio и устаревшую систему запущенными, затем соберите и зарегистрируйте STDIO-сервер:

corepack pnpm build
codex mcp add gui2mcp -- node "C:\absolute\path\to\GUI2MCP\dist\src\mcp.js"
codex mcp list

Перезапустите Codex и спросите:

Search for the Acme customer, then create a JPY 120,000 invoice
for an AI integration workshop.

Конфигурация в рамках проекта также доступна в .codex/config.toml.example.

Работа с CLI

При запущенных демо-серверах:

corepack pnpm discover -- --url http://127.0.0.1:4311/legacy
corepack pnpm mcp

Полезные переменные окружения:

  • GUI2MCP_SPEC: загрузить другую сгенерированную спецификацию инструментов.

  • GUI2MCP_HEADFUL=1: показывать браузер во время выполнения MCP-инструмента.

  • PORT: изменить порт GUI2MCP Studio.

  • LEGACY_PORT: изменить порт демонстрационной системы.

Технические особенности

  • Динамический MCP tools/list, генерируемый при запуске сервера

  • JSON Schema, выводимая из реальных элементов форм

  • Аннотации безопасности MCP, такие как readOnlyHint и idempotentHint

  • Разрешение полей в первую очередь по меткам с запасными вариантами по name и ID

  • Структурированное извлечение видимых таблиц и уведомлений об успехе

  • Скриншоты-доказательства для каждого завершённого вызова инструмента

  • Запасные варианты браузера: встроенный Chromium, Edge и Chrome

  • Интерфейс Studio на английском и японском языках

  • Для детерминированного обнаружения и воспроизведения не требуется API-ключ модели

Проверка

Репозиторий включает модульные и сквозные MCP-проверки:

corepack pnpm check
corepack pnpm test
corepack pnpm build
node dist/tests/mcp-smoke.js

Смоук-тест запускает сгенерированный STDIO MCP-сервер, выполняет tools/list, вызывает search_customer и проверяет, что результат содержит Acme Industries.

Объём прототипа

Этот двухчасовой прототип оптимизирован для убедительного сквозного доказательства, а не для автоматизации произвольных сайтов.

В настоящее время он нацелен на обычные формы с серверным рендерингом. CAPTCHA, сложные SPA, рабочие процессы в iframe, произвольная аутентификация и самовосстановление селекторов намеренно выходят за рамки.

Следующий шаг продукта — Teach Workflow:

Человек один раз демонстрирует многостраничную операцию; GUI2MCP превращает эту демонстрацию, её параметры и условие успеха в управляемый MCP-инструмент.

Это переводит продукт от обнаружения форм к компиляции долговечных бизнес-процессов.

Карта репозитория

src/discovery.ts       GUI inspection and tool compilation
src/executor.ts        Playwright-based generated tool runtime
src/mcp.ts             Generic STDIO MCP server
src/legacy-crm.ts      Separate-origin, API-less demo target
public/                GUI2MCP Studio
generated/tools.json   Generated machine interface
tests/                 Unit and MCP smoke tests
Plan.md                Japanese implementation plan and demo script

Перезапись демо

corepack pnpm record:demo

Это создаёт версии WebM и H.264 MP4 с английскими субтитрами в artifacts/.


API больше не обязательно создавать вендору ПО. ИИ может вывести машинный интерфейс из уже существующего GUI.

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • AI-powered browser automation — navigate, click, fill forms, and extract data from any website.

  • Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.

  • Provides cloud browser automation capabilities using Stagehand and Browserbase, enabling LLMs to i…

View all MCP Connectors

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/Jun0908/GUI2MCP'

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