Skip to main content
Glama

Generate a thumbnail

generate_thumbnail

Costs the image model's price, charged only after confirm_cents matches the quote: makes one thumbnail-shaped image and saves it to your Library.

Args: prompt: 1-4000 chars. aspect: 16:9 (YouTube) or 9:16. model: an image model id from list_models (optional). reference_library_ids: up to 3 image ids from library_list (kind image). confirm_cents: the price the user agreed to (from tool_cost_estimate); 0 with quote_only. idempotency_key: unique per purchase; a retry with the same key never buys twice. Idempotency is keyed on (this token, this tool, idempotency_key), not on the arguments: reusing an idempotency_key with different arguments returns the first result. quote_only: true returns the price and buys nothing.

Returns: {ok, kind:'image', library_id, model, cents}

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": {
      "prompt": "<prompt>",
      "aspect": "<aspect>",
      "confirm_cents": "<confirm_cents>"
    },
    "name": "generate_thumbnail"
  }
}

Input Schema

NameRequiredDescriptionDefault
modelNo
aspectYes
promptYes
quote_onlyNotrue: return the price and buy nothing.
confirm_centsYesThe price in cents the user agreed to, from tool_cost_estimate or a quote_only call. Pass 0 with quote_only.
idempotency_keyNoAny unique string per purchase; a retry with the same key never buys twice.
reference_library_idsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only declare readOnly=false and destructive=false, so the description carries the real weight and does: it discloses that the call is charged, that the charge only clears when confirm_cents matches the quote, and that quote_only buys nothing. The idempotency nuance — keyed on (token, tool, key) rather than arguments, so reusing a key with different args returns the first result — is exactly the kind of behavior an agent cannot get anywhere else.

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?

Cost and confirmation behavior is front-loaded in the first sentence, then Args and Returns are laid out in a scannable block. It is longer than the average definition, but nearly every line carries information an agent needs to avoid a bad purchase.

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?

For a paid, non-idempotent-by-default mutation with no output schema, the definition covers the pricing contract, the retry contract, the dry-run mode, and the return shape (ok, kind, library_id, model, cents). Nothing essential to a correct call is left out.

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

Parameters5/5

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

Schema coverage is only 43%, so the description has to compensate and does, documenting every argument including aspect values, the reference_library_ids limit and source, and confirm_cents semantics. It also adds meaning the schema lacks, notably that idempotency is not argument-dependent.

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 uses a specific verb and resource ('makes one thumbnail-shaped image and saves it to your Library'), which tells an agent exactly what the tool produces and where the artifact lands. The thumbnail framing implicitly separates it from generate_image, though it never names that sibling explicitly.

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?

It lays out the purchase flow clearly: get a price from tool_cost_estimate or a quote_only call, then pass that number as confirm_cents. What's missing is explicit routing guidance against generate_image or other generators, so an agent choosing between image tools still has to infer.

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