Skip to content
Craft Wiki

AI agents

DesignCraft is built so that AI assistants can use it as well as people. Any assistant that supports the Model Context Protocol (MCP) can create documents, draw frames, set text, apply styles, place pictures, and look at the pages it has made. That includes Claude, OpenAI’s Codex, Cursor and GitHub Copilot in VS Code.

Assistants talk to DesignCraft through its command-line tool, designcraft-cli:

  • Windows: designcraft-cli.exe is next to designcraft.exe in the install folder or portable zip. The default install folder is %LOCALAPPDATA%\Programs\ArtCraft\DesignCraft\.
  • macOS: it’s inside the app, at /Applications/DesignCraft.app/Contents/MacOS/designcraft-cli. You can also download it on its own as designcraft-cli-<ver>-macos-universal.zip from the release page.
  • Linux .deb and .rpm: it’s installed as /usr/bin/designcraft-cli.
  • Linux tarball and FreeBSD: it’s in the bin folder, next to designcraft.

Every assistant below starts DesignCraft with the same command: designcraft-cli mcp. If the assistant can’t find designcraft-cli, use its full path instead. Desktop apps often need the full path even when your terminal doesn’t.

Terminal window
claude mcp add designcraft -- designcraft-cli mcp

Choose Settings › Developer › Edit Config, add DesignCraft to claude_desktop_config.json, then restart Claude:

{
"mcpServers": {
"designcraft": {
"command": "designcraft-cli",
"args": ["mcp"]
}
}
}
Terminal window
codex mcp add designcraft -- designcraft-cli mcp

The Codex CLI, the Codex IDE extension and the ChatGPT desktop app share this setup, so you only add it once. ChatGPT on the web can’t connect to programs on your computer.

Add DesignCraft to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):

{
"mcpServers": {
"designcraft": {
"type": "stdio",
"command": "designcraft-cli",
"args": ["mcp"]
}
}
}

Open the Command Palette, run MCP: Add Server, choose Command (stdio), and enter designcraft-cli mcp. Name it designcraft.

Look for “MCP servers” in your assistant’s settings and add a local (stdio) server with the command designcraft-cli and the argument mcp.

Once connected, ask in plain words, for example “Make an A4 poster for a summer fair, with a big headline, a photo from ~/Pictures/park.jpg and the details underneath, and save it as fair.designcraft”. DesignCraft works in the background, with no window. The assistant can render each page as a picture to check its own work.

To stop the assistant reading or writing files outside one folder, add a read folder and a write folder after designcraft-cli mcp:

Terminal window
designcraft-cli mcp --automation-read-root ~/Documents/project --automation-write-root ~/Documents/project/out

In a JSON config, put each flag and folder in args:

"args": ["mcp", "--automation-read-root", "/Users/you/Documents/project",
"--automation-write-root", "/Users/you/Documents/project/out"]

The assistant can then only open and place files inside the read folder, and only save and export inside the write folder. Leave out the write folder and it can’t write to disk at all. You can give either flag more than once. Use full paths in JSON files, since ~ isn’t expanded there.

To see the assistant’s changes as it makes them, start DesignCraft with its control port open, and connect the assistant to the window instead:

Terminal window
designcraft --control 7979

Then use designcraft-cli mcp --connect 7979 as the assistant’s command. In the app, the assistant can also click, drag, fill in dialogs and take screenshots.

designcraft-cli also works on its own, without an assistant:

Terminal window
designcraft-cli run --in brochure.designcraft --export brochure.pdf # export to .pdf, .png, .jpg, .idml, .epub, .pptx, .html, .rtf, .txt or .designcraft
designcraft-cli run --sample --all-pages out/ # render every page of the sample to PNG
designcraft-cli commands # list every command

designcraft-cli describe COMMAND shows what one command takes. designcraft-cli script FILE runs a file of commands, one per line. Add --save OUT to save the document afterward, --export OUT to export it, and --keep-going to carry on after a command fails. designcraft-cli validate-pdf FILE.pdf --standard x4 checks a PDF against PDF/X-4. Use x1a for PDF/X-1a.

For scripting DesignCraft’s commands, see the developer documentation on GitHub.