Picorn
What this MCP does
Creates and edits layered social images, videos, slideshows, vector assets, and marketing projects with persistent editable canvases, timelines, and renders.
Tools
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['svg'], 'properties': {'svg': {'type': 'string', 'minLength': 1, 'description': 'Complete Codex-authored SVG with a viewBox.'}, 'width': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'height': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'preview': {'type': 'boolean', 'description': 'Return an inline preview. Default true.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['prompt'], 'properties': {'cfg': {'type': 'number', 'maximum': 15, 'minimum': 1}, 'seed': {'type': 'integer'}, 'steps': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'prompt': {'type': 'string', 'maxLength': 2000, 'minLength': 1}, 'preview': {'type': 'boolean'}, 'imageUrl': {'type': 'string'}, 'imageBase64': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'layer'], 'properties': {'layer': {'type': 'object', 'description': 'Native layer object. At minimum provide type and its content field.', 'additionalProperties': {}}, 'slideId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId'], 'properties': {'role': {'enum': ['hook', 'empathy', 'insight', 'cta', 'other', 'single', 'problem', 'agitation', 'solution', 'proof', 'benefit', 'story'], 'type': 'string'}, 'projectId': {'type': 'string', 'minLength': 1}, 'background': {'type': 'object', 'additionalProperties': {}}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectIds', 'mode'], 'properties': {'mode': {'enum': ['left', 'center', 'right', 'top', 'middle', 'bottom'], 'type': 'string'}, 'slideId': {'type': 'string', 'minLength': 1}, 'objectIds': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 2}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'svg': {'type': 'string', 'maxLength': 400000, 'minLength': 1, 'description': 'Complete SVG layout. Generated visuals are <rect data-clipart="true" data-clipart-engine="svg-converter|z-image-turbo|library" data-clipart-prompt="..." ... /> placeholders resolved internally.'}, 'title': {'type': 'string', 'maxLength': 160}, 'width': {'type': 'integer', 'maximum': 4096, 'minimum': 64, 'description': 'Required only for custom canvases.'}, 'height': {'type': 'integer', 'maximum': 4096, 'minimum': 64, 'description': 'Required only for custom canvases.'}, 'background': {'type': 'object', 'description': 'CanvasBackground: color, gradient, texture, or transparent.', 'additionalProperties': {}}, 'aspectRatio': {'enum': ['1:1', '2:3', '3:4', '4:3', '4:5', '5:4', '9:16', '16:9', '21:9', '1:2', 'custom'], 'type': 'string'}, 'workspaceProjectId': {'type': 'string', 'description': 'Marketing project that will contain this editor file.'}, 'workspaceProjectKey': {'type': 'string', 'description': 'Access key returned by picorn_projects_create.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slides'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string', 'maxLength': 80, 'minLength': 1}, 'maxItems': 30}, 'title': {'type': 'string', 'maxLength': 160}, 'width': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'format': {'enum': ['png', 'jpeg'], 'type': 'string'}, 'height': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'slides': {'type': 'array', 'items': {'type': 'object', 'properties': {'svg': {'type': 'string', 'maxLength': 120000, 'minLength': 1, 'description': 'Complete self-contained agent-authored SVG with a positive viewBox; no scripts, events, external assets, or placeholders.'}, 'role': {'enum': ['hook', 'empathy', 'insight', 'cta', 'other', 'single', 'problem', 'agitation', 'solution', 'proof', 'benefit', 'story'], 'type': 'string'}, 'layers': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {}}, 'maxItems': 150, 'description': 'Native editable Picorn layers in deterministic bottom-to-top order. SVG, when present, is the bottom layer.'}, 'background': {'type': 'object', 'additionalProperties': {}}}, 'additionalProperties': False}, 'maxItems': 20, 'minItems': 1}, 'caption': {'type': 'string', 'maxLength': 2200}, 'quality': {'type': 'number', 'maximum': 1, 'minimum': 0.1}, 'background': {'type': 'object', 'description': 'Default background for slides that omit their own background.', 'additionalProperties': {}}, 'aspectRatio': {'enum': ['1:1', '2:3', '3:4', '4:3', '4:5', '5:4', '9:16', '16:9', '21:9', '1:2', 'custom'], 'type': 'string'}, 'workspaceProjectId': {'type': 'string'}, 'workspaceProjectKey': {'type': 'string'}, 'transparentBackground': {'type': 'boolean'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectIds'], 'properties': {'slideId': {'type': 'string', 'minLength': 1}, 'objectIds': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId'], 'properties': {'slideId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectIds', 'axis'], 'properties': {'axis': {'enum': ['horizontal', 'vertical'], 'type': 'string'}, 'slideId': {'type': 'string', 'minLength': 1}, 'objectIds': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 3}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectId'], 'properties': {'offsetX': {'type': 'number'}, 'offsetY': {'type': 'number'}, 'slideId': {'type': 'string', 'minLength': 1}, 'objectId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectIds'], 'properties': {'name': {'type': 'string'}, 'slideId': {'type': 'string', 'minLength': 1}, 'objectIds': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 2}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'name': {'type': 'string', 'maxLength': 160, 'description': 'Asset name shown in the marketing project.'}, 'preview': {'type': 'boolean', 'description': 'Return an inline preview. Default true.'}, 'imageUrl': {'type': 'string', 'description': 'An image URL on a Picorn-approved host.'}, 'imageBase64': {'type': 'string', 'description': 'Image bytes as base64, with or without a data:image/... prefix.'}, 'workspaceProjectId': {'type': 'string'}, 'workspaceProjectKey': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId'], 'properties': {'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId'], 'properties': {'format': {'enum': ['png', 'jpeg', 'pdf', 'docx'], 'type': 'string'}, 'quality': {'type': 'number', 'maximum': 1, 'minimum': 0.1}, 'slideIds': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string', 'minLength': 1}, 'pageWidthMm': {'type': 'number', 'maximum': 2000, 'minimum': 10}, 'pageHeightMm': {'type': 'number', 'maximum': 2000, 'minimum': 10}, 'transparentBackground': {'type': 'boolean'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectIds'], 'properties': {'slideId': {'type': 'string', 'minLength': 1}, 'objectIds': {'type': 'array', 'items': {'type': 'string'}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'groupId'], 'properties': {'groupId': {'type': 'string', 'minLength': 1}, 'slideId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'objectId', 'patch'], 'properties': {'patch': {'type': 'object', 'additionalProperties': {}}, 'slideId': {'type': 'string', 'minLength': 1}, 'objectId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'commitType': {'enum': ['move', 'scale', 'rotate', 'transform', 'style', 'content', 'lock', 'visibility', 'bulk-style'], 'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId'], 'properties': {'role': {'type': 'string'}, 'slideId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'background': {'type': 'object', 'additionalProperties': {}}, 'imagePrompt': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['prompt'], 'properties': {'seed': {'type': 'integer'}, 'width': {'type': 'integer', 'maximum': 2048, 'minimum': 256}, 'height': {'type': 'integer', 'maximum': 2048, 'minimum': 256}, 'prompt': {'type': 'string', 'maxLength': 2000, 'minLength': 1}, 'preview': {'type': 'boolean'}, 'aspectRatio': {'enum': ['1:1', '4:3', '3:4', '16:9', '9:16', '4:5', '5:4', '2:3', '3:2'], 'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['prompt', 'kind'], 'properties': {'kind': {'enum': ['signet', 'icon'], 'type': 'string'}, 'prompt': {'type': 'string', 'maxLength': 2000, 'minLength': 1}, 'palette': {'type': 'array', 'items': {'type': 'string', 'pattern': '^#[0-9a-f]{6}$'}, 'maxItems': 7, 'minItems': 2}, 'numColors': {'type': 'integer', 'maximum': 7, 'minimum': 2}, 'projectName': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'workspaceProjectId': {'type': 'string'}, 'workspaceProjectKey': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'brandColors': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'hex'], 'properties': {'id': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'hex': {'type': 'string', 'pattern': '^#[0-9a-f]{3}([0-9a-f]{3})?$'}, 'name': {'type': 'string', 'maxLength': 40, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 12}, 'description': {'type': 'string', 'maxLength': 1000}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['workspaceProjectId', 'workspaceProjectKey'], 'properties': {'workspaceProjectId': {'type': 'string', 'minLength': 1}, 'workspaceProjectKey': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['workspaceProjectId', 'workspaceProjectKey'], 'properties': {'name': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'brandColors': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'hex'], 'properties': {'id': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'hex': {'type': 'string', 'pattern': '^#[0-9a-f]{3}([0-9a-f]{3})?$'}, 'name': {'type': 'string', 'maxLength': 40, 'minLength': 1}}, 'additionalProperties': False}, 'maxItems': 12}, 'description': {'type': 'string', 'maxLength': 1000}, 'workspaceProjectId': {'type': 'string', 'minLength': 1}, 'workspaceProjectKey': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['svg'], 'properties': {'svg': {'type': 'string', 'minLength': 1}, 'width': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'height': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'preview': {'type': 'boolean'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1}, 'style': {'type': 'string'}, 'aspect': {'enum': ['square', 'tall', 'wide'], 'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1}, 'query': {'type': 'string', 'minLength': 1}, 'style': {'enum': ['mono', 'color'], 'type': 'string'}, 'visualStyle': {'enum': ['lineart', 'monoline', 'rounded', 'bulky', 'sketch', 'artistic', 'geometric', 'stamp'], 'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId', 'slideId', 'kind', 'src', 'durationFrames'], 'properties': {'src': {'type': 'string', 'format': 'uri'}, 'kind': {'enum': ['video', 'audio'], 'type': 'string'}, 'name': {'type': 'string', 'maxLength': 160}, 'size': {'type': 'object', 'additionalProperties': {}}, 'volume': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'slideId': {'type': 'string', 'minLength': 1}, 'position': {'type': 'object', 'additionalProperties': {}}, 'posterUrl': {'type': 'string', 'format': 'uri'}, 'projectId': {'type': 'string', 'minLength': 1}, 'sourceFps': {'type': 'number', 'maximum': 120, 'minimum': 1}, 'transform': {'type': 'object', 'additionalProperties': {}}, 'startFrame': {'type': 'integer', 'minimum': 0}, 'trimEndFrame': {'type': 'integer', 'minimum': 1}, 'durationFrames': {'type': 'integer', 'maximum': 3600, 'minimum': 1}, 'trimStartFrame': {'type': 'integer', 'minimum': 0}, 'sourceDurationFrames': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'fps': {'type': 'integer', 'maximum': 60, 'minimum': 12, 'description': 'Timeline and export FPS. Default 30.'}, 'title': {'type': 'string', 'maxLength': 160}, 'width': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'height': {'type': 'integer', 'maximum': 4096, 'minimum': 64}, 'background': {'type': 'object', 'additionalProperties': {}}, 'aspectRatio': {'enum': ['1:1', '2:3', '3:4', '4:3', '4:5', '5:4', '9:16', '16:9', '21:9', '1:2', 'custom'], 'type': 'string'}, 'durationFrames': {'type': 'integer', 'maximum': 3600, 'minimum': 1, 'description': 'Initial timeline duration in frames. Default 150.'}, 'workspaceProjectId': {'type': 'string'}, 'workspaceProjectKey': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['mediaBase64'], 'properties': {'name': {'type': 'string', 'maxLength': 160}, 'contentType': {'type': 'string', 'description': 'Required when mediaBase64 has no data: prefix.'}, 'mediaBase64': {'type': 'string', 'minLength': 1, 'description': 'Raw base64 or a data: URL. Maximum decoded size 15 MB.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projectId'], 'properties': {'fps': {'type': 'integer', 'maximum': 60, 'minimum': 12}, 'format': {'enum': ['mp4', 'webm'], 'type': 'string'}, 'quality': {'enum': ['draft', 'standard', 'high'], 'type': 'string'}, 'slideIds': {'type': 'array', 'items': {'type': 'string'}}, 'projectId': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
ai-content-drop
Generates AI images, videos, UGC clips, avatars, and finished ads, while organizing creative assets and campaign boards.
Carryo Website Publisher
Creates, previews, publishes, edits and unpublishes HTML websites, landing pages, reports and proposals, with hosted images, draf…
Orisu
Creates image, video, and advertising workflows with brand kits and shareable outputs.
lamina
Generates on-brand product photos, model try-ons, video reels, and banners from briefs and brand kits.
Meepo Studio
Enables creating designs, social carousels, videos, and marketing campaigns from an AI agent.
Bloopo — AI Ad & Creative Studio
Creates advertising assets including video ads, UGC, product images, voiceovers, brand kits, and A/B variants.
Morphed
Creates AI-generated images and videos while managing projects, credits, and campaign context.
Hermoso
Supports ad research, competitor analysis, video and static ad creation, campaign policy checks, content publishing, and performa…