Servidor MCP (NestJS)
Una aplicación robusta, escalable y extensible del lado del servidor, desarrollada con NestJS . Este proyecto proporciona una implementación de servidor del Protocolo de Contexto de Modelo (MCP), gestión de archivos, autenticación y API REST modulares para publicaciones y usuarios.
Tabla de contenido
Related MCP server: File Operations MCP Server
Características
Servidor MCP : implementa el protocolo de contexto de modelo para operaciones de archivos y más.
Gestión de archivos : cargue, descargue, enumere y elimine archivos a través de puntos finales REST.
Autenticación : autenticación basada en JWT con estrategia local.
Módulos de usuario y publicación : Estructura modular para usuarios y publicaciones con DTO y entidades.
Integración con Swagger : documentación API lista para usar.
Extensible : agregue fácilmente nuevos módulos y funciones.
Arquitectura
NestJS : marco progresivo Node.js para crear aplicaciones del lado del servidor eficientes, confiables y escalables.
Integración MCP : utiliza un FileBrowserMCP personalizado para operaciones de archivos.
Diseño modular : cada característica está encapsulada en su propio módulo.
Empezando
Prerrequisitos
Instalación
Variables de entorno
Cree un archivo .env en el directorio raíz para cualquier secreto o anulación de configuración (opcional).
Desarrollo
Ejecución del servidor
Comandos útiles
Pruebas
Ejecutar pruebas unitarias
Ejecutar pruebas de extremo a extremo (e2e)
Cobertura de la prueba
Despliegue
Construir el proyecto:
$ npm run buildIniciar el servidor:
$ npm run start:prodPara una implementación avanzada (Docker, nube, etc.), consulte la Documentación de implementación de NestJS .
Referencia de API
Swagger UI está disponible (si está habilitada) en
/apicuando el servidor se está ejecutando.Puntos finales principales:
POST /auth/login— Autenticar y recibir JWTPOST /files/upload— Subir un archivoGET /files/:idDescargar un archivoDELETE /files/:id— Eliminar un archivoGET /files— Lista de archivosPOST /users— Crear un usuarioPOST /posts— Crear una publicación
Consulte los archivos del controlador en src/ para obtener más detalles.
Estructura del proyecto
Contribuyendo
Bifurcar el repositorio
Crea tu rama de funciones (
git checkout -b feature/YourFeature)Confirme sus cambios (
git commit -am 'Add some feature')Empujar a la rama (
git push origin feature/YourFeature)Abrir una solicitud de extracción
Estándares de codificación
Siga el estilo de código existente (ver configuración de ESLint)
Escribir pruebas unitarias y de extremo a extremo para nuevas funciones
Documente su código y actualice el archivo README según sea necesario
Configuración de Git
Este proyecto utiliza Git para el control de versiones. El origen remoto está configurado como:
Licencia
Nest tiene licencia MIT .
Recursos y apoyo
Si tiene alguna pregunta, problema o solicitud de funciones, abra un problema o comuníquese con el mantenedor.