createBrandKit
Create a per-org BRAND KIT so Stable Baseline outputs come out fully on-brand. Upload your branding and it is auto-applied: pass a logoUrl (as little as your logo, and the vision model AUTO-EXTRACTS your palette and fonts), or an officeUrl (an existing .pptx/.docx, from which it extracts theme co...
This record as markdown: /tools/io-stablebaseline-sb/createbrandkit.md
What createBrandKit does on Stable Baseline
AI agents use createBrandKit to create or update resources in Stable Baseline, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Stable Baseline environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Display name (e.g. the brand/company name). |
tokens | object | — | Explicit DTCG brand tokens { color:{brand:{primary,primaryText,ink,bg,surface,muted,border,positive,warning,negative,accentHover?,accentActive?}}, font:{heading |
logoUrl | string | — | Image URL of the logo to extract palette/fonts from (PNG/JPG/SVG). Omit if passing officeUrl or tokens. |
guidance | string | — | Optional extra guidance for the extractor (e.g. 'use the teal, not the grey'). |
officeUrl | string | — | URL of an existing .pptx or .docx to extract the brand from (theme colours + fonts + logo + watermark + embedded fonts). Max 25MB. Omit if passing logoUrl or to |
organizationId | string | Yes | Org that owns the kit. |
setDefaultScope | string | — | Optionally set the new kit as default at this scope. |
setDefaultScopeId | string | — | Workspace/project id when setDefaultScope is workspace/project. |
Parameters from the server's own tool schema.
Why createBrandKit is rated Medium
An AI agent can call createBrandKit faster than any human can review: one bad instruction and it creates or modifies resources in Stable Baseline by the hundred, each call as confident as the last.
Attacks that exploit this kind of access
The rule that runs createBrandKit 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 createBrandKit, this is the rule to start with:
createBrandKit stays usable, but capped: an agent stuck in a loop can't make hundreds of changes 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 createBrandKit call is checked against it from then on.
Questions about createBrandKit
Create a per-org BRAND KIT so Stable Baseline outputs come out fully on-brand. Upload your branding and it is auto-applied: pass a logoUrl (as little as your logo, and the vision model AUTO-EXTRACTS your palette and fonts), or an officeUrl (an existing .pptx/.docx, from which it extracts theme colours, fonts, logo, watermark and the embedded font files), or explicit tokens. The kit themes branded-executive slides AND document exports (PDF, Word, PowerPoint). Auth: can_admin_org. The plan sets how many kits an organisation can have; at that limit the call is refused and says so. Optionally set it as the default at a scope in one call. It is categorised as a Write tool in the Stable Baseline MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
createBrandKit accepts 8 parameters: name, tokens, logoUrl, guidance, officeUrl, organizationId, setDefaultScope, setDefaultScopeId. Required: name, organizationId. 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 createBrandKit: 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.
createBrandKit is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the createBrandKit 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 createBrandKit. 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.
createBrandKit 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.
This server
Across the catalogue