Skip to main content
Glama

Generate Image

generate_image

Generate AI image assets directly into the project. Each image is written to the project's own asset storage and registered in its asset manifest; the tool returns the project-relative asset paths (/_cdn/static/...), which only resolve on the app's own domain — reference them in code or set one as the app/PWA icon via update_project_metadata (iconUrl). Use this for PROJECT-SPECIFIC imagery (mascots, tailored illustrations, app/PWA icons, imagery in a particular style); for generic stock imagery (nature, textures, generic people) use Unsplash URLs instead; if you already HAVE an image as a local file (generated or downloaded yourself), use upload_asset. Generate BEFORE building the components that use the images.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
imagesYes
projectIdYes

TDQS

A4.4/5.0
Behavior4/5

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

Annotations are empty/neutral (readOnlyHint=false, destructiveHint=false), so the description carries the behavioral burden. It discloses that images are written to project asset storage, registered in the asset manifest, and that returned paths only resolve on the app's own domain — key behavioral context beyond the schema. It could add error/limit behavior (e.g., maxItems=4), but the core side effects are disclosed with no contradiction.

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?

Purpose is front-loaded in the first sentence, followed by behavioral detail and then usage alternatives. It is a long single block but every sentence carries information — no filler. Slightly denser than necessary, but the density is justified by the routing guidance.

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?

Given nested-array complexity with no output schema, the description covers return format (project-relative /_cdn/static/ paths, domain-scoped), usage alternatives, timing, and the metadata sibling (update_project_metadata iconUrl). The only minor gap is the size enum, which is recoverable from the schema itself. Comprehensive for correct invocation.

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 0%, so the description must compensate, but it does so only partially. It implies what 'name' and 'prompt' mean and explains what is returned, but it does not describe the 'size' enum values (square, landscape, etc.) or the 'description' field. It adds meaningful context about the output paths but leaves the per-item size/description semantics to the agent's inference.

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 ('Generate AI image assets directly into the project') with a clear resource and scope. It distinguishes itself from siblings by defining what counts as project-specific imagery versus stock (Unsplash) or pre-existing local files (upload_asset). An agent can confidently tell this apart from upload_asset without opening schemas.

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 for PROJECT-SPECIFIC imagery, use Unsplash URLs for generic stock, use upload_asset when a local file already exists. It also gives sequencing guidance ('Generate BEFORE building the components that use the images'). This is fully actionable when/when-not/alternatives 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.

TDQS

A3.6/5.0
Disambiguation4/5

Tools are mostly distinct, but there is some overlap among file-modifying tools (edit_file, write_file, apply_patch) and between run_code_in_vm and run_code_in_browser. Detailed descriptions and clearly scoped use cases help agents select correctly.

Naming Consistency4/5

Most tools follow a verb_noun snake_case pattern (create_project, list_files, execute_sql), but a few deviate (apply_patch, card_upload_asset, run_code_in_vm). Overall readable and predictable, with only minor inconsistencies.

Tool Count2/5

With 46 tools, the server exceeds the typical well-scoped range and approaches the extreme threshold. While the broad scope of a full development platform justifies many tools, this count may overwhelm agents and increase misselection risk.

Completeness4/5

The tool surface covers the full development lifecycle: project creation, file operations, database management, resource provisioning, deployment, testing, and debugging. Minor gaps exist (e.g., no delete_project or checkpoint management), but core workflows are well-supported.

Resources