designDeckInWhiteboard
Create or refine a slide deck INSIDE an existing whiteboard by conversing with the AI design agent. Send a brief for a NEW deck, a change to an EXISTING one, or an answer to the agent's question. The agent builds a polished, on-brand deck and places it on the board; if the brief is ambiguous it a...
This record as markdown: /tools/io-stablebaseline-sb/designdeckinwhiteboard.md
What designDeckInWhiteboard does on Stable Baseline
AI agents invoke designDeckInWhiteboard to trigger actions in Stable Baseline. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.
| Parameter | Type | Required | Description |
|---|---|---|---|
kind | string | — | Which kind of design. 'deck' (default) = the premium on-brand HTML deck (conversational, build + edit); 'illustration' and 'design' are conversational variants. |
title | string | — | Optional title. If omitted, a clear one is derived from the brief. |
deckId | string | — | Optional. An existing deck to continue designing (usually you pass sessionId instead; when both are given the session's deck wins). |
confirm | boolean | — | Set true ONLY after the user has approved the quoted cost, and send quoteToken with it. Leave unset/false on the first call of a turn to receive the quote: the |
message | string | Yes | This turn's message in plain language: the design brief on the first turn, an edit instruction later, or the user's ANSWER to a clarifying question the agent as |
sessionId | string | — | The design conversation to continue, as returned by an earlier designDeckInWhiteboard call. Pass it together with message to answer a question, make an edit, or |
brandKitId | string | — | Optional brand kit id (from listBrandKits) to theme the deck. If omitted, the organisation's effective brand is used. |
documentId | string | Yes | The whiteboard the deck lives in. REQUIRED: a deck cannot exist without a whiteboard, and this is that whiteboard's id. If you do not already have a whiteboard |
imageCount | number | — | Deprecated and ignored. Still accepted so existing callers do not break; passing it changes nothing. |
quoteToken | string | — | The quoteToken returned by this turn's call without confirm. Required with confirm: true. It works once, within 10 minutes, and only for the exact turn it quote |
slideCount | number | — | The number of slides to build — a hard requirement: the deck is built with exactly this many slides. SET THIS whenever the user states or implies a count, EXACT |
attachments | array | — | Optional reference images for THIS turn (up to 8; images only). The agent lifts palette, layout, and tone from them (it does not pixel-copy). Non-image attachme |
Parameters from the server's own tool schema.
Why designDeckInWhiteboard is rated High
designDeckInWhiteboard triggers real processes with real consequences. An agent gone sideways doesn't fire it once. It starts dozens of builds, sends mass notifications, or burns through compute before anyone looks up.
Risk signalsAccepts URL/endpoint input (attachments[].url) · High parameter count (19 properties)
Attacks that exploit this kind of access
The rule that runs designDeckInWhiteboard safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Stable Baseline, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For designDeckInWhiteboard, this is the rule to start with:
designDeckInWhiteboard stays usable, but rate-capped: a runaway agent can't fire it dozens of times a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Stable Baseline, apply this rule, and every designDeckInWhiteboard call is checked against it from then on.
Questions about designDeckInWhiteboard
Create or refine a slide deck INSIDE an existing whiteboard by conversing with the AI design agent. Send a brief for a NEW deck, a change to an EXISTING one, or an answer to the agent's question. The agent builds a polished, on-brand deck and places it on the board; if the brief is ambiguous it asks ONE clarifying question (answer with the same sessionId). Returns immediately; poll getDeckReplyInWhiteboard for the result. Use for building or editing slide decks / presentations. WHITEBOARD IS REQUIRED: a deck always lives inside a whiteboard, so documentId (the whiteboard's id) is required. If you do NOT already have a whiteboard id, ASK THE USER which whiteboard they want the deck designed in — do NOT create a whiteboard automatically. Only call createWhiteboard first if the user explicitly asks for a brand-new board; otherwise use the id of the whiteboard they name. FIRST vs FOLLOW-UP: the first call (from nothing) builds; a follow-up call (an answer, a change, or a new instruction) passes the sessionId (or the deckId) plus the new message. kind:'deck' (default) is the premium on-brand HTML deck; kind:'express' builds the native, deterministic branded-executive deck directly on the whiteboard (faster, lower fidelity, one-shot, not conversational). COST + APPROVAL: a build costs 52 credits per 30 slides (1 to 30 slides is 52, 31 to 60 is 104, and so on, with the second and later blocks charged once the deck is built and never charged twice for the same block), an edit costs a flat 36, and a clarifying question is FREE. It can also generate imagery for the deck where the design calls for it. ADVANCED DECK BUILDING (optional, OFF by default): set advancedDeckBuilding:true to build the deck over several rounds of redraft and review by a panel of design, brand, accessibility and copy reviewers instead of one composer pass. It usually raises design quality, but it is not a guarantee. It is much slower and it costs more: a standard build takes roughly 2 to 8 minutes, advanced deck building takes roughly 15 to 20 minutes, and it adds 61 credits per depth level on top of the turn fee (advancedDeckBuildingDepth is 1 to 3, default 3, so +183 credits, making a 52-credit build cost 235). Only turn it on when the user asks for the highest quality and accepts the wait and the cost. Call FIRST without confirm: it returns the exact cost, the workspace balance and a single-use quoteToken, and charges nothing. Show the cost to the user, and only if they agree call again with the same arguments plus confirm:true and that quoteToken (it works once, for 10 minutes; a changed request gets a fresh quote and nothing is charged). The fee is auto-refunded if a turn produces no change or fails. Returns sessionId (the conversation), deckId (the deck), status, turnType, started, awaitingUser, needsConfirmation, insufficientCredits, on a quote also quote (cost and balance), quoteToken and howToConfirm, slideCount (the target the conversation now carries) and slideCountClamped (always false; nothing reduces a slide count), advancedDeckBuilding (whether advanced deck building is on for this conversation), advancedDeckBuildingStatus, and assistantMessage. Export the finished deck with exportFromWhiteboard. It is categorised as a Execute tool in the Stable Baseline MCP Server, which means it can trigger actions or run processes. Use rate limits and argument validation.
designDeckInWhiteboard accepts 12 parameters: kind, title, deckId, confirm, message, sessionId, brandKitId, documentId, imageCount, quoteToken, slideCount, attachments. Required: message, documentId. The full parameter table on this page comes from the server's own tool schema.
Register the Stable Baseline MCP server in PolicyLayer and add a rule for designDeckInWhiteboard: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Stable Baseline. Nothing to install.
designDeckInWhiteboard is a Execute tool with high risk. Execute tools should be rate-limited and have argument validation enabled.
Yes. Add a rate_limit block to the designDeckInWhiteboard rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for designDeckInWhiteboard. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
designDeckInWhiteboard is provided by the Stable Baseline MCP server (https://api.stablebaseline.io/functions/v1/cloud-serve/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Stable Baseline, and thousands of servers like it.
Across the catalogue