7.2 KiB
name, description
| name | description |
|---|---|
| gridcraft-mcp | Excel-Arbeitsmappen (.xlsx, .csv) über den GridCraft-MCP-Server erstellen, öffnen, ändern, berechnen, formatieren und prüfen – Kalkulationen, Stücklisten, Listen, Diagramme, PDF-Export. |
Tabellen mit GridCraft (MCP)
GridCraft ist eine Open-Source-Tabellenkalkulation (Rust), die Excel-Parität anstrebt. Alles ist ein Befehl mit stabiler ID nach dem Excel-Ribbon (home.bold, insert.chart, data.sort …); Ribbon, CLI und MCP rufen dieselben Befehle auf. Getestet mit Version 0.8.0.
Voraussetzung
Die Werkzeuge heißen write_range, read_range, execute_command … mit einem Präfix, der vom Client und vom Namen der Erweiterung abhängt (z. B. mcp__…__GridCraft_for_Claude__write_range). Sind sie zurückgestellt, per ToolSearch nach dem Werkzeugnamen ohne Präfix suchen (z. B. write_range) und alle benötigten in einem Aufruf laden. Fehlen sie, dem Nutzer sagen, dass der Server nicht läuft, statt auf etwas anderes auszuweichen.
Standardweg: GridCraft aus dem ArtCraft-Launcher und die Claude-Desktop-Erweiterung „GridCraft for Claude“ sind installiert und eingeschaltet (siehe docs/INSTALLATION.md). Fehlen die Tools: ArtCraft-Installation und Einstellungen → Erweiterungen prüfen, Claude komplett beenden (auch Taskleiste) und neu starten.
Alternative (Entwickler): Eintrag gridcraft in claude_desktop_config.json; die App kann ihn beim Speichern eigener Einstellungen überschreiben.
Keine Ordnerbeschränkung: Anders als WordCraft kennt GridCraft keine --automation-read-root/-write-root. Der Server kann jede Datei lesen und schreiben, die der Nutzer lesen und schreiben darf. Deshalb:
- Nur Dateien öffnen, die der Nutzer genannt hat.
- Nie über ein Original speichern. Immer unter neuem Namen speichern (z. B.
<name>_bearbeitet.xlsxim selben Ordner oder in einem vom Nutzer genannten Ausgabeordner) und den Pfad nennen. - Vor jedem
save_workbook/file.export*den Zielpfad prüfen.
Tools
| Tool | Zweck |
|---|---|
list_commands |
{search} – Befehls-IDs mit Parametern |
execute_command |
{command, params} – jeder Befehl |
inspect_workbook |
Blätter, genutzte Bereiche, Tabellen, Diagramme, Namen, Undo-Liste |
read_range |
{range, sheet?, formulas?, formatted?} – Werte, Formeln oder Anzeigetext |
write_range |
{range, values} – 2-D-Array; Strings mit = sind Formeln |
set_cell / get_cell |
eine Zelle schreiben/lesen (Wert, Formel, Text, Stil) |
evaluate_formula |
Formel testen, ohne das Blatt zu ändern |
format_range |
bold, italic, underline, fontName, fontSize, fontColor, fillColor, numberFormat, horizontalAlign, wrapText, borders |
create_table |
{range, name?, header?, style?} |
insert_chart |
{range, type, title?, subtype?, at?} |
sort_range / filter |
Sortieren / AutoFilter |
new_workbook / open_workbook / save_workbook |
Dateien (.xlsx, .csv, .tsv, .json, .html) |
undo / redo |
Verlauf |
list_functions |
verfügbare Tabellenfunktionen |
screenshot |
nur im Remote-Modus (--connect) |
Bereiche mit Blatt: "Kalkulation!A3:E8".
Arbeitsweise
- Befehls-IDs nie raten:
list_commands {search: "…"}(z. B.column width,freeze,page,rename,chart.). - Daten in einem Rutsch:
write_rangemit ganzer Tabelle inkl. Formeln statt vielerset_cell. - Formeln statt fester Werte für alles Berechnete (Summen, MwSt, Aufschläge), damit der Nutzer in Excel weiterrechnen kann. Parameter (Aufschlag, MwSt-Satz) in eigene Zellen und per absolutem Bezug (
$B$1) verwenden. - Prüfen:
read_range(berechnete Werte),read_range {formulas: true}(Formeln),read_range {formatted: true}(Anzeige),inspect_workbook(Struktur). Beim PDF-Export das Ergebnis ansehen. - Speichern als .xlsx unter neuem Namen; zur Kontrolle mit
open_workbookwieder öffnen und Formeln lesen.
Deutsche Eingaben – wichtigste Fallen (im Test bestätigt)
- Formeln nur englisch und mit Komma:
=SUM(E2:E5),=ROUND(E8,2),=VLOOKUP(…,FALSE),=IF(…). Deutsche Namen (=SUMME(…)) ergeben#NAME?, Semikolon als Trenner ergibt einen Formelfehler. Excel zeigt die Formeln beim Öffnen trotzdem auf Deutsch an. - Zahlen als JSON-Zahl mit Punkt übergeben (
0.75, nicht"0,75"). Ein String mit Komma wird als Text gespeichert und rechnet nicht mit. - Datumswerte als ISO (
"2026-10-19") oder=DATE(2026,10,19)."19.10.2026"wird zu Text. Danach Zahlenformat setzen:numberFormat: "DD.MM.YYYY". - Zahlenformate sind sprachneutral:
"#,##0.00 €"erscheint in GridCraft als1,114.10 €, in einem deutschen Excel aber korrekt als1.114,10 €. Nicht „reparieren“. - Neue Mappe = US-Letter, Blatt heißt
Sheet1: für deutsche DokumentepageLayout.size {paper: "A4"}undsheet.rename {sheet: "Sheet1", name: "…"}. - Text, der mit
=beginnt, wird als Formel gelesen. Beschriftungen wie= Materialkostenergeben#NAME?. Wie in Excel einen Apostroph voranstellen:"'= Materialkosten"– gespeichert wird reiner Text.
Weitere Fallen
- Diagramme nur aus zusammenhängendem Bereich:
insert_chart {range: "B1:B5,E1:E5"}liefert ein leeres Diagramm über den Daten. Kategorie und Werte nebeneinander anordnen (oder Hilfsbereich anlegen) undrange: "A1:B5"nutzen. Immeratsetzen (z. B."H2"), damit das Diagramm keine Daten verdeckt. - PDF-Export (
file.exportPdf {path}) schneidet breite Inhalte ab: vorherhome.autofitColumnWidth {cols: "A:E"}, ggf.pageLayout.orientation {orientation: "landscape"}undpageLayout.scaleToFit {width: 1}. - Spaltenbreiten werden nicht automatisch angepasst: nach dem Befüllen
home.autofitColumnWidth. - CSV-Export (
save_workbookmit.csv) schreibt Komma-getrennt und die formatierte Anzeige (412.50 €). Für deutsches Excel oder ERP-Import ungeeignet – lieber .xlsx liefern oder vor dem CSV-Export Zahlenformate entfernen und den Nutzer auf das Trennzeichen hinweisen. open_workbooköffnet eine weitere Mappe und macht sie aktiv; Befehle wirken auf die aktive Mappe. Bei mehreren Mappen mitinspect_workbookprüfen, welche aktiv ist.undonachopen_workbookhat keinen Verlauf; Fehler vor dem Speichern beheben.
Bestehende Mappen bearbeiten
Im Test blieben beim Öffnen und Speichern einer Excel-Datei erhalten: verbundene Zellen, Schrift, Zahlenformate, Kommentare, bedingte Formatierung, Datenüberprüfung, benannte Bereiche, blattübergreifende Formeln, fixierte Bereiche, Spaltenbreiten, Seitenformat (A4 quer) und Kopfzeile.
Ablauf:
open_workbook→inspect_workbook→ relevante Bereiche mitread_range {formulas: true}lesen, bevor etwas geändert wird.- Nur die gewünschten Zellen ändern; Formeln anderer Zellen nicht durch Werte ersetzen.
- Ergebnis gegenlesen (
read_range), unter neuem Namen speichern. - Dem Nutzer kurz sagen, was geändert wurde (Zellen, alter → neuer Wert), und vorschlagen, die Datei einmal in Excel zu öffnen.
Grenzen
- Keine Netzwerkfunktionen (
WEBSERVICEliefert#VALUE!), keine Makros/VBA. - Funktionsumfang mit
list_functionsprüfen, bevor exotische Funktionen genutzt werden. - Im Remote-Modus (
--connect) steuert der Server die geöffnete Desktop-App; das ist ebenfalls nicht auf Ordner beschränkt.