Skip to main content
Glama

Render slides

slide_render
Read-only

Renders slides to PNG images via headless Chromium so you can visually inspect each slide for overflow, contrast, crowding, alignment and empty space after every round of edits.

Instructions

Pictures of slides as PNG images, exactly as the deck draws them (headless Chromium on the deck's own dev server, kept running between calls). Use it after every round of edits and LOOK: overflow, contrast, crowding, alignment, empty space. Each slide is drawn as a still with every click revealed. Needs the deck's dependencies installed and Playwright + Chromium (the error says how).

Input Schema

NameRequiredDescriptionDefault
dirNoDeck folder (contains deck.mdx). Absolute, or relative to the server's folder. Default: the server's folder.
themeNoA theme the deck ships (minimal, rla, stack…).
widthNoPicture width in px (default 1280).
schemeNoColour scheme (default light).
slidesNoWhich slides (default: all, up to 12). Hidden slides are not drawn. "credits" draws the credits slide `credits: true` adds.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.11.0
    • changedInput schema / properties / slides / description
      Previous value: -"Which slides (default: all, up to 12). Hidden slides are not drawn."New value: +"Which slides (default: all, up to 12). Hidden slides are not drawn. \"credits\" draws the credits slide `credits: true` adds."
  2. First observedv0.4.6

TDQS

A4.1/5.0
Behavior5/5

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

With readOnlyHint and openWorldHint already declared, the description still contributes real context: the render happens in headless Chromium against the deck's own dev server that is kept running between calls, each slide is drawn as a still with all clicks revealed, and dependencies plus Playwright/Chromium must be installed with the error message explaining how. That is the kind of prerequisite and side-effect detail annotations cannot express.

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?

The output format leads, followed by when to use it and then environmental prerequisites - a sensible order. It is dense and slightly crammed into two long sentences, but no sentence is filler.

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 read-only render tool with full schema coverage and no output schema, the description covers prerequisites, rendering mechanism and output type. It leaves the exact return shape (paths, inline data, count limits beyond the 12-slide default) unstated, a modest gap.

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 coverage is 100%, so dir, theme, width, scheme and slides are all documented in structured form. The description adds only the behavioral note that hidden slides are not drawn and that rendered slides are stills with every click revealed, not parameter syntax or meaning. Baseline 3 applies.

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

Purpose4/5

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

The description states a concrete resource and output: PNG images of slides rendered exactly as the deck draws them, via headless Chromium on the deck's dev server. That distinguishes it from non-visual siblings like deck_outline or deck_check, though it never names deck_preview or deck_build, so the agent must infer the boundary.

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?

"Use it after every round of edits" gives a clear trigger, and the list of things to inspect (overflow, contrast, crowding, alignment, empty space) tells the agent why to call it. It stops short of naming when another tool is preferable, so there is no explicit alternative routing.

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