Labsco
sudomock logo

SudoMock

from sudomock

Product mockup rendering API. Upload PSD templates, render photorealistic mockups with 9 MCP tools including AI render.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedAccount requiredNeeds API keys

SudoMock MCP Server

Generate photorealistic product mockups from Claude, Cursor, Windsurf, and VS Code.

Model Context Protocol server for the SudoMock mockup generation API. Upload PSD templates, place artwork onto smart objects, and get CDN-hosted renders -- all through natural language.

Tools

ToolDescriptionCredits
list_mockupsList your uploaded mockup templates0
get_mockup_detailsGet smart object UUIDs, dimensions, blend modes0
render_mockupRender a mockup with your artwork1
render_2d_mockupRender artwork onto a saved 2D mockup template (no PSD)5
render_videoAnimate a mockup into an AI video clip (always async)cost-based (free: 1/lifetime)
upload_psdUpload a Photoshop PSD/PSB template (sync or async)0
list_2d_mockupsList your saved SudoAI 2D mockup templates0
get_2d_mockupGet one 2D mockup's details + print-area UUIDs0
delete_2d_mockupDelete a 2D mockup template0
get_jobCheck the status of an async job by job_id0
wait_for_jobPoll an async job until it succeeds or fails0
list_jobsList your async jobs (renders, videos, uploads)0
get_accountCheck plan, credits, and usage0
update_mockupRename a mockup template0
delete_mockupDelete a mockup template0
create_studio_sessionCreate an embedded editor session0
create_webhook_endpointRegister a webhook for async job completion0
list_webhook_endpointsList your webhook endpoints0
update_webhook_endpointEdit or enable/disable a webhook endpoint0
delete_webhook_endpointDelete a webhook endpoint0
rotate_webhook_secretRotate a webhook signing secret0
test_webhook_endpointSend a signed webhook.test event0
list_webhook_deliveriesList delivery attempts for an endpoint0
replay_webhook_deliveryReplay a single failed delivery0

Async jobs

render_mockup and upload_psd accept is_async: true, and render_video is always async. These return a job_id immediately (HTTP 202) instead of a final result. Poll it with get_job, or let wait_for_job block until the job reaches a terminal status and hands back result_url, mockup_uuid, model, credits_charged, and payg ({credits, unit_price, cost} for pay-as-you-go jobs, otherwise null).

Webhooks

Register an endpoint with create_webhook_endpoint to be notified when async jobs finish. Deliveries are signed with TWO headers: X-SudoMock-Signature (a hex HMAC-SHA256 over ${timestamp}.${rawBody} using the secret returned at creation/rotation) and X-SudoMock-Timestamp (unix seconds). Verify in constant time and reject if |now - timestamp| > 300s. The delivery body is {event, job_id, kind, status, result_url, error, created_at}. Event types: render.succeeded, render.failed, upload.succeeded, video.succeeded, video.failed, webhook.test.

Example Prompts