ats-mcp
ats-mcp
Un servidor MCP que permite a un LLM ejecutar sesiones de prueba de ActionTestScript — web, móvil, escritorio y API — a través del REPL de ats-core.
Úsalo con Claude Code, Claude Desktop, Cursor o cualquier cliente compatible con MCP para que el asistente realmente interactúe con un sistema bajo prueba: iniciar canales, hacer clic en elementos, capturar capturas de pantalla, inspeccionar el DOM o la jerarquía de vistas móviles, ejecutar scripts de ATS, todo como llamadas a herramientas.
Hay dos distribuciones disponibles, ambas conectadas al mismo conjunto de herramientas:
Instalación | Ideal para | |
npm |
| Desarrolladores que prefieren Node, la comunidad MCP en general |
JAR | Descarga | Usuarios que ya tienen Java pero no Node |
Cómo funciona
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 apiEn el primer uso, el lanzador aprovisiona todo lo que ATS necesita en ~/.actiontestscript/:
libs — descargadas desde
https://actiontestscript.org/releases/ats-libs/<version>.zipsi falta~/.actiontestscript/libs/.system driver (para automatización de aplicaciones de escritorio) — la última versión se obtiene de
https://actiontestscript.org/releases/ats-drivers/<os>/system/, y se actualiza automáticamente cuando se publica una nueva.browser drivers — obtenidos bajo demanda por el propio ats-core en el primer
start_channelpor navegador/versión.
No hay paso de instalación manual: npx -y ats-mcp o java -jar ats-mcp.jar es suficiente para pasar de cero a la automatización web/escritorio/api.
Requisitos previos
Java 17+ (siempre requerido: ats-core es JVM)
Node 18+ (solo si usas la distribución npm)
Configura tu cliente MCP
Claude Code
Añade un .mcp.json en la raíz del proyecto:
{
"mcpServers": {
"ats": {
"command": "npx",
"args": ["-y", "ats-mcp@latest"]
}
}
}O, con el JAR:
{
"mcpServers": {
"ats": {
"command": "java",
"args": ["-jar", "/path/to/ats-mcp-0.4.0.jar"]
}
}
}Claude Desktop
La misma estructura, en claude_desktop_config.json.
Variables de entorno
Nombre | Propósito | Predeterminado |
| Versión de |
|
| Dónde residen las librerías y drivers de ATS. |
|
| Ruta al ejecutable |
|
Herramientas expuestas
30 herramientas, agrupadas por propósito:
Sesión / canales
Herramienta | Qué hace |
| Abrir un canal web / móvil / escritorio / api / SAP |
| Cerrar un canal |
| Activar un canal |
Navegación (web)
Herramienta | Qué hace |
| Navegar a una URL |
| Historial del navegador hacia atrás |
| Historial del navegador hacia adelante |
| Recargar la página actual |
Interacción
Herramienta | Qué hace |
| Clic del ratón en un elemento |
| Pasar el ratón sobre un elemento |
| Escribir texto en un elemento |
| Presionar una tecla especial (ENTER, TAB, flechas, teclas F…) |
| Desplazar un elemento mediante un desplazamiento de píxeles con signo |
| Arrastrar y soltar en dos pasos de origen → destino |
| Seleccionar una opción de |
| Subir un archivo local a un input de archivo |
| Aceptar/descartar/predeterminar una alerta/confirmación/prompt de JS |
Inspección
Herramienta | Qué hace |
| Capturar un PNG del estado actual |
| Volcar el DOM / jerarquía de vistas |
| Enumerar elementos que coinciden con un selector CSS (web) o etiqueta SAP |
| Ejecutar JavaScript en la página y devolver su valor |
| Mensajes de consola JS capturados en el canal web activo |
| Solicitudes HTTP capturadas (con índice para |
| Solicitud/respuesta completa para un intercambio |
| Cookies en el canal web activo |
Ventana / pestañas
Herramienta | Qué hace |
| Cambiar el tamaño (y opcionalmente mover) la ventana |
| Cambiar de pestaña por índice / nombre / subcadena de URL |
| Abrir una nueva pestaña, opcionalmente en una URL |
| Cerrar la pestaña/ventana actual |
Salida de emergencia
Herramienta | Qué hace |
| Ejecutar una secuencia de líneas de acción ATS sin procesar |
Posicionamiento frente a Playwright MCP
ats-mcp cubre la misma superficie de interacción que @playwright/mcp para la web, además de tres cosas que Playwright no hace:
Multiplataforma — web, móvil (Android/iOS físico, simuladores, emuladores, Genymotion Cloud), aplicaciones de escritorio (a través del driver del sistema ATS), APIs REST/SOAP y SAP GUI.
Espera implícita integrada — las búsquedas de elementos se reintentan con retroceso, por lo que el LLM no necesita añadir llamadas
wait_foralrededor de cada acción.Salida de emergencia —
run_ats_blockexpone todo el vocabulario de acciones de ATS cuando una herramienta diseñada específicamente no es suficiente.
Estructura del repositorio
ats-mcp/
├── node/ — TypeScript implementation (published to npm)
├── java/ — Maven implementation (released as a fat JAR)
├── README.md
└── .gitlab-ci.ymlAmbas implementaciones apuntan a la misma superficie de protocolo y comparten las mismas definiciones de herramientas.
Licencia
Apache-2.0 — igual que ats-core.
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