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

При первом использовании программа запуска provision-ит всё необходимое для 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 с нуля.

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

  • Java 17+ (обязательно всегда — ats-core работает на JVM)

  • Node 18+ (только если вы используете npm-дистрибутив)

Настройка вашего 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

Загрузка локального файла в поле ввода файла

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.

-
security - not tested
F
license - not found
-
quality - not tested

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/actiontestscript/ats-mcp'

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