Skip to main content
Glama

List generations

list_generations
Read-onlyIdempotent

Search and page through the user's image, clip and audio generations. tags narrows to the ones carrying every tag named — tags are how work is grouped (a client, a campaign).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "list_generations"
  }
}

Input Schema

NameRequiredDescriptionDefault
qNo
kindNo
tagsNo
limitNo
cursorNo
favoriteNo

Output Schema

NameRequiredDescriptionDefault
itemsYes
app_urlYes
has_moreYes
next_cursorYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed20 schema fields changed
    • addedOutput schema / properties / items / items / description
      Added value: +"One image, clip, voice-over or piece of music."
    • addedOutput schema / properties / items / items / properties / app_url / description
      Added value: +"Opens it in the app."
    • addedOutput schema / properties / items / items / properties / aspect_ratio / description
      Added value: +"Null for audio."
    • addedOutput schema / properties / items / items / properties / created_at / format
      Added value: +"date-time"
    • addedOutput schema / properties / items / items / properties / credits
      Added value: +{
      +  "description": "Credits charged. Zero when your own provider key or the free allowance paid.",
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • removedOutput schema / properties / items / items / properties / credits_cost
      Removed value: -{
      -  "type": [
      -    "number",
      -    "null"
      -  ]
      -}
    • addedOutput schema / properties / items / items / properties / error / description
      Added value: +"Why it failed. Null otherwise."
    • removedOutput schema / properties / items / items / properties / generation_id
      Removed value: -{
      -  "format": "uuid",
      -  "type": "string"
      -}
    • addedOutput schema / properties / items / items / properties / id
      Added value: +{
      +  "format": "uuid",
      +  "type": "string"
      +}
    • removedOutput schema / properties / items / items / properties / kind
      Removed value: -{
      -  "enum": [
      -    "image",
      -    "video",
      -    "audio",
      -    "tool"
      -  ],
      -  "type": "string"
      -}
    • addedOutput schema / properties / items / items / properties / model / description
      Added value: +"The model id it was made with (`GET /v1/models`)."
    • addedOutput schema / properties / items / items / properties / object
      Added value: +{
      +  "const": "generation",
      +  "type": "string"
      +}
    • addedOutput schema / properties / items / items / properties / output_url / description
      Added value: +"The finished file, once `ready`. A signed link that works for about an hour; read the generation again for a fresh one."
    • addedOutput schema / properties / items / items / properties / paid_by / description
      Added value: +"Who paid: \"credits\", \"house\" (the free allowance), \"server\" (a server that charges nothing), or the vendor of your own key (\"replicate\", \"fal\", …)."
    • addedOutput schema / properties / items / items / properties / ready_in_seconds / description
      Added value: +"Roughly how long an unfinished generation has left; 0 means past its usual time."
    • addedOutput schema / properties / items / items / properties / recipe_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/properties/items/items/properties/id"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "The recipe it was made with, if any."
      +}
    • addedOutput schema / properties / items / items / properties / status / description
      Added value: +"`ready` and `failed` are final."
    • addedOutput schema / properties / items / items / properties / thumbnail_url
      Added value: +{
      +  "anyOf": [
      +    {
      +      "$ref": "#/properties/items/items/properties/output_url/anyOf/0"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "A small still of the result, for a grid. Null for audio and while it works."
      +}
    • addedOutput schema / properties / items / items / properties / type
      Added value: +{
      +  "description": "What was made. New values may be added; treat an unknown one as opaque.",
      +  "enum": [
      +    "image",
      +    "clip",
      +    "voiceover",
      +    "music",
      +    "tool"
      +  ],
      +  "type": "string"
      +}
    • changedOutput schema / properties / items / items / required
      Previous value: -[
      -  "generation_id",
      -  "kind",
      -  "status",
      -  "model",
      -  "prompt",
      -  "aspect_ratio",
      -  "refined_from",
      -  "caption_style",
      -  "output_url",
      -  "credits_cost",
      -  "paid_by",
      -  "error",
      -  "vendor_phase",
      -  "stalled",
      -  "ready_in_seconds",
      -  "created_at",
      -  "app_url"
      -]New value: +[
      +  "object",
      +  "id",
      +  "type",
      +  "status",
      +  "model",
      +  "prompt",
      +  "aspect_ratio",
      +  "output_url",
      +  "thumbnail_url",
      +  "credits",
      +  "paid_by",
      +  "error",
      +  "ready_in_seconds",
      +  "recipe_id",
      +  "created_at",
      +  "app_url",
      +  "refined_from",
      +  "caption_style",
      +  "vendor_phase",
      +  "stalled"
      +]
  2. Changed2 schema fields changed
    • addedOutput schema / properties / items / items / properties / paid_by
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / items / items / required
      Previous value: -[
      -  "generation_id",
      -  "kind",
      -  "status",
      -  "model",
      -  "prompt",
      -  "aspect_ratio",
      -  "refined_from",
      -  "caption_style",
      -  "output_url",
      -  "credits_cost",
      -  "error",
      -  "vendor_phase",
      -  "stalled",
      -  "ready_in_seconds",
      -  "created_at",
      -  "app_url"
      -]New value: +[
      +  "generation_id",
      +  "kind",
      +  "status",
      +  "model",
      +  "prompt",
      +  "aspect_ratio",
      +  "refined_from",
      +  "caption_style",
      +  "output_url",
      +  "credits_cost",
      +  "paid_by",
      +  "error",
      +  "vendor_phase",
      +  "stalled",
      +  "ready_in_seconds",
      +  "created_at",
      +  "app_url"
      +]
  3. Changed2 schema fields changed
    • addedOutput schema / properties / items / items / properties / ready_in_seconds
      Added value: +{
      +  "type": [
      +    "number",
      +    "null"
      +  ]
      +}
    • changedOutput schema / properties / items / items / required
      Previous value: -[
      -  "generation_id",
      -  "kind",
      -  "status",
      -  "model",
      -  "prompt",
      -  "aspect_ratio",
      -  "refined_from",
      -  "caption_style",
      -  "output_url",
      -  "credits_cost",
      -  "error",
      -  "vendor_phase",
      -  "stalled",
      -  "created_at",
      -  "app_url"
      -]New value: +[
      +  "generation_id",
      +  "kind",
      +  "status",
      +  "model",
      +  "prompt",
      +  "aspect_ratio",
      +  "refined_from",
      +  "caption_style",
      +  "output_url",
      +  "credits_cost",
      +  "error",
      +  "vendor_phase",
      +  "stalled",
      +  "ready_in_seconds",
      +  "created_at",
      +  "app_url"
      +]
  4. Changed2 schema fields changed
    • removedInput schema / properties / folder_id
      Removed value: -{
      -  "format": "uuid",
      -  "type": "string"
      -}
    • addedInput schema / properties / tags
      Added value: +{
      +  "items": {
      +    "maxLength": 40,
      +    "minLength": 1,
      +    "type": "string"
      +  },
      +  "maxItems": 8,
      +  "minItems": 1,
      +  "type": "array"
      +}
  5. First observed

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description still adds real value beyond them: it discloses cursor-style paging and, importantly, that `tags` requires ALL named tags to be present (conjunction) — a non-obvious filtering semantic. It omits default ordering, default page size, and whether `favorite` and `q` combine with tags as AND or OR.

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?

Two tight sentences with the action front-loaded and the tag semantics immediately after; nothing is padding. The only cost is that the second sentence spends its words on tags while five parameters go unmentioned, which is a prioritization issue rather than verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values and pagination envelope need not be described. However, for a 6-parameter search tool at 0% schema coverage, missing guidance on `q` matching, `limit`/`cursor` usage, and how filters combine leaves real gaps an agent would have to guess at.

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

Parameters2/5

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

Schema description coverage is 0% across 6 parameters, so the description carries the full burden — yet it only explains `tags`. Nothing is said about `q` (search target or matching mode), `kind`, `limit`, `cursor` format, or `favorite`; "page through" only hints at the cursor. The single enum (kind) is not referenced at all.

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 gives a specific verb pair plus resource: "Search and page through the user's image, clip and audio generations," which an agent can distinguish from get_generation (single item) and list_media. Minor friction: it says "clip" while the schema enum says "video" and includes no "video" wording, so an agent mapping the media types must reconcile the two on its own.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by "search and page through" rather than stated, and it never names alternatives such as get_generation for a single item or list_media for raw media. The tag explanation does clarify a grouping model (client, campaign), which helps an agent decide to filter by tag, but there is no explicit when-not guidance.

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