wiztree-mcp
wizTree MCP
So funktioniert es
wizTreeMCP ist ein Python-MCP-Server, der WizTree von einem LLM aus steuert. Du kannst ihn mit Claude Code, Cursor oder DeepSeek Harness verbinden und in natürlicher Sprache fragen „Was belegt auf dem Laufwerk C: den Speicher?“, „Finde alle Dateien über 1 GB in Downloads“, „Wie viel Speicherplatz belegen Videos in diesem Ordner?“, „Gibt es verwaiste Python-Abhängigkeiten, die ich bereinigen kann?“.
Ich finde das sehr nützlich für die Bereinigung nicht mehr benötigter Cache-Dateien von WSL, Python, Docker und npm. Verwende lokale Modelle für mehr Privatsphäre.
Einzeldatei: wiztree_mcp.py. Funktioniert nur unter Windows, weil
WizTree eine Windows-Anwendung ist.
WizTree hat keine API: Es gibt eine Kommandozeile, die ein CSV mit allem exportiert, was gescannt wurde. Der Server verwendet diesen Export.
LLM (MCP client) --stdio--> wiztree_mcp.py --CLI--> WizTree64.exe
| |
|<----- CSV snapshot ---
|
streaming queries on the CSVEin Scan läuft einmalig und wird als CSV-Snapshot im Cache gespeichert. Alle Folgefragen werden beantwortet, indem das CSV im Streaming-Modus gelesen wird: Es erfolgt kein erneuter Scan der Platte, das gesamte Laufwerk wird nicht in den Speicher geladen. Ein Snapshot–z. B. 500.000 Dateien–belegt etwa 50 MB und beantwortet eine Abfrage in ungefähr einer Sekunde.
Snapshots werden automatisch wiederverwendet: Wenn du die Festplatte C:\ gescannt hast und danach
etwas über C:\Users\me\Downloads fragst, verwendet der Server den vorhandenen Snapshot, anstatt die
Arbeit zu wiederholen.
Related MCP server: WizTree MCP
Installation
Erfordert Python 3.10+.
cd wiztree-mcp
python -m venv .venv
.venv\Scripts\python.exe -m pip install -r requirements.txtDie virtuelle Umgebung wurde bereits in .venv erstellt: Wenn das für dich ausreicht, bist du bereit.
Der Server findet WizTree64.exe selbst, wenn der Ordner wiztree-mcp im Ordner deinesWizTree-Portables liegt
oder wenn WizTree in Program Files installiert ist. Andernfalls zeige den Speicherort
mit der Umgebungsvariable WIZTREE_EXE an.
Verbindung mit Claude Code
Ein Befehl, kein JSON-Editorierent – das Skript übernimmt die Zusammenführung:
claude mcp add wiztree --scope user -- "C:\path\to\wiztree-mcp\.venv\Scripts\python.exe" "C:\path\to\wiztree-mcp\wiztree_mcp.py"--scope steuert, wo die Registrierung gespeichert wird:
Geltungsbereich | Wo das gilt | Wann du dassetzen solltest |
| alle Ordner | das, was du fast immer willst |
| schreibt eine | um sie mit Menschen zu teilen, die am selben Repo arbeiten |
| nur für dich, nur in diesem Ordner | schnelle Experimente |
Überprüfen:
claude mcp listDann claude beenden und neu starten: MCP-Server verbinden sich beim Start der Sitzung, nie live.
Innerhalb der Sitzung heißen die Tools z. B. mcp__wiztree__wiztree_scan, aber du musst
die Namen nicht: Frage einfach „Was ist auf D:?“.
Falls du den Projektbereich ohne CLI bevorzugst, kannst du auch eine .mcp.json manuell in dem Ordner
anlegen, aus dem du claude startest, mit der gleichen Struktur wie unten bei Cursor gezeigt.
In der ersten Sitzung fragt Claude Code dich um Genehmigung, weil du einem Projekt-
.mcp.json nicht automatisch vertraust.
Verbindung mit Cursor
{
"mcpServers": {
"wiztree": {
"command": "C:\\path\\to\\wiztree-mcp\\.venv\\Scripts\\python.exe",
"args": ["C:\\path\\to\\wiztree-mcp\\wiztree_mcp.py"],
"env": {
"WIZTREE_EXE": "C:\\path\\to\\WizTree64.exe"
}
}
}
}Verweise auf .venv\Scripts\python.exe, nicht auf das System-python: So musst du die Umgebung
nicht aktivieren, und Cursor findet die Abhängigkeiten immer.
GitDie Datei cursor-mcp.json enthält bereits den Snippet mit den korrekten
absoluten Pfaden für diese Installation: Öffne und kopiere sie.
Oder lass das Skript es machen: Es erhält andere bereits eingerichtete Server und macht ein Backup:
.venv\Scripts\python.exe install_mcp.pyStarte Cursor neu: In der MCP-Liste solltest du wiztree mit 16 Werkzeugen sehen. Der Agent-Modus
ist required; MCP-Tools werden im Ask-Modus nicht aufgerufen.
Verbindung mit DeepSeek Harness
Hier gilt das JSON der anderen beiden Clients nicht, therefore das Kopieren der Cursor-Konfiguration
und das Ändern der Pfade funktioniert nicht. DeepSeek Harness (dsh) hat keinen Schlüssel mcpServers:
Du bindest jeden MCP-Server als Plugin-Instanz von @deepseek-ai/dsh-mcp-client in eine YAML-Datei.
Ein Plugin-Instanz = ein MCP-Server.
Claude Code / Cursor | DeepSeek Harness | |
Format | JSON | YAML |
Datei |
|
|
Struktur |
| Liste von Plugins auf oberster Ebene |
ein Server | ein Objekt-Eintrag | ein Eintrag mit |
Transport | implizit | explizit |
Der in die Liste ein zu Fügen:
- id: mcp-wiztree
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: wiztree
transport: stdio
command: C:\path\to\wiztree-mcp\.venv\Scripts\python.exe
args:
- C:\path\to\wiztree-mcp\wiztree_mcp.py
env:
WIZTREE_EXE: C:\path\to\WizTree64.exe
toolCallTimeoutMs: 900000Die Datei dsh-cordis-patch.yml hat die absoluten Pfade bereits angelegt.
Wo du sie platzierst: in der cordis.patch.yml des Profils oder in der des Harness-Home
($DSH_HOME, Standard ~/.dsh). Die Ebenen stapeln sich in dieser Reihenfolge –
Profil-Bundle, cordis.patch.yml des Profils, cordis.patch.yml des Harness-Home, und
schließlich Overlays, die mit --patch übergeben. Prüfen mit fortgeschrittener
Konfiguration: dsh --dump-config.
Drei Dinge, die hier wichtig sind:
toolCallTimeoutMs: 900000. Die Voreinstellung ist 60000 ms, eine Minute. Das Scannen eines vollständigen Laufwerks ohne Administratorrechte dauert viel länger und der Aufruf würde mitten unterbrochen. Die anderen Clients haben kein so enges Limit.Windows-Pfade ohne Ausführungszeichen. In YAML interpretieren doppelte Anführungszeichen Escape-Sequenzen, deshalb scheitert
"C:\Users\..."beim Parsen an\U. Ohne Anführungszeichen oder mit einfachen Anführungszeichen bleiben Backslashes Zeichen für Zeichen erhalten.Toolnamen werden zu
mcp__wiztree__wiztree_scanusw., die gleiche Konvention wie bei Claude Code.
DeepSeek Harness ist in Developer Preview, daher kann sich das Format zwischen Releases ändern: wenn etwas nicht übereinstimmt, vergleiche mit der offiziellen MCP-Dokumentation.
Werkzeuge
Werkzeug | Zweck |
| Welche ausführbare Datei benutzt wird, Version, ob der Prozess erhöht ist, Cache-Speicherort. Anrufen, wenn etwas schiefgeht. |
| Liste der Laufwerke mit Kapazität, belegtem und freien Speicher. |
| Scanne ein Laufwerk oder einen Ordner und erstelle den Snapshot. Gibt Summen, freien Speicher des Volumen und die größten Top-Level-Einträge zurück. |
| Größte Dateien, mit Filtern nach Unterordner, Erweiterung und Mindestgröße. . |
| Größte Ordner (rekursive Größe), mit |
| Was innerhalb eines Ordners liegt, Ebene für Ebene, mit Prozentsatz des Gesamtsummen. Das Tool zum schrittweisen Heruntergehen. |
| Speicher nach Endung aggregiert. |
| Suche mit Glob ( |
| Doppelte Dateien und wiederherstellbarer Speicher. Liest nur von Datenträgern |
| Erzeugt WizTree’s PNG-Treemap. Wenn bereits ein Snapshot desselben Stamms vorhanden ist, zeichnet es ohne Disk erneut zu lesen. Mit |
| Roher CSV-Export mit allen WizTree-CLI-Optionen, egal wohin. |
| Liest den Zustand des von dir benutzen WizTree-Fensters: was geladen ist, welches Laufwerk ausgewählt ist, welcher Tab aktiv. Dient zur Antwort „dieses Laufwerk“ / „hier“. |
| Öffnet das WizTree-Fenster auf einem Pfad und kehrt sofort zurück. Um eine Beobachtung zur visuellen Prüfung zu übergeben. |
| Registriert eine CSV, die du aus der GUI exportiert hast ( |
| Zwischengespeicherte Snapshots. |
| Leert den Cache. |
Alle Abfrage-Tools akzepthalten path, refresh, max_age_minutes, admin, filter,
filter_exclude, timeout_seconds, und scannen selbstständig, wenn sie keinen gültigen Snapshot finden:
Das LLM kann also direkt zu wiztree_top_files ohne vorher wiztree_scan aufzurufen.
GUI und die AI gemeinsam nutzen
Du kannst das WizTree-Fenster offen lassen, klicken und gleichzeitig schon im Chat Uhr Stellen fragen. Das funktioniert, aber es ist wissen, wie weit es geht.
WizTree zeichnet die Dateiliste in einem TVirtualDrawTree: ein self-kontrollete Steuerelement,
bei dem Zeilen nicht als Text existieren, sondern immediately gew printed werden. Von außerhalb des Prozesses
sind sie Pixel, keine Daten. Die Arbeitsergebnisse, die du am Bildschirm siehst, wie du nicht lesbar.
Wie weit was das Fenster Doch –through normal Win32-Nachrichten: it ist which ist shows, das ist genug:
1. WizTree window (pid 58140)
Title : [C:\Users\...\wiztree mcp test] - WizTree
Loaded target : C:\Users\...\wiztree mcp test
Drive selector : <Select folder...>
Available : [C:] OS , [D:] Local Disk , <Select folder...>, ...
Tabs : File View, Tree ViewDas Fluss ist: du klick auf [D:] in der GUI → frag „Was ist hier vom Speicher?“ →
wiztree_gui_state reads, das Fenster auf zeigers D: → die anderen Tools beantworten zu D:.
Du musst keinen Pfad angeben.
Zwei Wege, um mit dem Fenster geöffnet Daten teilen:
Neuscan (zero friction). Der Server scannt direkt das Ziel, das er von der GUI ausliest. Kostet die Zeit eines Scans.
CSV-Weitergabe (sofort). In der GUI machst
File > Export, dannwiztree_import_csv. Kein ernecaninn, wenn der GUI mit Admin läuft, Begleitung der MFT. Das ist der schnellste Weg, um an einem vollständigen Laufwerk zu arbeiten.
Beide Ansätze nebeneinander: CLI-Export in habem sec ern wurde bestätigt,owen WizTree-Fenster geöffnet, ohne zu stören – der globale Mutex blockiert keine Instances.
Hinweis: WizTree64.exe path.csv lädt die CSV nur im Headless-Modus (mit /export oder
/treemapimagefile). Ohne Schalter gestartet, öffnet es nicht die GUI mit dieser CSV; es fällt
auf ein Standardlaufwerk zurück. In der GUI wird die CSV über das Laufwerks-Dropdown, Eintrag <CSV File>, geöffnet.
Schnelle Scans: admin
Auf NTFS-Volumes liest WizTree die MFT direkt, weshalb es ein volles Laufwerk in Sekunden scannt. Das Lesen der MFT erfordert jedoch Administratorrechte.
Nicht erhöhter Prozess (der Normalfall mit Cursor): WizTree fällt auf einen rekursiven Ordnerscan zurück. Auf
C:\kann das mehrere Minuten dauern; bei einem einzelnen Ordner ist es immer noch schnell (~500k Dateien in 5 Sekunden).admin: true: WizTree startet neu mit erhöhten Rechten und verwendet die MFT. Dies löst die Windows-UAC- Abfrage aus, die manuell akzeptiert werden muss.
Wenn Sie dies häufig benötigen, starten Sie Cursor als Administrator: Der Server erbt die Erhöhung und
alle Scans werden sofort ohne weitere Abfragen durchgeführt. wiztree_info zeigt Ihnen, in welcher
Situation Sie sich befinden.
Umgebungsvariablen
Variable | Standard | Beschreibung |
| automatische Erkennung | Vollständiger Pfad zu |
| — | Ordner, der die ausführbare Datei enthält, Alternative zu |
|
| Wo CSV-Snapshots und Treemaps gespeichert werden. |
|
| Wie viele Snapshots aufbewahrt werden, bevor der älteste gelöscht wird. |
Tests
.venv\Scripts\python.exe test_smoke.pyStartet den Server über stdio genau wie Cursor, erstellt einen Testbaum (mit Leerzeichen und Kommas in Namen) und übt alle 16 Tools aus: 37 Prüfungen.
Um es mit echten Daten auszuprobieren:
.venv\Scripts\python.exe test_manual.py "C:\Users\me\AppData\Local"Implementierungsdetails, die Zeit sparen können
Dinge, die bei der Arbeit mit der WizTree-4.32-CLI in der Praxis entdeckt wurden und nirgendwo dokumentiert sind:
CSV-Header sind lokalisiert. Auf Italienisch heißt die erste Spalte
Nome file, nichtFile Name. Die ersten 7 Spalten sind immer in derselben Reihenfolge, während optionale (DRIVECAPACITY,CREATEDDATE,MFTRECNO, …) einen stabilen ASCII- Namen behalten. Der Parser verlässt sich für die ersten Spalten auf die Position und für die anderen auf den Namen.Keine Anführungszeichen in Argumenten. Die Übergabe von
/export="C:\out.csv"übersubprocessführt dazu, dass WizTree ein unsichtbares modales Fehlerfenster öffnet und der Prozess für immer hängt. Werte müssen nackt übergeben werden (/export=C:\out.csv) und Python das Quoting fürCreateProcessüberlassen.Dateien ohne Erweiterung werden mit einem abschließenden Punkt exportiert:
payloadwird zupayload.. Windows erlaubt keine abschließenden Punkte in Namen, daher entfernt der Parser ihn.WizTree kann seine eigenen CSVs erneut lesen. Die Übergabe einer exportierten
.csvals Scan-Pfad funktioniert: So werden Treemaps aus einem Snapshot gezeichnet, ohne die Festplatte erneut zu berühren.Nicht vorhandener Pfad = Exit-Code 0 und keine Datei. Es gibt keinen Fehlercode zum Prüfen: Sie müssen verifizieren, dass die Ausgabedatei erstellt wurde.
Es gibt einen globalen Mutex (
WizTreeMutex): Aufrufe werden mit einer Sperre serialisiert.Der Duplikatfinder existiert nur in der GUI. Die Binärdatei enthält
Duplicate Files:,Duplicates only, die SpaltenDUPSIZE/DUPCOUNTund den INI-Schlüsseldupmethod, aber kein Befehlszeilenschalter erreicht sie.wiztree_duplicatesruft daher WizTree nicht auf: Es gruppiert nach Größe aus dem Snapshot und liest von der Festplatte nur Dateien, die eine Größe mit anderen teilen./exportlimit=Nkürzt den Export auf N Zeilen in Traversierungsreihenfolge, nicht auf ein globales Top-N. Deshalb wird das Ranking hier, im Streaming über die CSV, durchgeführt und nicht von WizTree./sortby-Werte:0keine Reihenfolge,1Größe,2belegt,3Änderungsdatum.
Lizenz
MIT. WizTree ist Software von Antibody Software, die unter ihrer eigenen Lizenz vertrieben wird: Dieses Projekt ruft nur seine Befehlszeile auf.
This server cannot be deployed
Maintenance
Related MCP Connectors
Query and audit AppSheet apps in natural language via Knotrik's pre-scanned definitions.
Ask questions in plain language, get answers from your business database. No SQL required.
Ask data questions in natural language. Get SQL, insights, and charts from your databases.
Query Allen-Bradley and Siemens PLC projects, live tag values, and analyses in plain English.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables natural language analysis of Azure usage data from CSV files, providing cost summaries, visualizations, and insights about service and regional spending patterns.1-
- AlicenseBqualityDmaintenanceRead-only MCP server that wraps WizTree's CSV export and adds disk-usage analysis tools, enabling file system scanning and analysis via natural language.63MIT
- AlicenseNot gradedqualityBmaintenanceQuery local CSV, Parquet, JSON and TSV files with real SQL via DuckDB. Gives your AI coding tool ground-truth data access instead of hallucinated answers.4MIT
- AlicenseNot gradedqualityDmaintenanceBridges AI assistants with WizTree to scan drives, find large files/folders, and perform intelligent cleanups.MIT