Skills auf die installierten Craft-Versionen vom 26. Oktober 2026 heben, damit sie zu den aktuell installierten CLIs passen.

CADCraft, EffectCraft und FilmCraft ergänzen.
This commit is contained in:
Dominic Gundel committed 2026-10-26 12:17:25 +01:00
1 parent d374ee7fff
commit 93cac0947b
69 files changed
+1787 -151

No files matched your search

+78
View File
@@ -0,0 +1,78 @@
---
name: effectcraft-mcp
description: "Motion-Graphics und Compositings (.ecproj) mit dem EffectCraft-MCP-Server aufbauen, keyframen und rendern. Verwenden, wenn EffectCraft-Werkzeuge verbunden sind oder der Nutzer EffectCraft nennt; typisch für Titel, Bauchbinden, einfache Animationen, Standbilder und Filmexporte. Nicht für den Schnitt einer Timeline aus Clips (FilmCraft)."
---
# Compositing mit EffectCraft (MCP)
EffectCraft ist ein Compositor im Stil von After Effects (Rust). CLI 0.17.0. Zeiten sind Sekunden. Projektdatei `.ecproj`.
## Voraussetzung
Die Werkzeuge `list_commands`, `execute_command`, `get_project`, `set_property`, `render_preview` … müssen verbunden sein. Fehlen sie, dem Nutzer sagen, dass der Server nicht verbunden ist (Einrichtung siehe README).
Start, wie die CLI es verlangt:
- Kopflos: `effectcraft-cli mcp`, dazu `--empty`, `--demo` oder `--project F.ecproj`. `--empty` zusammen mit beiden Ordner-Flags ist geprüft (Server kommt hoch).
- `--autosave` oder `--bridge PORT`, nicht beides. `--bridge PORT` hängt an der App. Die globale Option heißt ebenfalls `--bridge PORT`.
- `--automation-read-root` und `--automation-write-root` (je mehrfach). Lesen im Lese- oder Schreib-Ordner, Schreiben nur im Schreib-Ordner. Die Hilfe sagt an dieser Stelle, Skripte werden abgelehnt. `run_script` mit gesetzten Ordnern ist nicht extra probiert.
## Werkzeuge
| Tool | Zweck |
|---|---|
| `list_commands {filter}` / `describe_command` | Befehls-IDs. Nie raten. `command_list` ist derselbe Katalog |
| `execute_command {command, params}` | ein Befehl. `command_run` nimmt stattdessen `{id, params}` |
| `batch {steps}` | mehrere Befehle, ein Undo. `"$1.layer"` meint das Feld `layer` aus Schritt 1 |
| `command_batch` | mehrere Befehle, je ein eigenes Undo |
| `get_project` / `get_comp` / `get_layer` / `get_property` | nachlesen. Pfade wie `transform/position`, `effects/#1/blurriness` |
| `set_property` / `add_keyframe` / `add_effect` | Wert, Keys, Effekt (`Gaussian Blur` oder eine ID aus `list_effects`) |
| `render_frame` / `render_preview` | PNG der Komposition |
| `open_project` / `save_project` | `.ecproj`, `demo` oder `new` |
| `undo` / `redo` / `history` | Verlauf, `history.goto` springt auch auf einen Zweig |
| `run_script {code}` | JavaScript im After-Effects-Objektmodell |
| `list_effects` / `list_fonts` / `get_state` | Kataloge und wo der Abspielkopf steht |
| `doc_inspect` | Projekt plus aktive Komposition |
| `script_ui` | Fenster, die ein Skript geöffnet hat |
## Arbeitsweise
1. **Leer starten oder die genannte `.ecproj` öffnen.** Nicht raten, welches Projekt offen ist: `get_project`.
2. **Komposition, dann Ebenen, dann Keys.** Beispiel aus der Werkzeugbeschreibung: `comp.new`, `layer.newText` oder `layer.newSolid`, `set_property` / `add_keyframe`, `effect.apply`.
3. **`render_preview` nach jedem größeren Schritt.**
4. **Speichern** als `.ecproj` unter neuem Namen. Eine Filmdatei ist ein eigener Schritt.
CLI-Export (`render`), Formate: h264, hevc, av1, prores, webm, png, jpeg, tiff, exr, gif, wav, aiff. Ein Standbild: `render-frame`. Ob jedes Format auf diesem Rechner einen Encoder hat, ist nicht geprüft.
## Fallen
- **Zwei Lauf-Werkzeuge.** `execute_command` will `command`. `command_run` will `id`. Dieselbe ID, anderes Feld.
- **`batch` rollt zurück, `command_batch` nicht als eine Gruppe.** Für einen Titel, der ganz oder gar nicht entstehen soll, `batch`.
- **Zeiten sind Sekunden**, nicht Frames, solange der Befehl nicht `frame` sagt.
- **Schrift:** `list_fonts`, dann `layer.setText`. Eine fehlende Familie nicht raten.
- **Ordner und Skripte.** Die Hilfe lehnt Skripte ab, sobald die Ordner-Flags gesetzt sind. Dann `execute_command` statt `run_script`.
## Rezept
**Titel, 1920×1080, 5 s, 30 fps:** `comp.new`, `layer.newText`, Deckkraft bei 0 s und 1 s per `add_keyframe` auf `transform/opacity`, `render_preview` bei 0 und bei 1, `save_project` unter neuem Namen. Eine MP4 nur, wenn der Nutzer eine Filmdatei will, und nur in den Schreib-Ordner.
## Abschlussprüfung
- `render_preview` zur genannten Zeit angesehen.
- `get_project`: Name, Größe, Dauer passen.
- Pfad der `.ecproj` genannt. Eine exportierte Filmdatei nur, wenn sie wirklich geschrieben wurde.
## Datenschutz
Ampel:
- Grün: allgemeine und technische Inhalte ohne Kundenbezug.
- Gelb: Projekt- und Geschäftsinfos, nur nach Abwägung oder anonymisiert.
- Rot: personenbezogene Daten und NDA-Inhalte gehören nicht in die Cloud-KI.
In Titeln Beispieltext statt echter Kundennamen.
## Grenzen
- Kein Schnittplatz. Clips aneinanderhängen ist FilmCraft.
- Encoder für h264, hevc, av1 und prores sind in der Hilfe genannt, auf dieser Maschine nicht durch einen Export geprüft.