Skip to main content
Glama

Get rendered images

get_batch_outputs
Read-onlyIdempotent

Returns the download URLs of a batch's rendered images, one page of jobs at a time (page from 1, up to 20 jobs a page; a page past the end is empty), with each job's status and format; downloadUrl is null until that job has rendered. URLs are temporary, so a later call returns fresh ones. Row values and render errors are not included (get_batch_jobs has them), and get_batch is lighter for checking progress. inspect_image can view a downloadUrl. Needs batches:read, renders:read, and creatives:read.

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": {
      "batchId": "<batchId>"
    },
    "name": "get_batch_outputs"
  }
}

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, starting at 1
limitNoResults per page (default 10); values above 20 are capped at 20
batchIdYesBatch ID returned by create_batch or list_batches

Output Schema

NameRequiredDescriptionDefault
pageYes
itemsYes
limitYesPage size actually applied

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / items / items / properties / flowId / anyOf
      Previous value: -[
      -  {
      -    "format": "uuid",
      -    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed2 schema fields changed
    • addedOutput schema / properties / items / items / properties / flowId
      Added value: +{
      +  "anyOf": [
      +    {
      +      "format": "uuid",
      +      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "The flow this job renders as a video, if any"
      +}
    • changedOutput schema / properties / items / items / properties / rowIndex / description
      Previous value: -"The job's row in the batch, from 0, in the order rows were given"New value: +"The job's row in the batch, from 0, in the order rows were given. One row's jobs across pages or flows share it"
  3. Changed8 schema fields changed
    • removedInput schema / additionalProperties
      Removed value: -false
    • addedInput schema / properties / batchId / pattern
      Added value: +"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$"
    • addedInput schema / properties / limit / maximum
      Added value: +9007199254740991
    • addedInput schema / properties / page / maximum
      Added value: +9007199254740991
    • addedOutput schema / properties / items / items / properties / id / pattern
      Added value: +"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$"
    • addedOutput schema / properties / items / items / properties / rowIndex / maximum
      Added value: +9007199254740991
    • addedOutput schema / properties / limit / maximum
      Added value: +9007199254740991
    • addedOutput schema / properties / page / maximum
      Added value: +9007199254740991
  4. First observed

TDQS

A4.4/5.0
Behavior4/5

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

Goes well beyond the readOnly/idempotent annotations: temporary URLs that change on later calls, downloadUrl null until rendering completes, empty pages past the end, and the three required scopes (batches:read, renders:read, creatives:read). The only minor gap is not stating what happens with an invalid or non-existent batchId, though that is largely covered by the empty-page note.

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 the core behavior and free of filler, but the middle is a dense semicolon-chained run of pagination, null-status, and URL-expiry facts that is harder to scan than it needs to be. Slightly tighter clause separation would help without adding length.

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 paginated read tool with an output schema, the description supplies everything else an agent needs: pagination bounds, lazy-field semantics, URL ephemerality, auth scopes, and sibling routing. Nothing required to call it correctly is missing.

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% and already documents page (from 1) and limit (default 10, capped at 20), so the description mostly restates structured data. It does add one genuinely new detail — that a page past the end returns empty — but that is the only real increment.

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?

Opens with a specific verb and resource ('Returns the download URLs of a batch's rendered images') and immediately scopes it as paginated job-level output with status and format. It also carves out what it is not (get_batch_jobs, get_batch), so the agent can distinguish it from siblings 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 the agent: use get_batch_jobs for row values and render errors, get_batch for lighter progress checks, and inspect_image to view a downloadUrl. Both when-to-use and when-not-to-use are stated, with named alternatives.

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