Skip to main content
Glama

Build an animated story page

story
Idempotent

Generates an animated HTML page from a JSON view-definition file whose views focus, dim, highlight, or reveal parts of one figure, overwriting the specified output page.

Instructions

Present one figure as a story: a story file lists views that focus, dim, highlight and reveal parts of it, and one HTML page animates between them. Writes OUT.html and returns JSON with ok, the path and the views; overwrites an existing page. describe story shows the story file's shape. For a plain figure use render.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "story": "<story>",
      "out": "<out>"
    },
    "name": "story"
  }
}

Input Schema

NameRequiredDescriptionDefault
outYesThe page to write, ending .html.
storyYesPath of the story file (JSON).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.9.1

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false and idempotentHint=true, but the description adds materially: it writes OUT.html, it overwrites an existing page, and it returns JSON containing ok, the path, and the views. That overwrite disclosure is exactly the kind of side effect an agent needs and is not in the annotations (it sits in mild tension with destructiveHint=false, though regenerating a derived page is plausibly why idempotentHint was set). It does not cover failure modes, such as what happens when the story file is malformed, which is why this is a 4 rather than 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?

It is three tight sentences with no filler, front-loading what a story is before the write side effects and then the disambiguation. The middle sentence packs several facts (write, return shape, overwrite) but each earns its place; only the dense clause listing view types is slightly heavy for the space it gets.

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?

With only two fully documented parameters and no output schema, the description covers everything an agent needs: inputs' meaning, the write target, the overwrite behavior, and the shape of the returned JSON (ok, path, views). It also points to 'describe story' for the one thing it deliberately omits — the story file's structure — so nothing is left silently missing.

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 would be 3, but the description earns above baseline by explaining what the 'story' parameter actually contains — a file listing views that focus, dim, highlight, and reveal parts of the figure — which the schema only calls 'Path of the story file (JSON)'. It also clarifies that 'out' is an animated page rather than an arbitrary file, supplementing the schema's '.html' note.

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?

The description names a specific verb and resource — 'Present one figure as a story' — and immediately explains the mechanism: a story file of views plus one HTML page that animates between them. It also distinguishes itself from two siblings by name ('describe story shows the story file's shape', 'For a plain figure use render'), so an agent can route without opening any schema.

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?

It states the selection condition positively (present one figure as an animated story) and names the alternative for the other case ('For a plain figure use render'). It also routes metadata questions to 'describe story' rather than inviting the agent to guess the story file format.

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

Deploy Server

Other Tools