MCP-Server (NestJS)
Eine robuste, skalierbare und erweiterbare serverseitige Anwendung, die mit NestJS erstellt wurde. Dieses Projekt bietet eine MCP-Serverimplementierung (Model Context Protocol), Dateiverwaltung, Authentifizierung und modulare REST-APIs für Beiträge und Benutzer.
Inhaltsverzeichnis
Related MCP server: File Operations MCP Server
Merkmale
MCP-Server : Implementiert Model Context Protocol für Dateioperationen und mehr.
Dateiverwaltung : Hochladen, Herunterladen, Auflisten und Löschen von Dateien über REST-Endpunkte.
Authentifizierung : JWT-basierte Authentifizierung mit lokaler Strategie.
Benutzer- und Postmodule : Modulare Struktur für Benutzer und Posts mit DTOs und Entitäten.
Swagger-Integration : sofort einsatzbereite API-Dokumentation.
Erweiterbar : Fügen Sie einfach neue Module und Funktionen hinzu.
Architektur
NestJS : Progressives Node.js-Framework zum Erstellen effizienter, zuverlässiger und skalierbarer serverseitiger Anwendungen.
MCP-Integration : Verwendet einen benutzerdefinierten FileBrowserMCP für Dateivorgänge.
Modulares Design : Jede Funktion ist in einem eigenen Modul gekapselt.
Erste Schritte
Voraussetzungen
Installation
# Clone the repository
$ git clone https://github.com/Cstannahill/mcp-server-nestjs.git
$ cd nestjs-mcp-server
# Install dependencies
$ npm installUmgebungsvariablen
Erstellen Sie im Stammverzeichnis eine .env Datei für alle Geheimnisse oder Konfigurationsüberschreibungen (optional).
Entwicklung
Ausführen des Servers
# Start in development mode (with hot reload)
$ npm run start:dev
# Start in production mode
$ npm run start:prodNützliche Befehle
# Compile TypeScript
$ npm run build
# Lint code
$ npm run lintTesten
Führen Sie Unit-Tests durch
$ npm run testFühren Sie End-to-End-Tests (e2e) durch
$ npm run test:e2eTestabdeckung
$ npm run test:covEinsatz
Erstellen Sie das Projekt:
$ npm run buildStarten Sie den Server:
$ npm run start:prodInformationen zur erweiterten Bereitstellung (Docker, Cloud usw.) finden Sie in den NestJS-Bereitstellungsdokumenten .
API-Referenz
Die Swagger-Benutzeroberfläche ist (sofern aktiviert) unter
/apiverfügbar, wenn der Server läuft.Hauptendpunkte:
POST /auth/login– Authentifizieren und JWT empfangenPOST /files/upload– Eine Datei hochladenGET /files/:idEine Datei herunterladenDELETE /files/:id— Eine Datei löschenGET /files– Dateien auflistenPOST /users— Einen Benutzer erstellenPOST /posts– Einen Beitrag erstellen
Weitere Einzelheiten finden Sie in den Controllerdateien in src/ .
Projektstruktur
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)Beitragen
Forken Sie das Repository
Erstellen Sie Ihren Feature-Zweig (
git checkout -b feature/YourFeature)Übernehmen Sie Ihre Änderungen (
git commit -am 'Add some feature')Pushen zum Zweig (
git push origin feature/YourFeature)Öffnen einer Pull-Anfrage
Kodierungsstandards
Befolgen Sie den vorhandenen Codestil (siehe ESLint-Konfiguration).
Schreiben Sie Unit- und E2E-Tests für neue Funktionen
Dokumentieren Sie Ihren Code und aktualisieren Sie die README-Datei nach Bedarf
Git-Setup
Dieses Projekt verwendet Git zur Versionskontrolle. Der Remote-Ursprung ist wie folgt eingestellt:
https://github.com/Cstannahill/mcp-server-nestjs.gitLizenz
Nest ist vom MIT lizenziert .
Ressourcen und Support
Bei Fragen, Problemen oder Funktionsanfragen öffnen Sie bitte ein Problem oder wenden Sie sich an den Betreuer.