Skip to main content
Glama

Filesystem MCP Server for WSL

⚠️ WICHTIGE INFORMATIONEN:
Der ursprüngliche Filesystem-MCP-Server kann bereits auf WSL-Dateien zugreifen, indem er einfach den Netzwerkpfad \\wsl.localhost\DistributionName als Parameter in der Konfiguration verwendet.
Beispiel:

{ "mcpServers": { "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "\\\\wsl.localhost\\Debian", "C:\\path\\to\\other\\allowed\\dir" ] } } }

Dieses Projekt bietet jedoch eine alternative Implementierung, die speziell für WSL-Linux-Distributionen optimiert ist .

Während der offizielle Server mit dem rekursiven Durchlaufen von Verzeichnissen unter Verwendung fs Moduls von Node.js arbeitet, nutzt diese Implementierung native Linux-Befehle innerhalb von WSL (wie etwa find , grep usw.), wodurch Dateiauflistungs- und Inhaltssuchvorgänge erheblich schneller werden .

Dies kann insbesondere dann nützlich sein, wenn Sie mit großen Verzeichnisbäumen arbeiten oder wenn die Suchleistung von entscheidender Bedeutung ist.

Auch wenn der native Netzwerkpfad für viele Anwendungsfälle einfacher sein mag, bleibt dieses Projekt eine wertvolle Lösung für WSL-Benutzer, die nach besserer Leistung oder mehr individueller Kontrolle über die Indizierungs- und Suchlogik suchen.


Dateisystem-MCP-Server für WSL

Node.js-Server, der das Model Context Protocol (MCP) implementiert, speziell entwickelt für Dateisystemoperationen im Windows Subsystem for Linux (WSL).
Dieses Projekt ist ein Fork des ursprünglichen Filesystem MCP Server, wurde jedoch für WSL-Umgebungen vollständig neu konzipiert.
Im Gegensatz zum ursprünglichen Projekt, das allgemeine Dateivorgänge behandelt, konzentriert sich diese Version ausschließlich auf die nahtlose Interaktion zwischen Windows- und Linux-Distributionen unter WSL.
Beide Projekte sind kompatibel und können parallel auf demselben System ausgeführt werden.

Merkmale

  • Greifen Sie von Windows aus auf jede WSL-Distribution zu
  • Lesen/Schreiben von Dateien in WSL vom Windows-Host
  • Verzeichnisse in WSL erstellen/auflisten/löschen
  • Verschieben Sie Dateien/Verzeichnisse über das WSL-Dateisystem
  • Suchen Sie in WSL nach Dateien
  • Abrufen von Dateimetadaten aus dem WSL-Dateisystem
  • Unterstützung für mehrere WSL-Distributionen

Hinweis : Der Server erlaubt nur Vorgänge innerhalb von Verzeichnissen, die über args angegeben werden.


API

Ressourcen

  • wsl -d <distrib> : Befehl für Operationen an WSL-Distributionen

Werkzeuge

  • Datei lesen
    • Lesen Sie den vollständigen Inhalt einer Datei aus WSL
    • Eingabe: path (Zeichenfolge)
    • Liest Inhalte als UTF-8-Text
  • mehrere Dateien lesen
    • Lesen Sie mehrere Dateien gleichzeitig aus WSL
    • Eingabe: paths (string[])
    • Fehlgeschlagene Lesevorgänge stoppen nicht den gesamten Vorgang
  • Datei schreiben
    • Erstellen oder Überschreiben einer Datei in WSL (mit Vorsicht verwenden)
    • Eingänge:
      • path (Zeichenfolge)
      • content (Zeichenfolge)
  • Datei bearbeiten
    • Selektive Bearbeitungen mit erweitertem Mustervergleich und Formatierung
    • Eingänge:
      • path (Zeichenfolge)
      • edits (Array aus { oldText, newText } )
      • dryRun (boolesch, optional)
    • Merkmale:
      • Mehrzeiliger Abgleich
      • Einrückungserhaltung
      • Diff-Vorschau im Git-Stil
      • Zerstörungsfreier Probelaufmodus
  • Verzeichnis erstellen
    • Erstellen oder Sicherstellen der Existenz eines Verzeichnisses in WSL
    • Eingabe: path (Zeichenfolge)
  • Verzeichnisliste
    • Verzeichnisinhalte mit den Präfixen [FILE] oder [DIR] auflisten
    • Eingabe: path (Zeichenfolge)
  • Verzeichnisbaum
    • Rekursive JSON-Baumansicht des Inhalts
    • Eingabe: path (Zeichenfolge)
  • Datei verschieben
    • Dateien/Verzeichnisse verschieben oder umbenennen
    • Eingänge:
      • source (Zeichenfolge)
      • destination (Zeichenfolge)
  • Suchdateien
    • Rekursive Suche nach Namen
    • Eingänge:
      • path (Zeichenfolge)
      • pattern (Zeichenfolge)
      • excludePatterns (Zeichenfolge[], optional)
  • Dateiinformationen abrufen
    • Detaillierte Metadaten
    • Eingabe: path (Zeichenfolge)
    • Gibt zurück: Größe, Zeitstempel, Typ, Berechtigungen
  • Liste zulässiger Verzeichnisse
    • Listet alle Verzeichnisse auf, auf die der Server zugreifen kann
  • list_wsl_distributionen
    • Listet verfügbare Distributionen auf und zeigt die aktive an

Anforderungen

Für Claude Desktop-Benutzer:
Keine zusätzliche Installation erforderlich – konfigurieren Sie einfach Ihre claude_desktop_config.json .

Für die Entwicklung:

  • Node.js (v14.0.0 oder höher)
  • TypeScript (als Entwicklungsabhängigkeit enthalten)

Installieren von Node.js unter Windows

  1. Laden Sie das Installationsprogramm von nodejs.org herunter
  2. Führen Sie es aus und folgen Sie den Anweisungen
  3. Versionen prüfen:
node --version npm --version

Verwendung

Bevor Sie den Server ausführen, müssen Sie das TypeScript-Projekt erstellen:

npm install npm run build

Führen Sie den Server aus, indem Sie angeben, welche WSL-Verteilung verwendet werden soll (optional) und welche Verzeichnisse verfügbar gemacht werden sollen:

node dist/index.js [--distro=distribution_name] <allowed_directory> [additional_directories...]

Wenn keine Verteilung angegeben ist, wird die Standard-WSL-Verteilung verwendet.

Beispiele

Greifen Sie auf die Ubuntu-20.04-Distribution zu:

node dist/index.js --distro=Ubuntu-20.04 /home/user/documents

Standardverteilung verwenden:

node dist/index.js /home/user/documents

Verwendung mit Claude Desktop

Fügen Sie dies zu Ihrer claude_desktop_config.json hinzu:

Option 1: Verwenden einer bestimmten WSL-Distribution

{ "mcpServers": { "wsl-filesystem": { "command": "npx", "args": [ "-y", "mcp-server-wsl-filesystem", "--distro=Ubuntu-20.04", "/home/user/documents" ] } } }

Option 2: Verwenden der Standard-WSL-Verteilung

{ "mcpServers": { "wsl-filesystem": { "command": "npx", "args": [ "-y", "mcp-server-wsl-filesystem", "/home/user/documents" ] } } }

Im zweiten Beispiel verwendet das System Ihre Standard-WSL-Verteilung, ohne dass Sie diese angeben müssen.

Unterschiede zum ursprünglichen Projekt

Dieser Fork passt den ursprünglichen Filesystem-MCP-Server für die Arbeit mit WSL an, indem er:

  1. Ersetzen direkter Node.js-Dateisystemaufrufe durch WSL-Befehlsausführungen
  2. Hinzufügen von Unterstützung für die Auswahl bestimmter WSL-Distributionen
  3. Implementieren der Pfadübersetzung zwischen Windows- und Linux-Formaten
  4. Verbesserte Handhabung von Dateiinhalten für plattformübergreifende Kompatibilität
  5. Hinzufügen spezialisierter Tools für die WSL-Verwaltung

Lizenz

Dieses Projekt ist ein Fork des ursprünglichen Filesystem MCP Server, der vom Model Context Protocol-Team erstellt wurde.

Dieser MCP-Server für WSL ist gemäß der ursprünglichen Projektlizenz unter der MIT-Lizenz lizenziert. Das bedeutet, dass Sie die Software gemäß den Bedingungen der MIT-Lizenz frei verwenden, ändern und verbreiten können. Weitere Informationen finden Sie in der Lizenzdatei im ursprünglichen Projekt-Repository.

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Node.js-Server, der das Model Context Protocol implementiert, das eine nahtlose Interaktion zwischen Windows- und Linux-Distributionen unter WSL ermöglicht und Dateivorgänge wie Lesen, Schreiben, Suchen und Verwalten von Dateien im gesamten WSL-Dateisystem von Windows aus zulässt.

  1. Merkmale
    1. API
      1. Ressourcen
      2. Werkzeuge
    2. Anforderungen
      1. Installieren von Node.js unter Windows
    3. Verwendung
      1. Beispiele
    4. Verwendung mit Claude Desktop
      1. Option 1: Verwenden einer bestimmten WSL-Distribution
      2. Option 2: Verwenden der Standard-WSL-Verteilung
    5. Unterschiede zum ursprünglichen Projekt
      1. Lizenz

        Related MCP Servers

        • -
          security
          A
          license
          -
          quality
          Node.js server implementing Model Context Protocol (MCP) for filesystem operations.
          Last updated -
          40,888
          53,680
          Python
          MIT License
          • Linux
          • Apple
        • -
          security
          F
          license
          -
          quality
          Node.js server implementing Model Context Protocol for filesystem operations, allowing Claude to read, write, and manipulate files and directories in specified locations.
          Last updated -
          40,888
          JavaScript
        • -
          security
          A
          license
          -
          quality
          Node.js server implementing Model Context Protocol for secure read-only filesystem operations, allowing Claude to read files, list directories, search files, and get file metadata within specified directories.
          Last updated -
          91
          JavaScript
          MIT License
        • A
          security
          F
          license
          A
          quality
          Node.js server implementing Model Context Protocol (MCP) for filesystem operations with comprehensive permission controls, allowing secure file and directory manipulation with granular access restrictions.
          Last updated -
          21
          40,888
          3
          TypeScript
          • Linux
          • Apple

        View all related MCP servers

        MCP directory API

        We provide all the information about MCP servers via our MCP API.

        curl -X GET 'https://glama.ai/api/mcp/v1/servers/webconsulting/mcp-server-wsl-filesystem'

        If you have feedback or need assistance with the MCP directory API, please join our Discord server