Skip to main content
Glama

Recommend slideshow page templates

recommend_slideshow_templates
Read-onlyIdempotent

Recommend curated slideshow templates per slide before creating a run, matching narrative role, density, and image needs to select templateId and avoid repeated layouts.

Instructions

Recommend curated template options for each slide in a slideshow before run creation based on narrative page contracts (role, density, image requirement). Demotes recently used layout families to prevent visual monotony and guarantees diversity across slides. Call immediately before create_slideshow_run to select templateId per slide. Alternatives: Use list_templates to browse raw catalog. Behavior: Read-only stateless layout intelligence query.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kNoNumber of template recommendations to return per page (2 to 5).
seedNoOptional deterministic randomization seed for layout family rotation.
pagesYesOrdered list of page contracts describing narrative role and slot requirements.
platformYesTarget platform: tiktok | linkedin | instagram | threads | xiaohongshu
canvasPresetNoTarget aspect ratio preset (e.g. 9:16, 4:5, 1:1, 3:4).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
gapsNoPages requiring more templates.
recommendationsNoRanked template recommendations per page.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.1.17
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "gaps": {
      +      "description": "Pages requiring more templates.",
      +      "type": "array"
      +    },
      +    "recommendations": {
      +      "description": "Ranked template recommendations per page.",
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed9 schema fields changedv0.1.16
    • addedInput schema / properties / canvasPreset / description
      Added value: +"Target aspect ratio preset (e.g. 9:16, 4:5, 1:1, 3:4)."
    • addedInput schema / properties / k / description
      Added value: +"Number of template recommendations to return per page (2 to 5)."
    • addedInput schema / properties / pages / description
      Added value: +"Ordered list of page contracts describing narrative role and slot requirements."
    • addedInput schema / properties / pages / items / properties / density / description
      Added value: +"Content density: sparse | normal | dense"
    • addedInput schema / properties / pages / items / properties / requiresImage / description
      Added value: +"Whether this page must have an image slot."
    • addedInput schema / properties / pages / items / properties / role / description
      Added value: +"Narrative role: hook | value | rehook | cta"
    • addedInput schema / properties / pages / items / properties / slotSummary / description
      Added value: +"Slot keys expected on this page."
    • addedInput schema / properties / platform / description
      Added value: +"Target platform: tiktok | linkedin | instagram | threads | xiaohongshu"
    • addedInput schema / properties / seed / description
      Added value: +"Optional deterministic randomization seed for layout family rotation."
  3. First observedv0.1.13

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive/closed-world, and the description reinforces this as a 'read-only stateless' query. It goes further by disclosing non-obvious behavior: recent layout families are demoted to avoid visual monotony, and diversity across slides is guaranteed. Minor overlap with annotations in the closing line keeps it from a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and the sequencing instruction, then alternatives, then behavior. Every sentence carries weight, though the closing 'Behavior: Read-only stateless layout intelligence query' is partly redundant with the annotations.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, timing relative to create_slideshow_run, alternatives, and behavioral guarantees; with an output schema present, return-value explanation is unnecessary. An agent has everything needed to invoke it correctly in the workflow.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and an output schema exists, so the schema already documents k, seed, platform, canvasPreset, and the page contract fields. The description only paraphrases the contract concepts ('role, density, image requirement') without adding format or constraint detail beyond the schema, matching the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (recommend) and resource (curated template options per slideshow slide) plus the basis for the recommendation (narrative page contracts: role, density, image requirement). It is clearly distinguishable from siblings like list_templates or get_template, which only expose the raw catalog.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit trigger ('Call immediately before create_slideshow_run to select templateId per slide') and names the alternative with its own use case ('Use list_templates to browse raw catalog'). When-to-use and when-to-use-something-else are both covered.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.