Un servidor del Protocolo de Contexto de Modelo (MCP) que conecta TestDino con agentes de IA. Este servidor te permite interactuar directamente con tus datos de prueba de TestDino mediante comandos en lenguaje natural.
Un servidor de Model Context Protocol (MCP) que conecta TestDino con agentes de IA. Este servidor te permite interactuar con tus datos de prueba de TestDino directamente mediante comandos en lenguaje natural.
Inicio Rápido
Añade esto a la configuración de tu cliente MCP (~/.cursor/mcp.json para Cursor) y luego reinicia el cliente:
Obtén tu PAT desde TestDino → Configuración de Usuario → Tokens de Acceso Personal y luego pregúntale a tu asistente: "Comprueba el estado de TestDino." Deberías ver tu cuenta, organizaciones y proyectos. La configuración completa para Cursor y Claude Desktop está en Integración.
¿Qué es Esto?
Este servidor MCP cierra la brecha entre tu plataforma de gestión de pruebas TestDino y los agentes de IA. En lugar de navegar manualmente por el panel de TestDino, puedes pedirle a tu asistente de IA que:
Compruebe los resultados de ejecuciones de pruebas
Analice fallos de pruebas
Obtenga información detallada de casos de prueba
Gestione casos de prueba manuales y suites
Planifique lanzamientos, cree ejecuciones de pruebas manuales y asigne testers
Ejecute sesiones de pruebas exploratorias
Registre veredictos por caso (aprobado / fallido / bloqueado / etc.) desde el chat
Todo mediante comandos conversacionales simples.
Características
🔍 Verificación de Estado: Verifica tu conexión y valida tu PAT de TestDino. Obtén información de la cuenta y lista todas las organizaciones y proyectos disponibles.
📊 Gestión de Ejecuciones de Pruebas: Lista y recupera información detallada sobre tus ejecuciones de pruebas con opciones de filtrado (rama, tiempo, autor, commit, entorno).
🧪 Análisis de Casos de Prueba: Obtén detalles completos sobre casos de prueba individuales, incluidos errores, registros, pasos de ejecución y artefactos (capturas de pantalla, videos, trazas).
🐛 Depuración Asistida por IA: Depura fallos de casos de prueba con agregación de datos históricos, análisis de patrones de fallo y avisos de depuración amigables para IA. Analiza patrones en múltiples ejecuciones para identificar causas raíz.
🧭 Auditoría de Calidad de Pruebas: Obtén un aviso de auditoría seleccionado por el servidor más señales de rama, analiza tu código de prueba local y guarda el informe completado de vuelta en TestDino sin subir archivos fuente sin procesar.
📝 Gestión de Casos de Prueba: Crea, actualiza, lista y recupera casos de prueba manuales con filtrado y organización completos (estado, prioridad, severidad, tipo, capa, comportamiento, etiquetas).
📁 Organización de Suites de Pruebas: Crea y gestiona jerarquías de suites de pruebas para organizar tus casos de prueba manuales.
🚀 Planificación de Lanzamientos: Crea, navega y actualiza lanzamientos (también conocidos como hitos), anídalos hasta 3 niveles de profundidad y rastrea estadísticas de progreso acumuladas en todas las ejecuciones de un lanzamiento.
▶️ Ejecuciones de Pruebas Manuales: Crea ejecuciones limitadas a suites específicas o a todo el proyecto, vincúlalas a un lanzamiento y actualiza el estado del flujo de trabajo sin salir del chat.
✅ Asignación por Caso y Veredictos: Dentro de una ejecución, asigna cada caso de prueba a un tester (por User _id o correo electrónico) y establece el resultado — passed, failed, blocked, skipped, retest — exactamente como lo hace la interfaz de usuario.
🔭 Sesiones Exploratorias: Crea sesiones de pruebas exploratorias con misión/carta, asigna un tester, vincula a un lanzamiento y rastrea el estado.
🧩 Triaje de Fallos a Escala: Agrupa las pruebas fallidas de una ejecución por su firma de error subyacente para ver qué rojos son una sola causa raíz frente a muchos, para que arregles el problema real primero.
🔗 Integraciones con Rastreadores de Incidencias: Conecta Jira, Linear, Asana o monday.com y registra una incidencia rastreada directamente desde una prueba o ejecución fallida, luego verifica su estado más tarde sin salir del chat.
🔌 Compatible con MCP: Construido sobre el estándar Model Context Protocol. Puedes configurar TestDino MCP con cualquier IDE o agente de IA compatible con MCP (Cursor, Claude Desktop, etc.).
⚡ Configuración Fácil: Instala y configura en minutos con npx. ¡No se requiere instalación!
🔐 Seguro: PAT almacenado de forma segura en tu configuración local. Un solo PAT proporciona acceso a todas las organizaciones y proyectos para los que tengas permisos.
Herramientas Disponibles
El servidor proporciona 43 herramientas en nueve dominios:
Ejecución de Pruebas y Resultados:
health - Verifica tu conexión y valida tu PAT. Muestra información de la cuenta, organizaciones disponibles y proyectos con permisos de acceso.
list_testruns - Navega por ejecuciones de pruebas con filtros (rama, intervalo de tiempo, autor, commit, entorno). Admite paginación y operaciones por lotes.
get_run_details - Obtén detalles completos sobre una ejecución de pruebas específica, incluidos estadísticas, suites de pruebas, casos de prueba y metadatos. Admite operaciones por lotes (IDs separados por comas, máximo 20).
list_testcase - Lista casos de prueba con filtrado completo (por ejecución de pruebas, estado, navegador, categoría de error, rama, entorno, commit, autor, archivo de especificaciones, etiquetas, tiempo de ejecución, artefactos y más). Puede filtrar por criterios de ejecución de pruebas o directamente por propiedades del caso de prueba.
get_testcase_details - Obtén información detallada sobre un caso de prueba específico, incluidos mensajes de error, trazas de pila, pasos de prueba, registros de consola y artefactos. Puede identificarse por testcase_id solo o por testcase_name con testrun_id/contador.
debug_testcase - Depura un caso de prueba agregando datos históricos de fallos en múltiples ejecuciones. Devuelve patrones de fallo, categorías de error, mensajes de error comunes, ubicaciones de error, problemas específicos del navegador y un aviso de depuración preformateado para análisis de IA. Perfecto para análisis de causa raíz e identificación de comportamiento de prueba inestable.
get_debug_evidence - Comienza toda investigación de pruebas fallidas aquí: una llamada devuelve el veredicto de inestabilidad con firmas por intento, el límite de regresión (último pase → primer fallo) y enlaces de descarga de corta duración para cada artefacto almacenado (traza, capturas de pantalla, imágenes de diferencia visual). JSON o markdown.
get_flake_verdict - Compara los intentos de reintento de una prueba dentro de una ejecución y di si el fallo se repite: deterministic, flaky o inconclusive.
verify_fix - Después de que llegue una nueva ejecución, verifica si una corrección se mantuvo contra la ejecución en la que viste el fallo: fixed, not_fixed, changed_failure, still_failing, unstable, no_runs_since_baseline o baseline_not_found.
get_audit_report - Obtén el contexto de auditoría (aviso seleccionado por el servidor + pruebas principales fallidas / inestables / lentas para la rama) para iniciar una nueva auditoría, navegar por informes históricos o recuperar uno por reportId.
submit_audit_report - Envía un informe de auditoría completado (puntuación, hallazgos, recomendaciones, markdown) a TestDino.
Gestión de Casos de Prueba:
list_manual_test_cases - Busca y lista casos de prueba manuales con filtrado completo (proyecto, suite, estado, prioridad, severidad, tipo, capa, comportamiento, estado de automatización, etiquetas, estado de inestabilidad).
get_manual_test_case - Obtén información detallada sobre un caso de prueba manual específico, incluidos pasos, campos personalizados, precondiciones, poscondiciones y todos los metadatos.
create_manual_test_case - Crea nuevos casos de prueba manuales con pasos, precondiciones, poscondiciones y metadatos (prioridad, severidad, tipo, capa, comportamiento).
list_manual_test_suites - Lista la jerarquía de suites de pruebas para encontrar IDs de suite para organización. Admite filtrado por suite principal.
create_manual_test_suite - Crea nuevas carpetas de suites de pruebas para organizar casos de prueba. Admite suites anidadas proporcionando parentSuiteId.
Lanzamientos (también conocidos como Hitos):
list_releases - Navega por lanzamientos de un proyecto con filtros (búsqueda, tipo, estado de finalización, lanzamiento principal). Los lanzamientos agrupan ejecuciones + sesiones y pueden anidarse hasta 3 niveles de profundidad.
get_release - Obtén detalles completos de un lanzamiento, incluidos fechas, estado, jerarquía principal/raíz y estadísticas de progreso acumuladas en todas las ejecuciones de este lanzamiento y sus descendientes. Acepta _id interno o ID de estilo contador como MS-12.
create_release - Crea un nuevo lanzamiento con nombre, tipo, fechas y principal opcional para anidamiento.
update_release - Modifica un lanzamiento existente — nombre, fechas, indicadores de finalización, tipo, incidencias vinculadas. Los lanzamientos cerrados aún son editables.
Ejecuciones de Pruebas Manuales:
list_manual_runs - Navega por ejecuciones manuales en un proyecto. Filtra por estado, estado de flujo, entorno, lanzamiento, etiquetas o búsqueda de nombre de texto libre.
get_manual_run - Obtén detalles completos de una ejecución — estadísticas de pruebas (total/aprobadas/fallidas/bloqueadas/sin probar), contribuyentes, adjuntos, lanzamiento vinculado. Acepta _id interno o ID de estilo contador como RUN-12.
create_manual_run - Crea una nueva ejecución manual. Elige selectionMode='all' para cada caso en el proyecto, o 'selected' con IDs de suite/caso para limitarla. Vincúlala a un lanzamiento con releaseId.
update_manual_run - Modifica metadatos de ejecución — nombre, entorno, estado, vinculación de lanzamiento, etiquetas. Las ejecuciones cerradas son de solo lectura excepto para releaseId.
list_run_test_cases - Obtén las filas de ejecución por caso dentro de una ejecución — exactamente lo que muestra la interfaz de usuario en la tabla de casos de prueba de la ejecución. Cada fila incluye el asignado actual y el resultado actual. Filtra por asignado (correo electrónico o _id) o resultado.
update_run_test_case - Establece el asignado y/o resultado para un caso de prueba dentro de una ejecución — igual que hacer clic en "Asignar a" + la píldora de resultado en la interfaz de usuario. Funciona incluso en casos sin probar (crea automáticamente la fila por caso en la primera edición). Acepta caseKey (TC-156), _id del caso de prueba o el ID interno tcm_rtc_….
Sesiones Exploratorias:
list_sessions - Navega por sesiones exploratorias en un proyecto. Filtra por estado, estado de flujo, sessionType, asignado (correo electrónico o _id), lanzamiento, etiquetas.
get_session - Obtén detalles completos de una sesión — nombre, misión, estado, asignado, lanzamiento vinculado, hallazgos. Acepta _id interno o ID de estilo contador como SES-12.
create_session - Crea una nueva sesión exploratoria con misión/carta, sessionType, asignado, estimación y vinculación de lanzamiento opcional.
get_run_error_clusters - Agrupa las pruebas fallidas de una ejecución por firma de error para triaje a escala. Superficie de clústeres de pruebas que comparten el mismo error de causa raíz, con un filtro opcional status (all, failed, flaky). Úsalo después de list_testruns para entender por qué falló una ejecución.
Integraciones (Rastreadores de Incidencias):
connect_integration - Devuelve una URL de conexión OAuth para un proveedor (Jira, Linear, Asana, monday.com, GitHub). Muestra la URL al usuario para autorizar; no la abras programáticamente.
get_integration_status - Informa si un proveedor está conectado para un proyecto. Establece includeCreateOptions para también obtener los campos disponibles para la creación de incidencias. Llama a esto antes de create_external_issue.
create_external_issue - Registra una incidencia en un rastreador conectado (Jira, Linear, Asana, monday.com) desde una entidad fuente de TestDino como un caso de prueba o ejecución fallida. Admite preview y reintentos idempotentes mediante idempotencyKey.
get_external_issue - Obtén incidencias creadas previamente por sus IDs o claves (una o muchas) y devuelve su estado actual en el proveedor (Jira, Linear, Asana).
Soporte de proveedores: Todos los proveedores pueden conectarse y verificarse su estado. La creación de incidencias funciona con Jira, Linear, Asana y monday.com. La lectura de incidencias funciona con Jira, Linear y Asana. GitHub se admite como integración de PR/CI, no como rastreador de incidencias.
Información de IA:
get_ai_insights - El análisis de IA de TestDino en tres niveles: resumen del proyecto (conteos de fallos por categoría + principales infractores en un rango de fechas), ejecución (categorización de fallos por IA, clústeres de fallos, tabla de análisis de errores, resumen escrito por LLM) y caso de prueba (recomendaciones + correcciones rápidas). Devuelve un estado disabled cuando las funciones de IA están desactivadas para el proyecto (Configuración → IA).
get_trace_analysis - Resuelve la traza de Playwright alojada de una prueba fallida a una URL de descarga de corta duración y devuelve un runbook para la depuración local de la CLI de trazas (abrir → acciones → instantánea → cerrar).
La Información de IA también está disponible en línea: pasa include_ai_insights: true a get_run_details (adjunta la Información de IA de la ejecución bajo ai_insights) o debug_testcase (adjunta recomendaciones + correcciones rápidas bajo ai_fixes).
Opciones de Instalación
Principalmente hay 3 opciones para usar TestDino MCP:
Opción 1: Vía npx (Recomendado - Sin Instalación)
No se requiere instalación
Se descarga y ejecuta automáticamente cuando es necesario
Siempre usa la versión más reciente
Configurado en cualquier plataforma compatible con MCP
Opción 2: Instalación Global
npm install -g @testdino/mcp
Instala una vez, úsalo en cualquier proyecto
Requiere Node.js 20+ y npm
Usa el comando: testdino-mcp
Opción 3: Instalación en el Proyecto
npm install @testdino/mcp
Instalado en el node_modules de tu proyecto
Usa el comando: npx @testdino/mcp
Integración
Una guía de integración simple para el IDE Cursor:
Reinicia Claude Desktop y luego pregunta "Comprueba el estado de TestDino" para verificar.
Desarrollo local
Por defecto, el servidor se comunica con https://mcp.testdino.com. Para apuntarlo a una API local durante el desarrollo, establece TESTDINO_API_URL (ver .env.example):
TESTDINO_API_URL=http://localhost:3001
Uso
Una vez configurado, simplemente habla con tu asistente de IA en lenguaje natural. Importante: Las herramientas requieren tu Token de Acceso Personal (PAT) configurado como TESTDINO_PAT en mcp.json. El PAT proporciona automáticamente acceso a todas las organizaciones y proyectos para los que tengas permisos.
Comandos de Ejemplo
Prueba estos comandos en lenguaje natural en Cursor o Claude Desktop (u otros clientes compatibles con MCP):
Conexión y Configuración:
"Comprueba si mi conexión de TestDino está funcionando"
"Valida mi PAT de TestDino"
Explorando Ejecuciones de Pruebas:
"Muéstrame mis últimas 5 ejecuciones de pruebas"
"¿Qué ejecuciones de pruebas hay en la rama develop?"
"Lista las ejecuciones de pruebas de los últimos 3 días"
"Muéstrame las ejecuciones de pruebas del autor john"
"Encuentra ejecuciones de pruebas para el commit abc123"
"Lista todas las ejecuciones de pruebas en el entorno de producción"
Analizando Resultados de Pruebas:
"Obtén detalles de la ejecución de pruebas test_run_6901b2abc6b187e63f536a6b"
"Obtén detalles de la ejecución de pruebas contador 42"
"¿Qué casos de prueba fallaron en la ejecución de pruebas test_run_6901b2abc6b187e63f536a6b?"
"Muéstrame todas las pruebas flaky de la última ejecución de pruebas"
"Lista todos los casos de prueba fallidos en el entorno de producción"
"Muéstrame los casos de prueba de la rama main que tardaron más de 100 segundos"
"Encuentra todos los problemas de tiempo de espera en los casos de prueba del commit abc123"
Depurando Fallos de Pruebas:
"Depura el caso de prueba 'Verificar inicio de sesión de usuario' en el proyecto proj_123"
"Depura 'Verificar que el Usuario Puede Completar el Viaje desde el Inicio de Sesión hasta la Colocación del Pedido @webkit' de los informes de testdino"
"Analiza los fallos del caso de prueba 'Flujo de pago' en el proyecto proj_123"
"¿Cuáles son los patrones de fallo de la prueba 'Autenticación de API'?"
"¿Por qué está fallando el caso de prueba 'Registro de usuario'?"
"Depura el caso de prueba 'Verificar que el usuario puede iniciar y cerrar sesión con éxito @chromium'"
Gestionando Casos de Prueba Manuales:
"Lista todos los casos de prueba manuales en el proyecto proj_123"
"Busca casos de prueba manuales con la etiqueta 'smoke' en el proyecto proj_123"
"Muéstrame todos los casos de prueba manuales de prioridad crítica en el proyecto proj_123"
"Obtén detalles del caso de prueba manual TC-123 en el proyecto proj_123"
"Crea un nuevo caso de prueba manual para la función de inicio de sesión en la suite Pruebas de Autenticación"
"Actualiza el caso de prueba TC-123 para marcarlo como obsoleto"
"Lista todas las suites de pruebas en el proyecto proj_123"
"Crea una nueva suite de pruebas llamada 'Pruebas de Autenticación' en el proyecto proj_123"
Lanzamientos:
"Lista todos los lanzamientos en el proyecto proj_123"
"Muéstrame las iteraciones abiertas en este proyecto"
"Obtén detalles del lanzamiento MS-12 y muestra el progreso de pruebas acumulado"
"Crea un lanzamiento llamado 'Sprint 42' como una iteración del 12 de mayo al 26 de mayo"
"Marca el lanzamiento MS-12 como completado"
Ejecuciones de Pruebas Manuales:
"Lista las ejecuciones manuales en el lanzamiento MS-12"
"Muéstrame todas las ejecuciones en progreso en staging"
"Obtén detalles de la ejecución RUN-7"
"Crea una ejecución manual llamada 'Sprint 42 Smoke' vinculada al lanzamiento MS-12 en staging, cubriendo la suite de Autenticación"
"Establece el estado de la ejecución RUN-7 a Hecho"
"Re-vincula la ejecución RUN-7 al lanzamiento MS-13"
Asignando Casos y Registrando Veredictos en una Ejecución:
"Lista los casos de prueba en la ejecución RUN-1 con sus asignados actuales y resultados"
"Asigna TC-156 en la ejecución RUN-1 a alice@company.com y márcalo como Aprobado"
"Marca TC-157 en la ejecución RUN-1 como Fallido"
"Asigna TC-158 en la ejecución RUN-1 a bob@company.com — deja el resultado sin probar"
"Muéstrame todos los casos en la ejecución RUN-1 asignados a alice@company.com que aún no se han probado"
Sesiones Exploratorias:
"Lista las sesiones exploratorias activas para el proyecto proj_123"
"Crea una sesión exploratoria llamada 'Carta de autenticación — 12 de mayo' con la misión 'encontrar errores de manejo de sesión alrededor de 2FA' asignada a tester@company.com, estimación de 60 minutos"
"Actualiza la sesión SES-3 para marcarla como Hecho"
Documentación
Guía de Instalación: Instrucciones detalladas de configuración para Cursor, Claude Desktop y otros clientes compatibles con MCP
Documentación de Herramientas: Guía completa de las 43 herramientas disponibles con ejemplos, parámetros y casos de uso
Guía de Habilidades del Agente de IA: Guía para agentes de IA sobre patrones de selección de herramientas, árboles de decisión y mejores prácticas
Requisitos
Node.js: Versión 20.0.0 o superior
NPM: Última versión recomendada (para gestión de paquetes)
Cuenta de TestDino: Cuenta válida con acceso a Ejecuciones de Pruebas y/o Gestión de Casos de Prueba
Token de Acceso Personal (PAT): Requerido para autenticación. Obténlo desde Configuración de TestDino → Tokens de Acceso Personal
Características Clave Explicadas
Depuración Asistida por IA con debug_testcase
La herramienta debug_testcase te ayuda a entender por qué fallan las pruebas analizando datos históricos de ejecución:
Análisis Histórico: Agrega datos de múltiples ejecuciones de pruebas para identificar patrones
Patrones de Fallo: Identifica categorías de error comunes, mensajes y ubicaciones
Problemas Específicos del Navegador: Detecta patrones de fallo específicos del navegador
Detección de Pruebas Flaky: Analiza patrones de reintento e indicadores de flakiness
Salida Amigable para IA: Devuelve indicaciones de depuración preformateadas para análisis de IA
Correlación de Código: Proporciona números de archivo y línea para ubicaciones de error, permitiendo que la IA se correlacione con el código fuente
Flujo de Trabajo de Ejemplo:
Pregunta: "Depura el caso de prueba 'Verificar inicio de sesión de usuario' de los informes de testdino"
La IA llama a debug_testcase con projectId y testcase_name
La herramienta devuelve datos históricos con patrones de fallo
La IA analiza los datos y los correlaciona con tu código de prueba (si es accesible)
La IA proporciona sugerencias de corrección específicas basadas en patrones y análisis de código
Soporte
Documentación: Consulta docs/TOOLS.md para la documentación completa de herramientas
Ayuda de Instalación: Consulta docs/INSTALLATION.md para instrucciones detalladas de configuración