Dateisystem-MCP-Server (@sylphlab/filesystem-mcp)
Ermöglichen Sie Ihren KI-Agenten (wie Cline/Claude) sicheren, effizienten und tokensparenden Zugriff auf Ihre Projektdateien. Dieser Node.js-Server implementiert das Model Context Protocol (MCP) und bietet so robuste Dateisystem-Tools, die sicher in einem definierten Projektstammverzeichnis arbeiten.
Installation
Es gibt mehrere Möglichkeiten, den Filesystem-MCP-Server zu verwenden:
1. Empfohlen:
Der einfachste Weg ist über npx
oder bunx
, die direkt in Ihrer MCP-Hostumgebung konfiguriert werden (z. B. Roo/Clines mcp_settings.json
). Dadurch wird sichergestellt, dass Sie immer die neueste Version von npm verwenden, ohne dass eine lokale Installation oder Docker erforderlich ist.
Beispiel (
Beispiel (
Wichtig: Der Server verwendet sein eigenes aktuelles Arbeitsverzeichnis ( cwd
) als Projektstammverzeichnis. Stellen Sie sicher, dass Ihr MCP-Host (z. B. Cline/VSCode) so konfiguriert ist, dass der Befehl mit dem cwd
Verzeichnis im Stammverzeichnis Ihres aktiven Projekts gestartet wird.
2. Docker
Verwenden Sie das offizielle Docker-Image für containerisierte Umgebungen.
Beispiel für eine MCP-Hostkonfiguration:
Denken Sie daran,
3. Lokaler Build (für die Entwicklung)
Klonen:
git clone https://github.com/sylphlab/filesystem-mcp.git
Installieren:
cd filesystem-mcp && pnpm install
(Verwende jetzt pnpm)Erstellen:
pnpm run build
MCP-Host konfigurieren:
{ "mcpServers": { "filesystem-mcp": { "command": "node", "args": ["/path/to/cloned/repo/filesystem-mcp/dist/index.js"], // Updated build dir "name": "Filesystem (Local Build)" } } }Hinweis: Starten Sie den
node
aus dem Verzeichnis, das Sie als Stammverzeichnis des Projekts verwenden möchten.
Schnellstart
Sobald der Server in Ihrem MCP-Host konfiguriert ist (siehe Installation), kann Ihr KI-Agent sofort mit der Verwendung der Dateisystemtools beginnen.
Beispiel einer Agenteninteraktion (konzeptionell):
Warum dieses Projekt wählen?
🛡️ Sicherer und praktischer Fokus auf das Projektstammverzeichnis: Vorgänge sind auf das Projektstammverzeichnis beschränkt (
cwd
beim Start).⚡ Optimierte und konsolidierte Tools: Batch-Operationen reduzieren den Aufwand für den KI-Server und sparen Token und Latenz. Zuverlässige Ergebnisse für jedes Element in einem Batch.
🚀 Einfache Integration: Schnelle Einrichtung über
npx
/bunx
.🐳 Containerisierte Option: Verfügbar als Docker-Image.
🔧 Umfassende Funktionalität: Deckt eine breite Palette von Dateisystemaufgaben ab.
✅ Robuste Validierung: Verwendet Zod-Schemata zur Argumentvalidierung.
Leistungsvorteile
(Platzhalter: Fügen Sie hier Benchmark-Ergebnisse und Vergleiche ein, die Vorteile gegenüber alternativen Methoden wie einzelnen Shell-Befehlen aufzeigen.)
Stapelverarbeitung: Reduziert den Aufwand im Vergleich zu Einzelvorgängen erheblich.
Direkte API-Nutzung: Effizienter als das Erstellen von Shell-Prozessen für jeden Befehl.
(Fügen Sie spezifische Benchmarkdaten hinzu, sofern verfügbar)
Merkmale
Dieser Server stattet Ihren KI-Agenten mit einem leistungsstarken und effizienten Dateisystem-Toolkit aus:
📁 Erkunden und prüfen ( Dateien/Verzeichnisse auflisten (rekursiv, Statistiken), detaillierten Status für mehrere Elemente abrufen.
📄 Inhalt lesen und schreiben ( Lesen/Schreiben/Anhängen mehrerer Dateien, Erstellen übergeordneter Verzeichnisse.
✏️ Präzises Bearbeiten und Suchen ( Chirurgische Bearbeitungen (Einfügen, Ersetzen, Löschen) über mehrere Dateien hinweg unter Beibehaltung der Einrückung und Diff-Ausgabe; Regex-Suche mit Kontext; Suchen/Ersetzen in mehreren Dateien.
🏗️ Verzeichnisse verwalten ( Erstellen Sie mehrere Verzeichnisse, einschließlich übergeordneter Zwischenverzeichnisse.
🗑️ Sicher löschen ( Entfernen Sie mehrere Dateien/Verzeichnisse rekursiv.
↔️ Verschieben und Kopieren ( Mehrere Dateien/Verzeichnisse verschieben/umbenennen/kopieren.
🔒 Berechtigungen steuern ( POSIX-Berechtigungen und -Eigentümerschaft für mehrere Elemente ändern.
Hauptvorteil: Alle Tools, die mehrere Pfade/Operationen akzeptieren, verarbeiten jedes Element einzeln und geben einen detaillierten Statusbericht zurück.
Design-Philosophie
(Platzhalter: Erläutern Sie die wichtigsten Designprinzipien.)
Sicherheit geht vor: Verhindern Sie vorrangig den Zugriff außerhalb des Projektstamms.
Effizienz: Minimieren Sie den Kommunikationsaufwand und die Token-Nutzung für KI-Interaktionen.
Robustheit: Bereitstellung detaillierter Ergebnisse und Fehlerberichte für Stapelverarbeitungen.
Einfachheit: Bieten Sie eine klare und konsistente API über MCP.
Standardkonformität: Halten Sie sich strikt an das Model Context Protocol.
Vergleich mit anderen Lösungen
(Platzhalter: Objektiv mit Alternativen vergleichen.)
Funktion/Aspekt | Dateisystem-MCP-Server | Einzelne Shell-Befehle (über Agent) | Andere benutzerdefinierte Skripte |
Sicherheit | Hoch (Wurzelbegrenzt) | Niedrig (Agent benötigt Shell-Zugriff) | Variable |
Effizienz (Token) | Hoch (Batching) | Niedrig (Ein Befehl pro Operation) | Variable |
Latenz | Niedrig (Direkte API) | Hoch (Shell-Spawn über Kopf) | Variable |
Batch-Operationen | Ja (die meisten Werkzeuge) | NEIN | Vielleicht |
Fehlerberichterstattung | Detailliert (pro Artikel) | Grundlegend (stdout/stderr-Analyse) | Variable |
Aufstellen | Einfach (npx/Docker) | Erfordert die Einrichtung einer sicheren Shell | Brauch |
Zukunftspläne
(Platzhalter: Liste kommender Funktionen oder Verbesserungen.)
Entdecken Sie die Möglichkeiten zur Dateiüberwachung.
Informieren Sie sich über die Streaming-Unterstützung für sehr große Dateien.
Verbessern Sie die Leistung für bestimmte Vorgänge.
Fügen Sie erweiterte Filteroptionen für
list_files
hinzu.
Dokumentation
(Platzhalter: Link zur Website mit der vollständigen Dokumentation hinzufügen, sobald verfügbar.)
Die vollständige Dokumentation, einschließlich detaillierter API-Referenzen und Beispiele, finden Sie unter: [Link zur Docs-Site]
Beitragen
Beiträge sind willkommen! Bitte melden Sie ein Problem oder senden Sie eine Pull-Anfrage im GitHub-Repository .
Lizenz
Dieses Projekt wird unter der MIT-Lizenz veröffentlicht.
Entwicklung
Klonen:
git clone https://github.com/sylphlab/filesystem-mcp.git
Installieren:
cd filesystem-mcp && pnpm install
Build:
pnpm run build
(kompiliert TypeScript nachdist/
)Beobachten:
pnpm run dev
(optional, wird beim Speichern neu kompiliert)
Veröffentlichen (über GitHub Actions)
Dieses Repository verwendet GitHub Actions ( .github/workflows/publish.yml
), um das Paket automatisch in npm zu veröffentlichen und beim Pushen von Versions-Tags ( v*.*.*
) in den main
ein Docker-Image in Docker Hub zu erstellen/zu pushen. Erfordert die in den GitHub-Repository-Einstellungen konfigurierten Geheimnisse NPM_TOKEN
, DOCKERHUB_USERNAME
und DOCKERHUB_TOKEN
.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Ein TypeScript-basierter MCP-Server, der ein einfaches Notizensystem implementiert, das es Benutzern ermöglicht, über URIs und Tools Zusammenfassungen von Textnotizen zu erstellen, darauf zuzugreifen und zu generieren.
Related MCP Servers
- AsecurityFlicenseAqualityA TypeScript-based MCP server that implements a simple notes system, enabling users to manage text notes with creation and summarization functionalities through structured prompts.Last updated -289
- AsecurityFlicenseAqualityThis TypeScript-based MCP server implements a simple notes system, allowing the creation, listing, and summarization of text notes using MCP concepts with note:// URIs and metadata.Last updated -1
- AsecurityFlicenseAqualityA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes.Last updated -123
- AsecurityFlicenseAqualityA TypeScript-based MCP server that implements a simple notes system, allowing creation and management of text notes with URIs and metadata.Last updated -46