MCP-сервер (NestJS)
Надежное, масштабируемое и расширяемое серверное приложение, созданное с помощью NestJS . Этот проект обеспечивает реализацию сервера Model Context Protocol (MCP), управление файлами, аутентификацию и модульные REST API для постов и пользователей.
Оглавление
Related MCP server: File Operations MCP Server
Функции
Сервер MCP : реализует протокол контекста модели для файловых операций и многого другого.
Управление файлами : загрузка, скачивание, составление списков и удаление файлов через конечные точки REST.
Аутентификация : аутентификация на основе JWT с локальной стратегией.
Модули пользователей и сообщений : модульная структура для пользователей и сообщений с DTO и сущностями.
Интеграция Swagger : готовая документация API.
Расширяемость : легко добавляйте новые модули и функции.
Архитектура
NestJS : прогрессивная платформа Node.js для создания эффективных, надежных и масштабируемых серверных приложений.
Интеграция MCP : использует пользовательский FileBrowserMCP для файловых операций.
Модульная конструкция : каждая функция заключена в отдельный модуль.
Начиная
Предпосылки
Установка
# Clone the repository
$ git clone https://github.com/Cstannahill/mcp-server-nestjs.git
$ cd nestjs-mcp-server
# Install dependencies
$ npm installПеременные среды
Создайте файл .env в корневом каталоге для любых секретов или переопределений конфигурации (необязательно).
Разработка
Запуск сервера
# Start in development mode (with hot reload)
$ npm run start:dev
# Start in production mode
$ npm run start:prodПолезные команды
# Compile TypeScript
$ npm run build
# Lint code
$ npm run lintТестирование
Запуск модульных тестов
$ npm run testПроведение сквозных (e2e) тестов
$ npm run test:e2eТестовое покрытие
$ npm run test:covРазвертывание
Создайте проект:
$ npm run buildЗапустите сервер:
$ npm run start:prodДля расширенного развертывания (Docker, облако и т. д.) см. документацию по развертыванию NestJS .
Ссылка на API
Пользовательский интерфейс Swagger доступен (если включен) в
/api, когда сервер запущен.Основные конечные точки:
POST /auth/login— Аутентификация и получение JWTPOST /files/upload— Загрузить файлGET /files/:id— Загрузить файлDELETE /files/:idУдалить файлGET /files— Список файловPOST /users— Создать пользователяPOST /posts— Создать пост
Более подробную информацию смотрите в файлах контроллера в src/ .
Структура проекта
src/
app.module.ts # Root module
main.ts # Entry point
auth/ # Authentication (JWT, guards, strategies)
file/ # File management (upload, download, delete)
mcps/ # Model Context Protocol integration
posts/ # Posts module
users/ # Users module
database/ # Database connection (if used)
uploads/ # Uploaded files (local dev)Внося вклад
Форк репозитория
Создайте ветку функций (
git checkout -b feature/YourFeature)Зафиксируйте свои изменения (
git commit -am 'Add some feature')Отправка в ветку (
git push origin feature/YourFeature)Откройте запрос на извлечение
Стандарты кодирования
Следуйте существующему стилю кода (см. конфигурацию ESLint)
Написание модульных и e2e-тестов для новых функций
Документируйте свой код и при необходимости обновляйте README.
Настройка Git
Этот проект использует Git для контроля версий. Удаленный источник установлен на:
https://github.com/Cstannahill/mcp-server-nestjs.gitЛицензия
Nest имеет лицензию MIT .
Ресурсы и поддержка
Если у вас есть вопросы, проблемы или пожелания по функциям, пожалуйста, создайте сообщение об ошибке или свяжитесь с сопровождающим.