remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Provides a module for NestJS to create an MCP (Model Context Protocol) server with Server-Sent Events (SSE) transport, allowing services to be exposed as tools that clients can discover and execute.
Enables sending continuous progress updates from tools to clients, allowing for tracking of long-running operations with percentage completion indicators.
Integrates Zod schema validation for tool requests, enabling type-safe parameter validation for tools exposed through the MCP server.
Módulo de servidor MCP de NestJS
Un módulo NestJS para exponer sin esfuerzo herramientas, recursos y avisos para IA, desde sus aplicaciones NestJS utilizando el Protocolo de contexto de modelo (MCP) .
@rekog/mcp-nest
gestiona la complejidad de configurar servidores MCP. Define herramientas, recursos y solicitudes de la forma habitual en NestJS y aprovecha al máximo la inyección de dependencias para utilizar tus servicios existentes.
Características
- 🚀 HTTP+SSE y transporte HTTP transmisible
- 🔍
tool
automática,resource
y descubrimiento y registroprompt
- 💯 Validación de solicitudes basada en Zod
- 📊 Notificaciones de progreso
- Autenticación basada en guardia
- ⏱️ Ping SSE automático para mantener conexiones largas
Instalación
Inicio rápido
1. Módulo de importación
2. Definir herramientas y recursos
¡Ya estás listo!
Puntos finales de API
GET /sse
: punto final de conexión SSE (protegido por protectores si está configurado)POST /messages
: Punto final de ejecución de la herramienta (protegido por guardias si está configurado)
Consejos
Es posible utilizar el módulo con prefijo global, pero la forma recomendada es excluir esos puntos finales con:
Autenticación
Puede proteger sus puntos finales de MCP utilizando NestJS Guards estándar.
1. Crea un guardia
Implementar la interfaz CanActivate
. El guardián debe gestionar la validación de solicitudes (p. ej., comprobar JWT y claves API) y, opcionalmente, adjuntar información del usuario al objeto de solicitud.
Nada especial, consulte la documentación de NestJS para obtener más detalles.
2. Aplicar la protección
Transfiera sus protecciones a la configuración de McpModule.forRoot
. Estas se aplicarán a los puntos finales /sse
y /messages
.
¡Listo! El resto es igual que con NestJS Guards.
Servicio de ping SSE
El módulo incluye un servicio de ping SSE que ayuda a mantener conexiones SSE de larga duración al evitar tiempos de espera del navegador/cliente. Esto es especialmente útil para clientes como IDE que utilizan el servidor MCP de forma remota.
Configuración
Puede configurar el comportamiento del ping SSE al importar el módulo:
This server cannot be installed
Un módulo NestJS que permite exponer los servicios como un servidor MCP con transporte de eventos enviados por el servidor, lo que facilita el descubrimiento y la ejecución de herramientas por parte de los clientes.