Skip to main content
Glama

generate_image

Generate images from text prompts asynchronously; wait briefly for a PNG result or receive a job ID to poll for completion.

Instructions

Asynchronous prompt generation. Waits up to wait_seconds (default 20, capped at ~30s); if done returns the PNG path, otherwise a job_id for get_job.

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>"
    },
    "name": "generate_image"
  }
}

Input Schema

NameRequiredDescriptionDefault
seedNo
stepsNo
widthNo
heightNo
promptYes
profileNo
samplerNo
cfg_scaleNo
schedulerNo
batch_countNo
wait_secondsNoSeconds to wait for the result (0..30, default 20)
negative_promptNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.1/5.0
Behavior3/5

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

No annotations exist, yet the description does disclose the important behavioral traits: the call is asynchronous, it blocks for wait_seconds (default 20, capped ~30s), and it returns either a file path or a job handle. It omits failure modes, whether the server must be running, resource cost of generation, and whether the job persists if the caller goes away.

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 compact sentences, front-loaded with the async nature and then the timeout/return contract; no filler. It is arguably undersized for a 12-parameter tool, but nothing it says is wasted.

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

Completeness2/5

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

For a 12-parameter, annotation-free, output-schema-free generation tool, the definition should cover the main generation knobs and prerequisites. It covers only the polling contract, leaving an agent unable to reason about the quality/size controls or about needing a running server.

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 only 8% — just wait_seconds is documented — and the description only reinforces wait_seconds (default and cap). The eleven other parameters (seed, steps, width/height, profile, sampler, cfg_scale, scheduler, batch_count, negative_prompt, prompt) get no meaning from either source, so the description fails to compensate for the coverage gap.

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 (generation) and resource (a prompt-to-PNG job), and routes the incomplete case to the get_job sibling, so an agent can tell it apart from get_job/list_jobs. It never literally says 'image', but the PNG path return makes the effect unambiguous.

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?

It clearly explains the two outcome paths (wait returns the PNG, otherwise take job_id to get_job), which is genuine usage guidance. It gives no guidance on when to choose this over edit_image or upscale_image, and no prerequisite such as start_server/server_status being needed first.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.