Skip to main content
Glama

Expand a photo

expand_image

Extend a photo beyond its edges to a wider or taller shape, filling in matching scenery. OAuth uses site credits (from 24 credits per image with the default model). API keys use a separate USD wallet. Omit approval to get a quote, then confirm max_credits for OAuth or currency USD and decimal max_usd for API keys.

Input Schema

NameRequiredDescriptionDefault
imageNoChatGPT only: the photo the user attached. Use image_url everywhere else.
max_usdNoAPI key only: maximum approved USD as a decimal string with up to 9 fractional digits. Set currency to USD. Only set after the user confirms the quoted cost_usd. Never convert max_credits.
currencyNoBilling unit: USD for API keys; credits for OAuth (optional for existing OAuth clients).
image_urlNoThe photo to extend beyond its edges (https or popnow:// link).
max_creditsNoOAuth only: the most site credits the user agreed to spend on this. Only set it after the user confirmed a quoted price.
aspect_ratioNoThe new, larger shape: 16:9, 9:16, 1:1, 4:3, 3:4 or 3:2. Default 16:9.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations declare a non-idempotent, open-world write, and the description goes well beyond them by disclosing the dual billing model (site credits for OAuth vs. USD wallet for API keys), the 24-credit floor, and a quote-then-confirm approval gate. It does not disclose what the call returns (e.g., a job handle for get_job polling), which is a real gap given there is no output schema.

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?

Three sentences, purpose front-loaded, no wasted framing. The billing sentence is dense and packs multiple conditional branches, but every clause carries operational information an agent needs before spending money.

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?

For a 6-parameter, nested-object, financially-gated tool with no output schema, the description covers cost/approval well but leaves the return contract (job id, polling with get_job) unspecified. An agent knows how to pay but not what it gets back.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3; the description adds value by tying the approval parameters into a coherent sequence (quote first, then confirm max_credits for OAuth or currency=USD plus decimal max_usd for API keys). It does not discuss aspect_ratio or the image/image_url split, but those are fully documented in-schema.

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 and resource with scope: 'Extend a photo beyond its edges to a wider or taller shape, filling in matching scenery.' The action is unambiguously distinct from siblings like upscale, edit_image, and extend_video (which operates on video).

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?

The description gives procedural guidance for the billing flow (omit approval for a quote, then confirm max_credits or max_usd), but never says when to choose this over upscale, edit_image, or change_camera_angle. Usage is only implied by the purpose statement.

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.