AIQUAA Playwright MCP Server
About
Generate Playwright BDD tests, GitHub Actions and Azure Pipelines with business-rule traceability, focused CodeGraph context and persistent Engram memory.
Details
- Author
- stevenayal
- Categories
- Developer Tools, Other, Automation, Infrastructure
Jump to
Setup
Install AIQUAA Playwright MCP Server in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/stevenayal/aiquaa-playwright-mcp-server
Follow the installation instructions in the repository README, then restart your MCP client.
Generate Playwright BDD tests, GitHub Actions and Azure Pipelines with business-rule traceability, focused CodeGraph context and persistent Engram memory.
Convertí requisitos en pruebas Playwright BDD trazables, listas para CI y conectadas con las reglas de negocio que protegen.
AIQUAA Playwright MCP Serveres un servidorModel Context Protocolpara equipos de QA que necesitan algo más que código generado: escenarios Gherkin, automatización Playwright, trazabilidad por regla, pipelines reproducibles y cobertura auditable.
npm·última release·reportar un problema
flowchart LR A["Requisito o historia"] --> B["qa_bdd"] B --> C["Escenarios Gherkin"] C --> D["qa_mapear"] D --> E["Tags @rule"] E --> F["qa_pruebas"] F --> G["Playwright + CI"] G --> H["Resultados"] H --> I["qa_cobertura"] I --> J["Cobertura por regla"]
El resultado no es un test aislado. Es una cadena de evidencia:
- cada escenario puede declarar qué regla valida;
- cada ejecución conserva esa relación en el reporter;
- cada regla queda clasificada comopassed,failing,not_runouncovered;
- GitHub Actions y Azure Pipelines reciben artefactos listos para adaptar.
- MCP:http://localhost:3000/mcp
- Health check:http://localhost:3000/health
Para clientes compatibles con Streamable HTTP, usá esta definición como referencia:
{ "mcpServers": { "aiquaa-qa": { "url": "http://localhost:3000/mcp" } } }
La ubicación exacta del archivo cambia según el cliente. El servidor usa Streamable HTTP sin estado y crea un contexto aislado por solicitud.
Generá escenarios BDD para recuperación de contraseña, mapealos a RN-014 y RN-015, y prepará los tests Playwright para GitHub Actions. No ejecutes el navegador.
El agente puede encadenarqa_bdd→qa_mapear→qa_pruebasy devolverte archivos copiables.
Los nombres son breves, en español y fáciles de descubrir:
Todos los inputs usan schemas Zod estrictos. Las tools declaran sus annotations MCP de lectura, escritura, idempotencia y acceso externo.
Según las opciones seleccionadas,qa_pruebaspuede devolver:
features/ ├── steps/*.steps.ts └── support/ ├── auth.setup.ts ├── external-validation.ts └── rule-hooks.ts playwright.config.ts .github/workflows/playwright.yml azure-pipelines.playwright.yml
Además, el paquete exporta extensiones reutilizables:
import AiquaaRuleReporter from "aiquaa-playwright-mcp-server/rule-reporter"; import { ruleIdsFromTags } from "aiquaa-playwright-mcp-server/rule-tags";
El proyecto generado usa las APIs públicas deplaywright-bddy Playwright. No modifica internals del runner.
{ "feature_content": "Feature: Login\nScenario: Acceso válido\nGiven el usuario está en login\nWhen hace clic en \"Ingresar\"\nThen ve \"Inicio\"", "base_url": "https://staging.example.com", "app_context": "El formulario usa labels Email y Contraseña.", "selector_source": "provided_component", "auth": { "login_path": "/login", "username_label": "Email", "password_label": "Contraseña", "submit_name": "Ingresar", "success_url_pattern": "dashboard", "username_env": "TEST_USER", "password_env": "TEST_PASSWORD" }, "browsers": ["chromium"], "ci_targets": ["github_actions", "azure_pipelines"], "response_format": "json" }
npm install -D @playwright/test playwright-bdd aiquaa-playwright-mcp-server npx bddgen npx playwright test
El reporter escribetest-results/aiquaa-rule-results.json, compatible conqa_cobertura.
El generador distingue el origen real de cada locator:
- provided_dom: DOM renderizado inspeccionado;
- provided_component: componente React, Vue, Angular u otro código real;
- provided_test_ids: inventario confirmado dedata-testid;
- estimated: inferido solo desde Gherkin.
Si falta información para implementar una acción o assertion confiable, genera unTODOque falla explícitamente. No produce falsos positivos comprobando únicamente que la página existe.
- No incluye credenciales fallback en código generado.
- auth.setup.tsexige secretos y usa PlaywrightstorageState.
- SMS, email, push y estados externos se consultan mediante variables de entorno.
- El Bearer token recibido por el MCP se usa únicamente para esa solicitud.
- CodeGraph solo puede leer rutas bajoCODEGRAPH_ALLOWED_ROOTS.
- Engram queda limitado a memoria con scope de proyecto.
El passthrough de Bearer protege las llamadas a AIQUAA, pero no reemplaza la autenticación del propio endpoint MCP. Si lo exponés en Internet, protegelo con un gateway o reverse proxy.
La mayoría del flujo funciona sin backend:
- qa_bddacepta texto directo;
- qa_pruebasacepta Gherkin directo;
- qa_mapeares completamente local;
- qa_coberturaacepta un snapshot de reglas.
Para resolver IDs y consultar reglas configurá:
$env:AIQUAA_API_BASE_URL="https://api.example.aiquaa.com" $env:AIQUAA_ACCESS_TOKEN="<token-local>" npx aiquaa-playwright-mcp-server
Las rutas actuales del cliente AIQUAA están centralizadas ensrc/constants.tsy deben confirmarse contra el OpenAPI real:
npm install -g @colbymchenry/codegraph cd /workspace/projects/checkout codegraph init -i export CODEGRAPH_BIN=codegraph export CODEGRAPH_ALLOWED_ROOTS=/workspace/projects
Usáqa_contextopara localizar rutas, componentes, labels y test IDs; luego pasá el resultado comoapp_contextaqa_pruebas. En Windows, separá múltiples raíces permitidas con;; en Linux/macOS, con:.
Engramconserva decisiones útiles entre sesiones sin convertir cada tool call en memoria.
export ENGRAM_BIN=engram export ENGRAM_PROJECT_PREFIX=aiquaa-
- qa_memoriabusca solo dentro del proyecto indicado.
- qa_recordarexige untopic_keyestable para actualizar en vez de duplicar.
What: se eligió getByRole para acciones primarias. Why: conserva semántica accesible y evita CSS frágil. Where: features/steps/login.steps.ts. Learned: data-testid queda para controles sin nombre accesible estable.
En contenedores, montá el directorio de datos de Engram como volumen persistente. No publiques su base como artifact: puede contener contexto sensible.
El repositorio valida cada cambio mediante.github/workflows/ci.yml. Para proyectos consumidores incluye:
- examples/ci/github-actions-playwright.yml
- examples/ci/azure-pipelines-playwright.yml
Ambos ejemplos ejecutanbddgen, corren Playwright, publican JUnit y conservan reportes como artifacts. Las releases npm se publican mediante Trusted Publishing/OIDC, sin tokens permanentes.
La versión0.2.0redujo los nombres públicos para ahorrar contexto. Es un cambio incompatible intencional; no se duplican aliases.
Este MCPgeneray conecta artefactos. No:
- abre navegadores ni ejecuta pruebas dentro del servidor;
- hace OCR de PDFs;
- adivina que un selector estimado fue validado;
- reemplaza la revisión humana del Gherkin generado;
- cuenta comouncovereduna regla que no fue incluida en AIQUAA o en el snapshot.
Para PDFs, extraé primero el texto con una herramienta especializada y enviárequirement_source: "extracted_from_pdf"; el servidor aplica guardrails contra OCR evidentemente roto.
git clone https://github.com/stevenayal/aiquaa-playwright-mcp-server.git cd aiquaa-playwright-mcp-server npm ci npm test
El proyecto usa TypeScript estricto, 9 pruebas automatizadas y 13 evaluaciones MCP. Los YAML generados y los ejemplos estáticos se validan automáticamente.
MIT.playwright-bddmantiene licencia MIT y Playwright licencia Apache-2.0.
Si este proyecto te ayuda a convertir requisitos en evidencia de calidad, dejá una ⭐ y compartí qué integración te gustaría ver después.
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
An AI agent for the Playwright MCP server, enabling automated web testing and interaction.
Autonomous QA MCP that tests web and macOS apps like a real engineer and verifies every bug.
rowser-backed MCP wrapper for mcp-atlassian with Playwright SSO auth. Enables AI tools to access Atlassian Server/Data Center instances behind corporate SSO (Okta, SAML, ADFS) where API tokens are not available.
A Playwright-based MCP server that exposes a live browser as a traceable, inspectable, debuggable and controllable execution environment for AI agents.
Browser automation via Chrome DevTools Protocol
Drive, inspect, and assert on real Electron desktop apps from an AI agent — agent-native, Playwright-style automation with accessibility refs, stable error codes, and retrying assertions
Playwright MCP for Godot, screenshots, SceneTree manipulation, and arbitrary GDScript execution at runtime through a local UDP bridge.
A lightweight, AI-powered end-to-end testing framework for CI workflows. Requires an OpenAI API key.
Automate web testing and tasks by connecting Claude Desktop with Playwright.
Create and manage end-to-end tests using the Octomind platform.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


