retroprint-mcp
v0.1.2
Published
MCP server for RETROPRINT — turn a photo into a riso-style print from any MCP client
Maintainers
Readme
retroprint-mcp
An MCP server for RETROPRINT: any MCP client — Claude Code, Claude Desktop, Cursor — can turn a photo on disk into a riso-style print, look at the result, and iterate on the design.
A thin wrapper over the public headless API (/v1), the same way PostHog's
and Figma's servers wrap theirs: the server holds no rendering logic, just an
API key and four tools. It runs locally over stdio because that is where
the photos are — tools take file paths in, write finished prints back to
disk, and inline a preview the model can actually see.
Tools
| tool | what it does |
| --- | --- |
| create_print | Photo in (path or URL), finished print out, saved to disk. No options = the server designs the print from the photo. Small results come back inline so the model can look and iterate. Follows the job queue automatically for big prints. |
| list_presets | The built-in 2–3 ink designs, with their ink chips. |
| get_design_guide | The full DesignState schema — fields, ranges, ink catalog, paper stocks — served on demand instead of bloating every tool description. |
| get_print_job | Collect a job that outlived create_print's polling window. |
Setup
You need an API key: retro-print.com → Settings → API keys. Prints spend plan units by output size (≤4 MP = 1 unit … >24 MP = 8).
Claude Code:
claude mcp add retroprint --env RETROPRINT_API_KEY=rp_… -- npx -y retroprint-mcpClaude Desktop / Cursor (claude_desktop_config.json / .cursor/mcp.json):
{
"mcpServers": {
"retroprint": {
"command": "npx",
"args": ["-y", "retroprint-mcp"],
"env": { "RETROPRINT_API_KEY": "rp_…" }
}
}
}RETROPRINT_API_URL points the server at a different backend (a local stack
on http://127.0.0.1:8080, say); it defaults to the live site. It must be
https, or plain http to this machine: your API key goes to it on every call.
Try it
Turn ~/Pictures/dog.jpg into a retro print.
Give it two inks — black shadows and fluorescent pink midtones — on kraft paper, 4:5, and push the misregistration until it looks hand-fed.
The model drafts at width 800, looks at the inline preview, adjusts the design, and renders the final at full size.
Design notes
- Few tools, strong descriptions. The schema lives behind
get_design_guide, fetched only when the model writes a custom design. - Errors teach. The server's own messages pass through untouched (402 says what the print would have cost), plus one line on what to do next.
- Previews are capped at 1.5 MB — above that the print is on disk and the model is told to draft smaller, not handed a context-blowing blob.
- Annotations mark
list_presets/get_design_guideread-only so clients can skip confirmation prompts.
