Templates
Your AI assistant uses these tools to discover and apply your brand templates — pre-configured layouts, colors, and fonts that keep every presentation on-brand.
Templates are imported from PowerPoint files (.potx / .potm) and contain one or more layouts — predefined slide structures with placeholders for titles, body text, images, and decorative elements. When your assistant creates slides using a template, it automatically applies the template's colors, fonts, and positioning.
For a step-by-step guide on importing and using templates, see How Do I Use Brand Templates?
Listing Your Templates
When you ask to “use my corporate template” or your assistant is about to create a new presentation, it first calls slides_list_templates to see what templates you have available. This is a required step before creating any new deck — your assistant checks for brand templates so it can use them instead of starting from scratch.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | number | No | Maximum templates to return (1–100, default 20) |
offset | number | No | Number of templates to skip for pagination (default 0) |
What It Returns
total— total number of templates you havetemplates— array of template summaries (id, name, layoutCount, primaryColor, updatedAt)hasMore— whether more templates are available beyond the current page
Example
slides_list_templates({ limit: 10 })
// Response:
// {
// total: 2,
// hasMore: false,
// templates: [
// { id: "template_abc", name: "Corporate Blue",
// layoutCount: 5, primaryColor: "#0066CC",
// updatedAt: 1706000000000 },
// { id: "template_def", name: "Marketing Deck",
// layoutCount: 8, primaryColor: "#E33737",
// updatedAt: 1705900000000 }
// ]
// }Browsing Template Layouts
Once your assistant has selected a template, it calls slides_list_template_layouts to see what layouts are available. Each layout is a predefined slide structure — like “Title Slide,” “Content,” or “Two Column” — with specific placeholders and background styling.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
templateId | string | Yes | The template to list layouts for |
What It Returns
templateName— name of the templatelayouts— array of layout summaries, each with:id,name,order— layout identity and sort positionisDefault— whether this is the default layoutplaceholderCount,placeholderTypes— how many placeholders and what types (title, body, subtitle)backgroundColor— the layout's background color
Example
slides_list_template_layouts({
templateId: "template_abc"
})
// Response:
// {
// templateId: "template_abc",
// templateName: "Corporate Blue",
// layouts: [
// { id: "layout_001", name: "Title Slide",
// order: 0, isDefault: true,
// placeholderCount: 2,
// placeholderTypes: ["title", "subtitle"],
// backgroundColor: "#FFFFFF" },
// { id: "layout_002", name: "Content",
// order: 1, isDefault: false,
// placeholderCount: 2,
// placeholderTypes: ["title", "body"],
// backgroundColor: "#FFFFFF" },
// { id: "layout_003", name: "Two Column",
// order: 2, isDefault: false,
// placeholderCount: 3,
// placeholderTypes: ["title", "body", "body"],
// backgroundColor: "#FFFFFF" }
// ]
// }Inspecting a Layout
To understand exactly what a layout contains before using it, your assistant calls slides_get_template_layout. This returns the full structural detail: every placeholder with its position, size, and text style; every decorative object (shapes, accent bars); and any background images.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
templateId | string | Yes | The parent template ID |
layoutId | string | Yes | The specific layout to inspect |
What It Returns
A detailed breakdown of the layout, including:
- Layout info — name, order, whether it's the default, background color
- Placeholders — each placeholder's type (title, body, subtitle), position, size, font, color, alignment, and default text
- Decorative objects — shapes, accent bars, and other non-placeholder elements with their positions, colors, and styles
- Images — background or decorative images with positions and dimensions
Example
slides_get_template_layout({
templateId: "template_abc",
layoutId: "layout_001"
})
// Response (formatted markdown):
//
// ## Layout: "Title Slide"
//
// Template: Corporate Blue
// ID: layout_001
// Order: 0 (default layout)
// Background: #FFFFFF
//
// ### Placeholders
//
// 1. **title**
// Position: (60, 200) — Size: 1160 × 120
// Style: font: Inter, size: 44pt,
// color: #1C2833, align: center
//
// 2. **subtitle**
// Position: (60, 340) — Size: 1160 × 80
// Style: font: Inter, size: 24pt,
// color: #666666, align: center
//
// ### Decorative Objects
//
// 1. **AccentBar** (rectangle)
// Position: (0, 0) — Size: 1280 × 16
// Style: fill: #0066CC, opacity: 100%Updating a Layout Description
After inspecting a layout, your assistant can save a description that helps it (and other AI assistants) pick the right layout in the future. slides_update_template_layout updates the layout's name and/or description. Your assistant will always ask for confirmation before saving.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
templateId | string | Yes | The parent template ID |
layoutId | string | Yes | The layout to update |
name | string | No* | New layout name (1–200 characters) |
layoutDescription | string | No* | Free-text description for when and how to use this layout (max 2000 characters) |
* At least one of name or layoutDescription must be provided.
What It Returns
success— whether the update succeededupdatedFields— list of field names that were changed
Example
slides_update_template_layout({
templateId: "template_abc",
layoutId: "layout_003",
layoutDescription: "Two-column comparison layout. Use for side-by-side content like pros/cons, before/after, or feature comparisons. Title spans full width at top."
})
// Response:
// {
// success: true,
// layoutId: "layout_003",
// templateId: "template_abc",
// updatedFields: ["layoutDescription"]
// }Using Templates When Creating Slides
Once your assistant knows which template and layouts to use, it passes them to slides_bulk_create with a templateId and layout IDs for each slide. The template's theme (fonts, colors) is applied automatically, and placeholder content is filled in from your request.
Example
// Create a deck using template layouts
slides_bulk_create({
name: "Q4 Review",
templateId: "template_abc",
slides: [
{
layoutId: "layout_001",
title: "Q4 Business Review",
subtitle: "January 2026"
},
{
layoutId: "layout_002",
title: "Revenue Highlights",
body: "- Total revenue: **$4.2M**\n- Growth: +18% QoQ"
}
]
})Which Tool Will My Assistant Use?
Your AI assistant picks the right tool based on what you ask:
- “Do I have any templates?” →
slides_list_templatesto list available templates - “What layouts does my corporate template have?” →
slides_list_template_layoutsto browse layouts - “Show me what the title slide looks like” →
slides_get_template_layoutto inspect placeholder positions and styles - “Create a pitch deck using my brand template” →
slides_list_templates→slides_list_template_layouts→slides_bulk_createwith the template - “Add a description to this layout” →
slides_update_template_layoutto save a helpful description
Related
- How Do I Use Brand Templates? — Step-by-step guide to importing and using templates
- Deck Operations — Create presentations using template layouts via slides_bulk_create
- Layouts — Built-in and template layouts for slide creation
- Fonts — Discover available fonts including those from templates
- Export to PowerPoint — Template-based decks export with full brand fidelity