Say goodbye to Figma MCP's read-only screenshots. Gigma is a cloud design tool built for AI agents — you get a real editable canvas with full MCP control. Create shapes, add text, insert images, arrange layers, preview with screenshots, and export high-res PNGs — all through natural conversation.
https://gigma.10xboost.org/mcp/t/xxxxx...). Treat it like a password — do not share it publicly.add_image) are fetched server-side to render on the canvas.Figma MCPGigmaCanvas controlRead-only screenshotsFull read/writeCreate elementsLimitedShapes, text, images, linesEdit elementsNoUpdate any propertyImage maskingNoCircle, ellipse, rounded rectExportScreenshot onlyPNG up to 3x (5760×3240)Batch designNoClone projects, loop & exportSetupComplex OAuthPaste MCP link, done
Setup guide: gigma-doc.10xboost.org
ToolDescriptionlist_projectsList all projects with metadatacreate_projectCreate new project (supports cloning from existing for templates)switch_projectSwitch active project
ToolDescriptionget_canvas_infoGet canvas dimensions, background color, element countset_canvasSet canvas width, height, background color
ToolDescriptionadd_elementAdd shapes (rect, circle), text, images, or lines with full stylingadd_imageInsert image with masking (circle, ellipse, roundedRect) and strokelist_elementsList all elements on canvasget_elementGet full properties of an elementupdate_elementModify any property of an existing elementdelete_elementRemove an elementdelete_all_elementsClear the entire canvas
ToolDescriptionreorder_layerMove element: front, back, forward, backwardselect_elementHighlight element in web editordeselect_allClear all selections
ToolDescriptionget_screenshotPreview canvas as base64 PNG (verify before export)export_canvasExport to Google Cloud Storage (PNG, 1x/2x/3x scale, 7-day URL)
text
create_project(name: "Instagram Post")
set_canvas(width: 1080, height: 1080, backgroundColor: "#1a1a2e")
Common canvas sizes:
FormatSizeInstagram Post1080×1080Instagram Story1080×1920Facebook Post1200×630YouTube Thumbnail1280×720LinkedIn Post1200×627Presentation Slide1920×1080
Add a background shape:
text
add_element(type: "rect", x: 0, y: 0, width: 1080, height: 1080, fillColor: "#4A90D9")
Add text:
text
add_element(type: "text", x: 100, y: 200, width: 880, height: 100, text: "Your Headline Here", fontSize: 64, fontWeight: "bold", fillColor: "#FFFFFF", textAlignment: "center")
Add an image with circular mask:
text
add_image(url: "https://example.com/photo.jpg", x: 400, y: 400, width: 280, height: 280, maskShape: "circle", strokeColor: "#FFD700", strokeWidth: 6)
Add decorative elements:
text
add_element(type: "circle", x: -100, y: -100, width: 400, height: 400, fillColor: "#16213e", opacity: 0.5)
Recommended stacking order (bottom to top):
text
reorder_layer(elementId: "<text_id>", action: "front")
Always verify before exporting:
text
get_screenshot()
This returns a base64 PNG — check layout, colors, and text positioning.
text
export_canvas(format: "png", scale: 2)
Scale options:
Returns a signed URL valid for 7 days.
Create multiple variations from a template:
text
create_project(name: "Quote Template")
set_canvas(width: 1080, height: 1080, backgroundColor: "#2C3E50")
add_element(type: "rect", ...) → save elementId as bg_id
add_element(type: "text", text: "Quote here", ...) → save as quote_id
add_element(type: "text", text: "— Author", ...) → save as author_id
For each variation:
text
update_element(elementId: bg_id, fillColor: "#new_color")
update_element(elementId: quote_id, text: "New quote text")
update_element(elementId: author_id, text: "— New Author")
export_canvas(format: "png", scale: 2)
Each export_canvas returns a unique signed URL — collect all for the user.
Pro tip: Use create_project(cloneFromId: "<template_id>") to clone a template project for non-destructive batch creation.
x, y, width, height, fillColor, strokeColor, strokeWidth, opacity, rotation
x, y, width, height, text, fontSize, fontWeight ("normal"/"bold"), textAlignment ("left"/"center"/"right"), fillColor, opacity, rotation
url/imageUrl, x, y, width, height, maskShape ("circle"/"ellipse"/"roundedRect"), strokeColor, strokeWidth, opacity, rotation
x, y, width, height, strokeColor, strokeWidth, opacity, rotation
get_screenshot after every 2-3 elements to catch issues earlyupdate_element instead of delete + addadd_element for later updates/deletesErrorSolutionToken validation failure (-32001)MCP link invalid — get a new one from gigma.10xboost.orgElement not foundUse list_elements to get current element IDsImage not loadingEnsure the image URL is publicly accessible (HTTPS)Export failedCheck canvas has elements; try get_screenshot first
Full docs: gigma-doc.10xboost.org