Servidor Swagger MCP
Un servidor que ingiere y sirve especificaciones Swagger/OpenAPI a través del Protocolo de Contexto de Modelo (MCP).
Características
Carga las especificaciones Swagger/OpenAPI
Admite múltiples métodos de autenticación:
Autorización básica
Token al portador
Clave API (encabezado o consulta)
OAuth2
Genera automáticamente herramientas MCP desde puntos finales de API
Compatibilidad con eventos enviados por el servidor (SSE) para comunicación en tiempo real
Compatibilidad con TypeScript
Related MCP server: Swagger MCP Server
Seguridad
¡Este es un servidor personal! No lo exponga a internet. Si la API subyacente requiere autenticación, no debe exponer el servidor MCP a internet.
HACER
secretos: el servidor MCP debe poder usar secretos del usuario para autenticar solicitudes a la API
Conjunto completo de pruebas
Prerrequisitos
Node.js (v18 o superior)
Administrador de paquetes de hilo
Mecanografiado
Instalación
Clonar el repositorio:
Instalar dependencias:
Cree un archivo
.envbasado en el ejemplo:
Configure su especificación Swagger/OpenAPI:
Coloque su archivo Swagger en el proyecto (por ejemplo,
swagger.json)O proporcione una URL a su especificación Swagger
Actualice la configuración en
config.jsoncon la configuración de su servidor:
Nota: El servidor prioriza las configuraciones de la especificación Swagger sobre el archivo de configuración:
Si el archivo Swagger contiene una matriz
servers, la URL del primer servidor se utilizará como URL baseSi el archivo Swagger define esquemas de seguridad, se utilizarán para la autenticación.
Las configuraciones del archivo de configuración sirven como respaldo cuando no se especifican en el archivo Swagger
Uso
Inicie el servidor de desarrollo:
Construir para producción:
Inicie el servidor de producción:
Puntos finales de API
GET /health- Verificar el estado de salud del servidorGET /sse- Establecer conexión de eventos enviados por el servidorPOST /messages- Envía mensajes al servidor MCP
Pruebas
Ejecute el conjunto de pruebas:
Autenticación
El servidor admite varios métodos de autenticación. Configúrelos en el archivo config.json como respaldo si no se especifican en el archivo Swagger:
Autorización básica
Token al portador
Clave API
OAuth2
Desarrollo
Inicie el servidor de desarrollo:
Licencia
Este proyecto está licenciado bajo la licencia Apache 2.0.
Variables de entorno
PORT: Puerto del servidor (predeterminado: 3000)API_USERNAME: Nombre de usuario para la autenticación de API (respaldo)API_PASSWORD: Contraseña para la autenticación de API (alternativa)API_TOKEN: token de API para autenticación (respaldo)DEFAULT_API_BASE_URL: URL base predeterminada para los puntos finales de API (respaldo)DEFAULT_SWAGGER_URL: URL de especificación de Swagger predeterminada