Skip to main content
Glama

Export PPTX

export_pptx

Turn a deck into a downloadable .pptx file. Requests like "make it a PowerPoint", "PPT로 뽑아줘", or "export this deck" mean this tool. Takes the layout ids and the text for each slot, and returns a signed download link. Coordinates come from our measurements, so the file matches what the gallery shows, but the boxes are fixed, so text longer than slots[].max_chars will be clipped.

Input Schema

NameRequiredDescriptionDefault
themeNoTheme id. Only measured themes work; omit to use the default. A My Theme id ("custom:...") from list_themes also works: its base theme's layout with the user's colors.
slidesNoUp to 25 slides, in order. Required unless template_id is given.
embed_fontsNoPut the fonts inside the file so it looks the same where they are not installed. On by default; pass false to leave them out. The result lists fonts that could not be embedded.
template_idNoA saved template id from list_templates. Exports that template with its own theme and slides; theme and slides are then ignored. Errors for it: not_found, template_lookup_failed.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / embed_fonts / description
      Previous value: -"Put the fonts inside the file so it looks the same where they are not installed. Off unless set. The result lists fonts that could not be embedded."New value: +"Put the fonts inside the file so it looks the same where they are not installed. On by default; pass false to leave them out. The result lists fonts that could not be embedded."
  2. Changed5 schema fields changed
    • addedInput schema / properties / embed_fonts
      Added value: +{
      +  "description": "Put the fonts inside the file so it looks the same where they are not installed. Off unless set. The result lists fonts that could not be embedded.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / slides / description
      Previous value: -"Up to 25 slides, in order."New value: +"Up to 25 slides, in order. Required unless template_id is given."
    • addedInput schema / properties / template_id
      Added value: +{
      +  "description": "A saved template id from list_templates. Exports that template with its own theme and slides; theme and slides are then ignored. Errors for it: not_found, template_lookup_failed.",
      +  "type": "string"
      +}
    • changedInput schema / properties / theme / description
      Previous value: -"Theme id. Only measured themes work; omit to use the default."New value: +"Theme id. Only measured themes work; omit to use the default. A My Theme id (\"custom:...\") from list_themes also works: its base theme's layout with the user's colors."
    • removedInput schema / required
      Removed value: -[
      -  "slides"
      -]
  3. Added

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it discloses the return value (a signed download link), the determinism guarantee (coordinates from our measurements, matching the gallery), and a real failure mode (text exceeding slots[].max_chars is clipped, not reflowed). It omits permissions, latency/async behavior and error surface, which are non-trivial for a file-generation call.

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

Conciseness5/5

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

Three sentences, front-loaded with the core action, then trigger phrases, then the hard constraint. No filler and no restatement of the title; the clipping warning is placed where an agent will see it before building arguments.

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

Completeness4/5

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

For a 4-parameter, no-output-schema, no-annotation export tool, the description covers what is produced, how fidelity is guaranteed, and the main correctness trap. Gaps are the operational envelope: no mention of whether export is synchronous or how the signed link expires, and no error guidance beyond what the schema lists for template_id.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description earns one above that by stating the operational consequence of slots text length (silent clipping at max_chars) and by explaining that layout ids plus per-slot text are the core input pair. The theme/template_id override relationship is left to the schema to explain.

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 and artifact: 'Turn a deck into a downloadable .pptx file', then reinforces it with real user phrasings ("make it a PowerPoint", "PPT로 뽑아줘"). No sibling tool in the list performs export, so there is no ambiguity to resolve, and the agent can select it from the description alone.

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

Usage Guidelines4/5

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

Gives concrete triggering utterances, which is stronger than most definitions and directly useful for intent routing. It stops short of explicit exclusions or prerequisites (e.g. that this is the terminal step after get_layout/list_themes, or that template_id bypasses the slides path), so the 'when not to use' side is left implicit.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources