Configured tool · write
create_slideshow
Render carousel slides on the workspace brand kit from words and images, and store each slide as image media.
Human and agent roles
Configured boundary
Configured workspace
The agent never designs: it picks a template per slide and supplies the words and an optional photo. Postdom draws every slide with the workspace's colours, fonts and logo. Nothing is published here; the returned media ids go to publish_video.
This reference describes a connection made with @postdom/mcp@0.4.0 and a workspace-scoped agent key created in Accounts.
Callable schema
Input fields
Field names match the configured tool schema. Runtime-only constraints are labeled separately from schema validation.
sizeRequired4:5 | 9:16 | 1:14:5 or 1:1 for feed carousels; 9:16 for full-screen photo carousels.
slidesRequiredslide[]In order. Each names a template: cover, text_image, list, quote or end_card.
slides[].headline · kicker · body · title · items · quote · attribution · cta · handleOptionalstring · string[]cover: headline, kicker?; text_image: headline, body; list: items (3 to 5), title?; quote: quote, attribution; end_card: cta, handle.
slides[].image_media_idOptionalmedia handleThe photo behind a cover or inside a text_image card. Postdom crops it to the slot.
idempotency_keyOptionalstringKeep one key for every retry of the same slides; a retry answers the first render.
Synthetic values
Example call
Identifiers and values are examples. They do not represent a connected workspace or accepted media source.
create_slideshow({
size: "4:5",
slides: [
{ template: "cover", kicker: "Guide", headline: "Three ways to plan a calmer week", image_media_id: "pd_media_..." },
{ template: "list", items: ["Batch your meetings", "Protect one deep-work block", "End Friday with a review"] },
{ template: "end_card", cta: "Save this for Monday", handle: "@yourbrand" }
]
})Observed API record
Return shape
Returns the rendered slides in order, or every field that did not fit.
slideshow_id · statusidentity · state- ready, refused, or rendering when the render outlasted the wait.
media_idsstring[]- Image media handles in slide order, for publish_video media[].media_handle.
kit_versioninteger | null- The brand kit version the slides were drawn with.
media[].template_id · preview_urlstring- The template each slide used, and a short-lived link to look at it.
notesarray- Adjustments the renderer made, such as a colour darkened for contrast.
refusalsarray- When refused: every slide and field that did not fit, with a character hint. Nothing was stored.
Stop conditions
Agent handoff
readyPublish the slides
Pass media_ids in order to publish_video media[], or to a plan.
refusedShorten and retry
Shorten every field named in refusals, then call again with all the slides.
renderingCall again
Repeat the same call with the same idempotency_key to wait for the same slides.