Until a card is verified and the $5 minimum funded, every render carries a watermark and stops at 1,024 px, five templates are kept, and one that sits 13 days without a render is deleted. That is worth knowing because get_account reports the same tier either way: what changes is the balance, not the plan. On the rendering side, the distinction to get right early is surface against print area — a surface is a whole printable product detected in the photo, a print area is a zone somebody drew on one, they have separate tools, and a saved print area does not close off the surface underneath it. Sizing takes one answer per render, never both.
An MCP server for SudoMock's mockup rendering API. Upload a Photoshop template, place artwork onto its smart objects, edit the text layers it exposes, and take back a rendered image URL. A second track starts from a photograph: create a 2D mockup and it detects the printable surfaces itself, so artwork can go across a whole surface or into a print area someone drew on it.
- list_mockups and get_mockup_details return your templates and one template's smart object UUIDs, dimensions and blend modes; render_mockup does the render at 1 credit, and upload_psd takes a PSD or PSB in either sync or async form
- create_2d_mockup builds a mockup from a photograph and detects its printable surfaces; get_2d_mockup returns those surfaces with any saved print areas, and update_2d_print_areas replaces their geometry
- render_2d_surface prints across a whole surface using either a coverage percentage or an explicit width and height; render_2d_print_area targets a drawn zone such as a chest logo using either a fit or explicit dimensions. A product can carry both, and they stay separate targets
- Sizing takes one answer per render — the relative option or the exact box, never both, and width and height together — while position, offset_x, offset_y and rotation place the artwork on either kind of target
- remove_background returns a transparent-PNG cutout on a URL valid for 7 days that can be passed straight back as artwork_url, or remove_background: true cleans the artwork inline during a render. Either way it is 25 credits per artwork, refunded automatically if processing fails
- render_video is always asynchronous, and render_mockup, upload_psd, create_2d_mockup and both 2D renders accept is_async: true. Those return a job_id, with get_job, wait_for_job and list_jobs following it through to result_url, credits_charged and the pay-as-you-go breakdown
- Webhooks are covered properly: create, list, update, delete and test endpoints, rotate the signing secret, list deliveries and replay a failed one. Deliveries carry X-SudoMock-Signature — a hex HMAC-SHA256 over the timestamp and raw body — plus X-SudoMock-Timestamp, to be verified in constant time and rejected beyond 300s
- get_account reports plan, credits, prepaid balance and usage, while update_mockup renames a template and delete_mockup removes one
A local stdio server: npx -y @sudomock/mcp with SUDOMOCK_API_KEY, an sm_ key from the SudoMock dashboard. A hosted HTTP or OAuth transport is not available yet. Pay as you go carries no subscription — one PSD render is $0.10 and the minimum first payment is $5 — while volume plans start at $25/month for 5,000 renders and the lowest self-serve rate is $2.42 per 1,000 renders on the annual Pro 50K plan. A new account starts with 500 credits granted once, spendable without a card. Until a card is verified and the $5 minimum funded, renders are watermarked and capped at 1,024 px, 5 PSD templates are kept, one render runs at a time, and a template goes 13 days without a render before it is removed. Funding lifts all of that at once: no watermark, no width cap, 150 stored templates, 25 concurrent renders and 10 concurrent uploads.
One command plus a key — npx -y @sudomock/mcp, then supply credentials
