Skip to main content
Glama

AI Studio: generate image/video (async)

studio_generate

Generate AI images or videos with a model from list_studio_models — or apply a preset from list_studio_presets (then model_key and params default to the preset's, and prompt describes the {subject}). Image-to-video, edits and the image presets (list_studio_presets: needsImage) need a start image: give it with import_image (a link or base64 → start_upload_id), POST /api/v1/uploads, or start_generation_id (an image from an earlier generation). Costs the model's price × count (check with estimate_credits, action=studio); failed generations are refunded. Returns generation ids immediately; poll get_generation until status is complete.

Input Schema

NameRequiredDescriptionDefault
countNoNumber of variations (image models only, 1–4).
paramsNoModel params by key (duration, resolution, aspect_ratio, audio, seed…), see list_studio_models.
promptNoWhat to generate. With a preset: who/what the {subject} is (e.g. “a young singer in a red dress”).
model_keyNoModel key from list_studio_models (optional with preset_id).
preset_idNoPreset id from list_studio_presets.
end_upload_idNoEnd frame upload id (models that support it).
preset_valuesNoValues for other template placeholders, e.g. {"outfit": "a gold suit"}.
idempotency_keyNoOptional unique key (e.g. a uuid) — repeating the same call with the same key within 24 h returns the first result instead of charging again.
negative_promptNoWhat to avoid (models that support it).
start_upload_idNoStart frame / source image upload id (import_image or POST /api/v1/uploads).
start_generation_idNoInstead of start_upload_id: id of an earlier generation whose first output is the start frame / source image.
reference_upload_idsNoReference image upload ids.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / reference_upload_ids / items / description
      Previous value: -"Id of a file uploaded with POST /api/v1/uploads."New value: +"Id of a file uploaded with POST /api/v1/uploads, or of an image given to import_image."
    • addedInput schema / properties / start_generation_id
      Added value: +{
      +  "description": "Instead of start_upload_id: id of an earlier generation whose first output is the start frame / source image.",
      +  "format": "uuid",
      +  "type": "string"
      +}
    • changedInput schema / properties / start_upload_id / description
      Previous value: -"Start frame / source image upload id."New value: +"Start frame / source image upload id (import_image or POST /api/v1/uploads)."
  2. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations declare a non-read-only, non-idempotent, non-destructive call, and the description goes well beyond them by disclosing cost semantics (price × count, verifiable via estimate_credits), refunds on failure, and the async contract (returns ids immediately, poll get_generation). The idempotency_key note is stated as an opt-in dedupe mechanism rather than a claim of inherent idempotency, so it does not contradict idempotentHint=false, though the interaction could be spelled out more clearly.

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?

Four dense sentences, front-loaded with the core purpose, then branching, then prerequisites, then cost and async behavior. Every sentence carries information, though the preset parenthetical and the start-image enumeration make it heavier than strictly needed for fast scanning.

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 no output schema, the description correctly explains the return contract (generation ids returned immediately, completion via get_generation polling). Combined with cost, refund, and input-source coverage, an agent has everything needed to call this 12-parameter, zero-required tool correctly on the first attempt.

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, but the description adds meaning the schema does not: that model_key and params default to the preset's values when preset_id is supplied, and that prompt becomes the {subject} filler under a preset. It does not clarify edge cases like the relationship between start_upload_id, start_generation_id, and reference_upload_ids beyond the schema text.

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 resource (generate AI images or videos) plus the async nature in the title. It names the exact sibling tools (list_studio_models, list_studio_presets) that supply inputs, so an agent can distinguish this from create_cover, generate_clips, or create_short 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?

Explicitly routes between two paths (model vs preset) and states the condition for each. It also specifies when a start image is required (image-to-video, edits, image presets needing needsImage) and enumerates the three acceptable sources, including the alternative tool import_image. Nothing is left to inference.

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