Apidog tests MCP
Añade la posibilidad de trabajar con la gestión de pruebas a través de MCP
GitHub
1
Prueba este MCPPatrocinadoDocumentación
apidog-tests-mcp
Servidor MCP (Model Context Protocol) para gestionar casos de prueba, escenarios, suites y datos de prueba de Apidog. Brinda a los asistentes de IA acceso completo de lectura/escritura a las funciones de gestión de pruebas de Apidog.
Este proyecto no es una integración oficial de Apidog.
Características
- Casos de prueba -- Crear, leer, actualizar, eliminar y crear en lote casos de prueba para endpoints de API
- Escenarios de prueba -- Construir flujos de prueba de varios pasos que encadenan múltiples llamadas a la API
- Suites de prueba -- Organizar pruebas en suites ejecutables para CI/CD
- Datos de prueba -- Gestionar iteraciones de pruebas basadas en datos con datos en formato CSV
- Carpetas -- Organizar escenarios y suites en estructuras de carpetas anidadas
- Herramientas de solo lectura -- Listar entornos, endpoints, categorías, etiquetas, ejecutores y estadísticas de cobertura
Documentación
docs/PRACTICAL-USAGE.md-- patrones probados para crear casos de prueba/escenarios/suites establesSECURITY.md-- reporte de vulnerabilidades y pautas de uso seguroCONTRIBUTING.md-- flujo de trabajo de contribuciónCHANGELOG.md-- notas de versión
Instalación
npm install -g @acabala/apidog-tests-mcp
O úsalo directamente con npx:
npx @acabala/apidog-tests-mcp
Configuración
El servidor requiere estas variables de entorno:
| Variable | Requerida | Descripción |
|---|---|---|
APIDOG_ACCESS_TOKEN | Sí | Tu token de acceso de Apidog |
APIDOG_PROJECT_ID | Sí | El ID del proyecto de Apidog |
APIDOG_BRANCH_ID | Sí | El ID de la rama con la que trabajar |
APIDOG_BASE_URL | No | Sobrescribir la URL base de la API (predeterminado: https://api.apidog.com/api/v1) |
Configuración del Cliente MCP
Agrégalo a tu configuración del cliente MCP (por ejemplo, Claude Desktop claude_desktop_config.json):
{
"mcpServers": {
"apidog-tests": {
"command": "npx",
"args": ["@acabala/apidog-tests-mcp"],
"env": {
"APIDOG_ACCESS_TOKEN": "your-token",
"APIDOG_PROJECT_ID": "your-project-id",
"APIDOG_BRANCH_ID": "your-branch-id"
}
}
}
}
Prácticas Recomendadas para Tokens
- Usa un token dedicado para automatización.
- Limita el acceso a los proyectos de Apidog mínimos requeridos.
- Rota los tokens regularmente.
- Mantén los archivos de configuración del cliente MCP locales/privados.
Herramientas Disponibles
Solo lectura
| Herramienta | Descripción |
|---|---|
list_environments | Listar todos los entornos con URLs base |
list_api_endpoints | Listar el árbol de endpoints de la API (filtrable por módulo y nombre) |
list_test_case_categories | Listar categorías de casos de prueba |
list_test_case_tags | Listar etiquetas disponibles |
list_runners | Listar ejecutores de pruebas autoalojados |
get_endpoint_statistics | Obtener estadísticas de cobertura de pruebas |
Casos de Prueba
| Herramienta | Descripción |
|---|---|
list_test_cases | Listar todos los casos de prueba (filtrable por endpoint) |
get_test_case | Obtener detalles completos del caso de prueba |
create_test_case | Crear un caso de prueba para un endpoint |
create_test_cases_bulk | Crear múltiples casos de prueba a la vez |
update_test_case | Actualizar un caso de prueba (GET-luego-fusionar) |
delete_test_case | Eliminar un caso de prueba |
Escenarios de Prueba
| Herramienta | Descripción |
|---|---|
list_test_scenarios | Listar escenarios con estructura de carpetas |
get_test_scenario_steps | Obtener pasos de un escenario |
create_test_scenario | Crear un escenario de prueba de varios pasos |
update_test_scenario_steps | Establecer/reemplazar pasos del escenario |
delete_test_scenario | Eliminar un escenario |
Suites de Prueba
| Herramienta | Descripción |
|---|---|
list_test_suites | Listar suites con estructura de carpetas |
get_test_suite | Obtener detalles completos de la suite |
create_test_suite | Crear una suite de prueba |
update_test_suite_items | Establecer elementos de la suite (grupos estáticos/dinámicos) |
delete_test_suite | Eliminar una suite |
Datos de Prueba
| Herramienta | Descripción |
|---|---|
list_test_data | Listar registros de datos de prueba para un caso de prueba |
get_test_data | Obtener datos de prueba con filas y columnas CSV |
create_test_data | Crear datos de prueba para un caso de prueba |
update_test_data | Actualizar datos de prueba (GET-luego-fusionar) |
delete_test_data | Eliminar un registro de datos de prueba |
Carpetas
| Herramienta | Descripción |
|---|---|
create_scenario_folder | Crear una carpeta de escenarios |
delete_scenario_folder | Eliminar una carpeta de escenarios |
create_suite_folder | Crear una carpeta de suites |
Desarrollo
# Install dependencies
npm install
# Run in development mode
npm run start:dev
# Type check
npm run typecheck
# Format
npm run format
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Build for production
npm run build
Seguridad
- Usa un token de automatización dedicado con los permisos mínimos requeridos.
- Nunca confirmes
APIDOG_ACCESS_TOKENni IDs específicos del entorno. - Mantén los archivos de configuración locales del cliente MCP privados.
- Consulta
SECURITY.mdpara la política de reporte y respuesta.
Publicación y Versionado
Este repositorio usa Changesets y un flujo de trabajo de publicación con GitHub Actions:
- Agrega un changeset para cambios visibles al usuario:
npm run changeset - La automatización de publicación crea/actualiza un PR de versión en
main - El PR de publicación fusionado publica en npm con procedencia
Pautas de Código Abierto
- Guía de contribución:
CONTRIBUTING.md - Código de conducta:
CODE_OF_CONDUCT.md - Registro de cambios:
CHANGELOG.md
Consejos Prácticos
- Siempre incluye
pathyparameters.pathal crear casos de prueba con parámetros de ruta. - Para operaciones de actualización, prefiere las herramientas de estilo fusión de este servidor sobre cargas útiles de reemplazo completo.
- Usa post-procesadores
customScriptpara aserciones y evitar problemas del ejecutor con aserciones declarativas. - Consulta
docs/PRACTICAL-USAGE.mdpara ejemplos completos.
Estructura del Proyecto
src/
index.ts Entry point, registers tools and starts MCP server
client.ts ApidogClient HTTP wrapper with auth headers
types.ts Shared TypeScript interfaces and MCP result helpers
errors.ts Custom error classes (ApidogApiError, ApidogConfigError)
schemas.ts Shared Zod schemas for request parameters
tools/
read.ts Read-only tools (environments, endpoints, categories, etc.)
test-cases.ts Test case CRUD tools
test-scenarios.ts Test scenario CRUD tools
test-suites.ts Test suite CRUD tools
test-data.ts Test data CRUD tools
folders.ts Folder management tools