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: npx
(oder bunx
) über MCP Host Configuration
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 ( npx
):
Beispiel ( bunx
):
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, /path/to/your/project
durch den richtigen absoluten Pfad zu ersetzen.
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: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 (
list_files
,stat_items
): Dateien/Verzeichnisse auflisten (rekursiv, Statistiken), detaillierten Status für mehrere Elemente abrufen. - 📄 Inhalt lesen und schreiben (
read_content
,write_content
): Lesen/Schreiben/Anhängen mehrerer Dateien, Erstellen übergeordneter Verzeichnisse. - ✏️ Präzises Bearbeiten und Suchen (
edit_file
,search_files
,replace_content
): 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 (
create_directories
): Erstellen Sie mehrere Verzeichnisse, einschließlich übergeordneter Zwischenverzeichnisse. - 🗑️ Sicher löschen (
delete_items
): Entfernen Sie mehrere Dateien/Verzeichnisse rekursiv. - ↔️ Verschieben und Kopieren (
move_items
,copy_items
): Mehrere Dateien/Verzeichnisse verschieben/umbenennen/kopieren. - 🔒 Berechtigungen steuern (
chmod_items
,chown_items
): 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
.
You must be authenticated.
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 simple TypeScript-based MCP server that implements a notes system, allowing users to create, list, and generate summaries of text notes via Claude.Last updated -1JavaScript
- AsecurityFlicenseAqualityA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes.Last updated -121TypeScript
- -securityFlicense-qualityA TypeScript-based MCP server that implements a simple notes system, allowing users to create, access, and generate summaries of text notes through Claude Desktop.Last updated -JavaScript
- -securityFlicense-qualityA TypeScript-based MCP server that implements a simple notes system, allowing creation and management of text notes with URIs and metadata.Last updated -9JavaScript