Skip to main content
Glama

ats-mcp

Сервер MCP, позволяющий LLM управлять сеансами тестирования ActionTestScript — веб, мобильные, десктопные приложения и API — через REPL ats-core.

Используйте его с Claude Code, Claude Desktop, Cursor или любым другим клиентом с поддержкой MCP, чтобы позволить помощнику взаимодействовать с тестируемой системой: запускать каналы, кликать по элементам, делать скриншоты, исследовать DOM или иерархию представлений мобильных приложений, запускать скрипты ATS — и все это через вызовы инструментов.

Доступны два дистрибутива, оба подключены к одному и тому же набору инструментов:

Установка

Лучший выбор для

npm

npx -y ats-mcp (пакет)

Node-разработчиков, широкого сообщества MCP

JAR

Скачайте ats-mcp-X.Y.Z.jar из Releases

Пользователей, у которых есть Java, но нет Node

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

MCP client (Claude Code / Desktop / …)
         │
         ▼
   ats-mcp launcher  (Node OR Java — see /node and /java in this repo)
         │
   spawns / loads
         │
         ▼
  AtsReplServer (ats-core)
         │
  ┌──────┼──────┬───────┐
  ▼      ▼      ▼       ▼
 web   mobile  desktop api

При первом использовании загрузчик подготавливает все необходимое для ATS в директории ~/.actiontestscript/:

  • libs — загружаются из https://actiontestscript.org/releases/ats-libs/<version>.zip, если ~/.actiontestscript/libs/ отсутствует.

  • system driver (для автоматизации десктопных приложений) — последняя версия загружается из https://actiontestscript.org/releases/ats-drivers/<os>/system/ и автоматически обновляется при выходе новой версии.

  • browser drivers — загружаются по требованию самим ats-core при первом вызове start_channel для конкретного браузера/версии.

Никаких ручных шагов по установке — npx -y ats-mcp или java -jar ats-mcp.jar достаточно, чтобы начать автоматизацию веб-, десктопных приложений или API.

Related MCP server: InSite

Предварительные требования

  • Java 17+ (обязательно — ats-core работает на JVM). Установите из Adoptium Temurin или через ваш менеджер пакетов.

  • Node 18+ (только если вы используете npm-дистрибутив). Установите с nodejs.org или через ваш менеджер пакетов.

Maven не требуется — оба дистрибутива поставляются в собранном виде. Maven нужен только для сборки JAR из исходного кода (см. java/).

Настройка вашего MCP-клиента

Claude Code

Добавьте .mcp.json в корень проекта:

{
  "mcpServers": {
    "ats": {
      "command": "npx",
      "args": ["-y", "ats-mcp@latest"]
    }
  }
}

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

{
  "mcpServers": {
    "ats": {
      "command": "java",
      "args": ["-jar", "/path/to/ats-mcp-0.4.0.jar"]
    }
  }
}

Claude Desktop

Аналогичная структура в файле claude_desktop_config.json.

Переменные окружения

Имя

Назначение

По умолчанию

ATS_VERSION

Версия ats-automated-testing для загрузки.

3.6.6

ATS_HOME

Путь, где хранятся библиотеки и драйверы ATS.

~/.actiontestscript

JAVA_BIN

Путь к исполняемому файлу java.

java в PATH

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

30 инструментов, сгруппированных по назначению:

Сеанс / каналы

Инструмент

Что делает

start_channel

Открывает веб / мобильный / десктопный / api / SAP канал

stop_channel

Закрывает канал

switch_channel

Делает канал активным

Навигация (веб)

Инструмент

Что делает

goto_url

Переход по URL

navigate_back

Назад в истории браузера

navigate_forward

Вперед в истории браузера

refresh

Перезагрузка текущей страницы

Взаимодействие

Инструмент

Что делает

click

Клик мышью по элементу

hover

Наведение мыши на элемент

send_keys

Ввод текста в элемент

press_key

Нажатие специальной клавиши (ENTER, TAB, стрелки, F-клавиши…)

scroll

Прокрутка элемента на заданное количество пикселей

drag / drop

Перетаскивание элемента (drag-and-drop)

select_option

Выбор опции в <select> по тексту/значению/индексу

file_upload

Загрузка локального файла в input для файлов

handle_dialog

Принять/отклонить JS alert/confirm/prompt

Инспекция

Инструмент

Что делает

screenshot

Создание PNG-скриншота текущего состояния

capture_tree

Выгрузка DOM / иерархии представлений

find_elements

Поиск элементов по CSS-селектору (веб) или SAP-тегу

evaluate_js

Выполнение JavaScript на странице и возврат результата

console_logs

Сообщения консоли JS, захваченные на активном веб-канале

network_list

Захваченные HTTP-запросы (с индексом для network_detail)

network_detail

Полный запрос/ответ для одного обмена

network_cookies

Cookies на активном веб-канале

Окно / вкладки

Инструмент

Что делает

window_resize

Изменение размера (и опционально перемещение) окна

window_switch

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

window_new_tab

Открытие новой вкладки, опционально по URL

window_close

Закрытие текущей вкладки/окна

Дополнительные возможности

Инструмент

Что делает

run_ats_block

Выполнение последовательности команд ATS

Сравнение с Playwright MCP

ats-mcp охватывает ту же область взаимодействия, что и @playwright/mcp для веба, плюс три возможности, которых нет у Playwright:

  • Мультиплатформенность — веб, мобильные устройства (физические Android/iOS, симуляторы, эмуляторы, Genymotion Cloud), десктопные приложения (через системный драйвер ATS), REST/SOAP API и SAP GUI.

  • Встроенное неявное ожидание — поиск элементов автоматически повторяется с задержкой, поэтому LLM не нужно добавлять wait_for для каждого действия.

  • Прямой доступ — run_ats_block предоставляет доступ ко всему словарю действий ATS, если специализированного инструмента недостаточно.

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

ats-mcp/
├── node/      — TypeScript implementation (published to npm)
├── java/      — Maven implementation (released as a fat JAR)
├── README.md
└── .gitlab-ci.yml

Обе реализации нацелены на один и тот же протокол и используют общие определения инструментов.

Лицензия

Apache-2.0 — такая же, как у ats-core.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers