126 lines
4.7 KiB
JSON
126 lines
4.7 KiB
JSON
{
|
|
"manifest_version": "0.3",
|
|
"name": "figcraft-mcp",
|
|
"display_name": "FigCraft for Claude",
|
|
"version": "0.2.0",
|
|
"description": "Bedienoberflächen und Screens (z. B. HMI-Masken) entwerfen und als PNG/PDF/SVG exportieren, PDF mit Beschnitt und CMYK. CLI 0.11.2. Benötigt FigCraft aus dem ArtCraft-Launcher unter C:\\Program Files\\FigCraft\\.",
|
|
"author": {
|
|
"name": "Dominic Gundel"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://git.gundel.dev/dg/claude-skills.git"
|
|
},
|
|
"homepage": "https://git.gundel.dev/dg/claude-skills",
|
|
"license": "MIT",
|
|
"icon": "icon.png",
|
|
"compatibility": {
|
|
"platforms": [
|
|
"win32"
|
|
]
|
|
},
|
|
"server": {
|
|
"type": "binary",
|
|
"entry_point": "server/README.txt",
|
|
"mcp_config": {
|
|
"command": "C:\\Program Files\\FigCraft\\figcraft-cli.exe",
|
|
"args": [
|
|
"mcp",
|
|
"--automation-read-root",
|
|
"${user_config.read_root}",
|
|
"--automation-write-root",
|
|
"${user_config.write_root}"
|
|
]
|
|
}
|
|
},
|
|
"tools": [
|
|
{
|
|
"name": "list_commands",
|
|
"description": "List FigCraft commands: id, label, menu path, shortcut, whether it is undoable, and a parameter description."
|
|
},
|
|
{
|
|
"name": "run_command",
|
|
"description": "Execute one FigCraft command by id with JSON params (ids and params from list_commands)."
|
|
},
|
|
{
|
|
"name": "batch",
|
|
"description": "Run several commands in order as ONE undo step (engine `command.batch`)."
|
|
},
|
|
{
|
|
"name": "create_node",
|
|
"description": "Create a layer (engine `node.create`) and return its id and inspected properties."
|
|
},
|
|
{
|
|
"name": "set_properties",
|
|
"description": "Set properties on one or more layers as one undo step (engine `node.set`)."
|
|
},
|
|
{
|
|
"name": "inspect_document",
|
|
"description": "The active document as JSON: name, path, dirty flag, current page, selection, the current page's layer tree (id, name, type, x/y relative to the parent frame (groups don't count), width, height, absoluteBounds in page co"
|
|
},
|
|
{
|
|
"name": "get_node",
|
|
"description": "One layer as JSON (same fields as inspect_document) with its children to `depth`."
|
|
},
|
|
{
|
|
"name": "select",
|
|
"description": "Replace the selection with `ids` (switching to their page)."
|
|
},
|
|
{
|
|
"name": "export",
|
|
"description": "Export layers (default: the selection, else every top-level layer of the current page) as png, jpg, svg, webp or pdf at `scale`, or the whole file as `fig` (experimental: written from public format knowledge, with `warni"
|
|
},
|
|
{
|
|
"name": "screenshot",
|
|
"description": "Look at the design: renders the given layers (or the whole current page, with its background) to PNG and returns it as image content, plus its size and the scale used."
|
|
},
|
|
{
|
|
"name": "open_file",
|
|
"description": "Open a .figcraft or .json document (FigCraft or REST API file JSON), a .fig file (best effort, with `warnings` for what wasn't imported), an .svg (becomes vectors) or an image (becomes an image layer) as the active docum"
|
|
},
|
|
{
|
|
"name": "save_file",
|
|
"description": "Save the active document as a .figcraft file."
|
|
},
|
|
{
|
|
"name": "undo",
|
|
"description": "Undo the last change (one command, batch or gesture)."
|
|
},
|
|
{
|
|
"name": "redo",
|
|
"description": "Redo the last undone change."
|
|
},
|
|
{
|
|
"name": "pointer",
|
|
"description": "Drive the canvas with the mouse in page coordinates, exactly as a user would with the current tool: click to select, drag to move/resize/marquee, or draw with a shape tool (set `tool` first, e.g."
|
|
},
|
|
{
|
|
"name": "key",
|
|
"description": "Press a key or shortcut as if typed on the canvas: a menu shortcut (e.g."
|
|
},
|
|
{
|
|
"name": "type_text",
|
|
"description": "Type into a text layer."
|
|
},
|
|
{
|
|
"name": "inspect_ui",
|
|
"description": "UI state: current tool, view (zoom, centre), status, panels, timings and the app's windows (`windows`: id, title, files) when attached to the app; headless reports the session status."
|
|
}
|
|
],
|
|
"user_config": {
|
|
"read_root": {
|
|
"type": "directory",
|
|
"title": "Lese-Ordner",
|
|
"description": "Hier darf Claude Dateien lesen. Ruhig weit fassen (z. B. Dokumente); der Schreib-Ordner sollte darin liegen, damit Ergebnisse wieder geöffnet werden können.",
|
|
"required": true,
|
|
"default": "${HOME}/Documents"
|
|
},
|
|
"write_root": {
|
|
"type": "directory",
|
|
"title": "Schreib-Ordner",
|
|
"description": "Nur hier darf Claude speichern. Eng fassen, eigener Ordner, z. B. Dokumente\\Claude.",
|
|
"required": true,
|
|
"default": "${HOME}/Documents/Claude"
|
|
}
|
|
}
|
|
} |