Skip to main content
Glama

Generate a sheet of elements

generate_sheet

Makes ONE image holding several separate elements laid out so each can be cut out: an animation cycle, a sprite sheet, an icon set, stickers, props. COSTS CREDITS: one image at the planned tier; quote with dry_run:true first, free. The asserted count, the keyable ground, no lines or labels, a grid whose cells cut cleanly and cells big enough to use are all built here, so never write this prompt yourself and never call generate_image for a sheet. Pick by job:

  • An animation of one subject (a walk, a face laughing, a coin spinning): kind frames + sequences from sheet_options ({family, type, id, level}; smooth = an in-between after every drawing, the default) + subject + art_style (photograph, film-still, studio-portrait, render-3d, stop-motion for a real subject; inked-cel, anime-cel, watercolour and the rest for a drawn one).

  • Pixel-art game sprites: kind sprites + sequences by game type. No art_style: pixel art is the style.

  • Icons, stickers, props: kind + items, one short description each. @slug in subject or entity_ids attach a saved entity's sheet (list_entities). get_sheet_atlas then gives frame rects and tags for any engine.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindYesframes = animation, any subject real or drawn; sprites = 8/16-bit pixel art; icons, stickers, props = matched sets.
itemsNoOne short description each, after any sequences.
modelNoDefault gemini-nano-banana-2.1 (Nano Banana 2.1). GPT stops at 2K.
styleNoYour own words about the look, joined after art_style.
groundNoThe value NOT in the artwork. Default black.
dry_runNoQuote only: nothing generated or charged.
per_rowNoOverride the planned columns.
subjectNoWho or what is in every frame. Without it every sheet invents someone.
art_styleNoA style id from sheet_options. Frames only.
sequencesNoFrom sheet_options, in order; several stack on one sheet.
style_idsNoPictures whose look to borrow (ids).
entity_idsNo
project_idNo
resolutionNoOverride the planned tier.
prompt_onlyNoFree: just the plan and prompt, for generate_image as given.
reference_idsNoSheets of the same thing to match; for frames, the subject to keep.
reference_noteNoWhat to take from the attached pictures, in your words.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / model / description
      Previous value: -"Default gemini-3.1-flash-image (Nano Banana 2). GPT stops at 2K."New value: +"Default gemini-nano-banana-2.1 (Nano Banana 2.1). GPT stops at 2K."
    • changedInput schema / properties / model / enum
      Previous value: -[
      -  "gemini-3.1-flash-image",
      -  "gemini-3-pro-image",
      -  "gpt-image-2.5-flare",
      -  "gpt-image-2.5-sunburst"
      -]New value: +[
      +  "gemini-nano-banana-2.1",
      +  "gemini-3-pro-image",
      +  "gpt-image-2.5-flare",
      +  "gpt-image-2.5-sunburst"
      +]
  2. Changed2 schema fields changed
    • addedInput schema / properties / prompt_only
      Added value: +{
      +  "description": "Free: just the plan and prompt, for generate_image as given.",
      +  "type": "boolean"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "project_id",
      -  "kind"
      -]New value: +[
      +  "kind"
      +]
  3. Changed1 schema field changed
    • addedInput schema / properties / entity_ids
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  4. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false/destructiveHint=false; the description adds the crucial cost behavior (consumes credits, tier-dependent), the free dry_run quote path, and the guarantees baked in (asserted count, keyable ground, no lines/labels, clean-cut grid). This is behavioral context well beyond the structured fields.

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 purpose and the cost warning, followed by a clearly structured job-selection guide. It is long, but for a 17-parameter tool nearly every clause carries actionable information; only minor tightening is possible.

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?

Covers the call lifecycle (quote → generate), dependencies, and per-kind usage for a complex schema with no output schema. Coverage of secondary params (project_id, model trade-offs) is thinner, but the agent has what it needs to invoke correctly.

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?

With 88% schema coverage the baseline is 3, but the description adds real semantic value: it explains the @slug syntax for subject/entity_ids, the level option semantics (smooth = an in-between, the default), art_style options for real vs drawn subjects, and that sequences come from sheet_options and stack on one sheet.

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+resource ('Makes ONE image holding several separate elements') and immediately names what it produces: animation cycles, sprite sheets, icon sets, stickers, props. It explicitly distinguishes itself from siblings by forbidding generate_image for a sheet and warning 'never write this prompt yourself'.

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?

Includes a dedicated 'Pick by job' section that maps each use case (animation, pixel-art sprites, icons/stickers/props) to the exact kind + sequences/items recipe. It also prescribes the cost-safe workflow ('quote with dry_run:true first, free') and names dependencies (sheet_options, get_sheet_atlas, list_entities).

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