Skip to main content
Glama
cwt

shutil-mcp

by cwt

shutil-mcp

Ein MCP-Server, der asynchrone Shell-Dienstprogramme mit aioshutil bereitstellt.

Dieses Projekt bietet eine Reihe von Dateisystem-Tools, die für KI-Agenten entwickelt wurden und strukturierte JSON-Ausgaben anstelle von Rohtext zurückgeben. Dies ermöglicht eine präzisere und direktere Nutzung von Dateisystemdaten durch KI-Modelle.

Funktionen

  • Asynchrone Operationen: Nutzt aioshutil und Thread-Executors für nicht blockierende Dateisystemaufgaben.

  • JSON-Ausgabe: Alle Tools geben minifiziertes JSON zurück, optimiert für KI-Agenten.

  • Jail-Unterstützung: Beschränkt den Dateisystemzugriff auf einen bestimmten Verzeichnisbaum aus Sicherheitsgründen.

  • Verifizierung & Integrität: mv und cp verifizieren die Zieldaten, bevor sie verknüpft oder finalisiert werden, und verhindern so Datenverlust bei Teilfehlern.

  • Reversible Mutationen & Undo: chmod und chown geben vorherige Modi und Besitzer zurück, um sofortiges Rückgängigmachen/Wiederholen zu ermöglichen, mit automatischem Rollback bei Fehlern.

  • Soft-Deletion & Wiederherstellung: rm unterstützt trash=True Soft-Deletion mit einem passenden restore-Tool.

  • Zip-Slip-Schutz: unpack_archive validiert alle Pfade der Archivmitglieder gegen Verzeichnis-Traversal-/Zip-Slip-Angriffe.

  • Detaillierte Metadaten: Tools wie ls und stat liefern umfassende Informationen (Größe, mtime, Modus, Besitzer usw.).

  • HTTP-Transportunterstützung: Enthält integrierte Unterstützung für SSE- und Streamable-HTTP-Transports.

Related MCP server: File Manager MCP Server

Verfügbare Tools

  • ls: Listet Verzeichnisinhalte mit detaillierten Metadaten auf.

  • cp: Kopiert Dateien oder Verzeichnisse rekursiv mit Verifizierung.

  • mv: Verschiebt/benennt Dateien oder Verzeichnisse mit sicherer Vor-Entfernungs-Verifizierung.

  • rm: Entfernt Dateien oder Verzeichnisse (unterstützt trash=True Soft-Deletion).

  • restore: Stellt Dateien oder Verzeichnisse aus dem Papierkorb wieder her.

  • chmod: Ändert Datei-/Verzeichnisberechtigungen mit Rollback und vorherigem Modus.

  • chown: Ändert den Besitzer von Dateien/Verzeichnissen mit Rollback und vorherigem Besitzer.

  • disk_usage: Ruft Statistiken zur Datenträgerauslastung für einen Pfad ab.

  • which: Findet den Pfad zu einer ausführbaren Datei.

  • cat: Liest Dateiinhalte, optional auf einen bestimmten Zeilenbereich begrenzt.

  • glob: Findet Dateien, die Glob-Mustern entsprechen.

  • grep: Durchsucht Dateiinhalte mit Regex-Mustern.

  • tree: Ruft einen rekursiven Verzeichnisbaum als verschachteltes JSON ab.

  • make_archive: Erstellt Archivdateien (zip, tar usw.) mit Überschreibschutz.

  • unpack_archive: Entpackt Archivdateien sicher mit Zip-Slip-Schutz.

  • get_archive_formats: Listet unterstützte Archivformate auf.

Installation

pip install shutil-mcp

Verwendung

Ausführen mit stdio-Transport

shutil-mcp --transport stdio

Ausführen mit Jail-Einschränkung

shutil-mcp --transport stdio --jail /path/to/projects

Als SSE-Server ausführen

shutil-mcp --transport sse --jail /path/to/projects --port 8000

Entwicklung

Siehe DEVELOPMENT.md für detaillierte Entwicklungsanweisungen.

Lizenz

MIT

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Enables secure filesystem operations with directory sandboxing and optional read-only mode. Supports file reading/writing, directory management, file searching, and text operations while restricting access to specified directories.
    12
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides secure file system operations for AI assistants including directory listing, file reading/writing, deletion, searching, and copying. Features safety controls like path validation, permission checks, and file size limits.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides safe filesystem access for AI clients with root confinement, read-only mode, and file operations like read, write, search, copy, move, delete.
    MIT