Skip to main content
Glama

MCP-QA: Analizador de Contratos Swagger/OpenAPI

MCP Server para análisis completo de contratos Swagger/OpenAPI.

🎯 Características

  • ✅ Soporta Swagger 2.0 y OpenAPI 3.x

  • ✅ Análisis completo de endpoints (paths, métodos HTTP)

  • ✅ Extracción de parámetros (path, query, header, cookie)

  • ✅ Análisis de request bodies con schemas

  • ✅ Análisis de responses (códigos HTTP, schemas, headers)

  • ✅ Extracción de schemas con propiedades, tipos y formatos

  • ✅ Validaciones (obligatoriedad, tipos, formatos UUID/fecha/etc)

  • ✅ Información de servidores y seguridad

  • ✅ Tags y documentación

🏗️ Arquitectura

El proyecto sigue arquitectura limpia y principios SOLID:

mcp-qa/ ├── src/ │ ├── domain/ # Capa de dominio (entidades e interfaces) │ │ ├── models.py # Modelos de dominio │ │ └── interfaces.py # Abstracciones (IContractFetcher, IContractParser, IContractAnalyzer) │ ├── application/ # Capa de aplicación (casos de uso) │ │ ├── swagger_analyzer.py # Analizador de contratos │ │ └── use_cases.py # Orquestación del flujo │ └── infrastructure/ # Capa de infraestructura (implementaciones) │ ├── http_fetcher.py # Obtención de contratos HTTP │ └── contract_parser.py # Parser YAML/JSON └── main.py # Punto de entrada MCP

Principios SOLID aplicados:

  • S (Single Responsibility): Cada clase tiene una única responsabilidad

  • O (Open/Closed): Extensible sin modificar código existente

  • L (Liskov Substitution): Las implementaciones son intercambiables

  • I (Interface Segregation): Interfaces específicas y focalizadas

  • D (Dependency Inversion): Dependencias de abstracciones, no de concreciones

📦 Instalación

# Instalar dependencias pip install -e .

🚀 Uso

# Ejecutar el servidor MCP python main.py

Ejemplo de análisis:

# Analizar el contrato de Petstore analizar_contrato_swagger("https://petstore.swagger.io/v2/swagger.json")

🔍 Información extraída

El analizador extrae:

  • Información general: título, versión, descripción

  • Servidores: URLs y configuraciones

  • Endpoints:

    • Path y método HTTP

    • Parámetros (ubicación, tipo, obligatoriedad)

    • Request body (content types, schemas)

    • Responses (códigos, schemas, headers)

  • Schemas:

    • Propiedades con tipos y formatos

    • Validaciones (min/max length, pattern, enum)

    • Obligatoriedad de campos

    • Formatos especiales (UUID, date, email, etc)

  • Seguridad: esquemas de autenticación

  • Estadísticas: resumen de métodos, códigos HTTP, content types

📄 Licencia

MIT

-
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/qa-reysser/mcp-qa'

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