Skip to main content
Glama

Generate an image

generate_image

Generate an image from a text prompt (optionally with input images for editing or reference). Waits for the result and returns the image URL. Costs credits from the connected Imaginode account; failures are refunded.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelNoModel key from list_models (kind image). Default: nano-banana-2.
promptYesWhat to generate, in natural language. English works best.
image_urlsNoOptional input image URLs (editing or reference). Must be media hosted on the Imaginode account (Firebase Storage URLs from the media library or previous generations).
aspect_ratioNoOptional aspect ratio like 16:9, 1:1, 9:16.

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations present, the description carries the full behavioral burden, and it does substantial work: it discloses synchronous blocking behavior ('Waits for the result'), the return format (image URL), that it consumes credits from the connected account, and that failures are refunded. It does not disclose whether the generated image persists to the Firebase media library, which the image_urls schema hints at, leaving a side-effect gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with zero waste and a clear ordering: core function first, then blocking/return behavior, then cost/refund policy. Every sentence earns its place, and the most decision-relevant facts (synchronous wait, credit cost) appear early.

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?

For a tool with no annotations and no output schema, this is fairly complete: it covers the return value, blocking semantics, and cost implications. Gaps remain — it never connects the model parameter to the list_models sibling, does not state whether outputs are saved to the media library, and omits error conditions beyond the refund note.

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 description coverage is 100%, so the baseline is 3. The description reinforces the roles of prompt and image_urls ('from a text prompt', 'input images for editing or reference') but adds no syntax, formatting, or constraint details beyond what the schema already provides. It does nothing to disambiguate model or aspect_ratio values.

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?

States a specific verb (generate) and resource (image) with a clear input mode: text prompt, optionally augmented by input images for editing or reference. The content makes it evident this is the image-generation tool distinct from generate_video, get_generation_status, and list_models, though it never names those siblings explicitly, so differentiation is implicit rather than stated.

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 context is implied: use it when an image is needed, including when editing or referencing existing images via image_urls. The credit-cost and refund notes add a cost-awareness consideration. However, there is no explicit statement of when NOT to use it, no mention of alternatives like generate_video, and no guidance on when to consult get_generation_status after calling.

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.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a distinct purpose: image generation, video generation, status polling, and model listing. There is no functional overlap between them; the async nature of video generation and the status tool clearly complement each other without ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern: generate_image, generate_video, get_generation_status, list_models. The verb prefixes (generate, get, list) map predictably to actions and resources.

Tool Count5/5

With 4 tools, the set is tightly scoped for a media generation server. Each tool serves a necessary role: creating images, creating videos, checking async status, and discovering models. No redundant tools exist.

Completeness5/5

The domain is AI media generation, and the lifecycle is fully covered: start an image generation, start a video generation, poll for status/results, and list available models. There are no dead ends; even timeout scenarios are addressed via get_generation_status.