Skip to main content
Glama

Server Details

Generate AI images and videos from any compatible MCP client.

Ownership verified
Status
Healthy
Uptime
99.0% over 43 days
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.2/5.0

Scored across 10 tools

Disambiguation4/5

Each tool targets a distinct action: generation, editing, listing, checking, quoting, or planning. The only mild overlap is get_credits vs quote_generation, but quote_generation's focus on exact costs and plan eligibility distinguishes it from simply checking the balance.

Naming Consistency5/5

All tools use a consistent snake_case verb_noun pattern (generate_image, list_models, quote_generation, plan_product_ad). The verbs clearly indicate the action, with no mixed conventions or vague names.

Tool Count5/5

10 tools is well-scoped for an image and video generation service. Each tool covers a necessary function without redundancy, and the count feels neither thin nor bloated.

Completeness4/5

The surface covers the core lifecycle: generate, edit, retrieve, list, check, quote costs, and discover models/styles. Missing delete/cancel operations are minor since generations are account records rather than user-managed files.

Available Tools

10 tools
check_generationCheck GenerationA
Read-onlyIdempotent
Inspect

Return one of the caller's own image or video generations by task id: a finished one again (no new generation, no credits), or wait for one that was still running. Task ids are quoted in every generation reply and by list_generations. Free to call; it never starts anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYesTask id from a still-running generation reply

TDQS

A4.7/5.0
Behavior5/5

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

The description adds meaningful operational detail beyond the annotations: it never starts anything, consumes no credits, can wait for a running task, and is restricted to the caller's own generations. These points align with readOnlyHint, idempotentHint, and destructiveHint=false, and enrich what the agent knows about side effects.

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?

Two sentences front-load the core action and resource, then add the key caveats (no cost, no side effects, waiting behavior, id provenance) without redundancy. Every sentence carries distinct useful information.

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?

For a single-parameter read/idempotent tool with rich annotations, the description covers the essential behavior: what it returns, when it waits, where the task id comes from, and that it is free and non-starting. No output schema is present, but this level of detail is sufficient for an agent to select and invoke the tool correctly.

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?

The schema already covers task_id fully, but the description adds value by specifying that task ids come from generation replies or list_generations and explaining how the task_id relates to finished versus running generations. This helps the agent select the correct value beyond the schema's simple field description.

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?

The description opens with a specific verb ('Return') and resource ('one of the caller's own image or video generations by task id'), which is far more informative than the title. It distinguishes itself from generation tools by explicitly stating it never starts a new generation and from list_generations by targeting a single task id.

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

Usage Guidelines4/5

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

The description clearly indicates when to call it: when you already have a task id and need the finished generation, or when a generation is still running and should be awaited. It also tells the agent where task ids come from, though it does not explicitly name sibling alternatives or say when not to use them.

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

edit_imageEdit ImageA
Destructive
Inspect

Edit an existing image with a text instruction, using Claude Imagine credits. Pass the full-resolution URL of the image to change; the result is a new image, the original is untouched. Say in the prompt what must stay the same, not only what changes.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoEditing model. nano-banana-2 (default) or gpt-image-2.5. The other image models cannot edit through MCP yet.
promptYesWhat to change, and what to keep. Example: "replace the sky with a sunset, keep the people and the framing unchanged"
image_urlsYesPublic URL of the image to edit, normally the full-resolution URL returned by an earlier generation. One image in this version.
resolutionNoOutput size: 1k, 2k or 4k. Leave it out unless the user gave a clear size signal: a pixel size or tier (4K, 2K, high resolution) or a physical output (print, poster, wallpaper, billboard). Words like premium, professional or high quality describe the look, not the size, and are not a reason to pass this. Omitted uses the model's default, its cheapest size; 2k and 4k cost roughly two to three times more credits and take longer. When the user asks for 'sharper' or 'bigger' without a size, quote_generation the options and ask which one.
max_creditsNoBudget cap in credits, when the person stated one. If the exact cost of this call is above it, nothing is started and the reply lists what fits.
aspect_ratioNoAspect ratio for the result. When omitted, the framing of the source image is kept.

TDQS

A3.6/5.0
Behavior1/5

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

Annotation Contradiction: destructiveHint=true implies destructive behavior, but the description explicitly says 'the original is untouched' and 'the result is a new image.' This direct contradiction makes the behavioral profile unreliable, so a score of 1 is required.

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, no filler, and the core action is front-loaded. The guidance about preserving content earns its place and does not bloat the description.

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?

Covers the non-obvious operational facts: credit usage, non-destructive output, and prompt phrasing advice. It does not explicitly discuss cost quoting or when to prefer a generation tool, but the rich schema and sibling context make those gaps minor.

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 adds minor value by advising use of the full-resolution URL and emphasizing that the prompt should preserve unchanged content, but the schema already documents all parameters thoroughly.

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 ('Edit'), resource ('existing image'), and method ('text instruction'). The contrast between 'result is a new image' and 'original is untouched' clearly distinguishes it from generation-focused siblings like generate_image.

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

Usage Guidelines4/5

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

Provides clear context for when to use the tool: editing an existing image, not creating one. It also gives a practical prompt-construction rule ('say what must stay the same'), but it does not explicitly name sibling alternatives or state when not to use this tool.

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

generate_imageGenerate ImageA
Destructive
Inspect

Generate an AI image from a text prompt using Claude Imagine credits. Returns the image inline plus its full-resolution URL. To change an existing image, use edit_image. For a YouTube thumbnail, book cover, album or podcast cover, poster, blog cover or product photo, call list_styles first and pass one of its ids as style.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoModel to use. nano-banana-2 (default, best quality/price), gpt-image-2.5, seedream-4.5, flux-2-pro, z-image (fastest & cheapest)
styleNoA named look from list_styles, e.g. thumbnail-bold. The prompt then describes only the subject: what is in the picture, and any words that must appear in it in double quotes. The style sets the framing and the aspect ratio; aspect_ratio still overrides it.
promptYesImage description
resolutionNoOutput size: 1k, 2k or 4k. Leave it out unless the user gave a clear size signal: a pixel size or tier (4K, 2K, high resolution) or a physical output (print, poster, wallpaper, billboard). Words like premium, professional or high quality describe the look, not the size, and are not a reason to pass this. Omitted uses the model's default, its cheapest size; 2k and 4k cost roughly two to three times more credits and take longer. When the user asks for 'sharper' or 'bigger' without a size, quote_generation the options and ask which one.
max_creditsNoBudget cap in credits, when the person stated one. If the exact cost of this call is above it, nothing is started and the reply lists what fits.
aspect_ratioNoAspect ratio. When omitted, the selected model's own default is used.

TDQS

A4.6/5.0
Behavior4/5

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

Description notes that the tool 'Returns the image inline plus its full-resolution URL', which is useful beyond annotations. It hints at credit consumption ('using... credits'), but annotations already mark destructiveHint=true. No contradiction; the description adds context that generation consumes credits and returns a URL, which is valuable given the annotations don't cover return format.

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?

Description is compact, with front-loaded purpose and return info. The additional usage guidance is essential and concise. Slightly long due to the resolution parameter explanation, but that's in the schema, not the main description, so overall the main description is efficient.

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 the tool's complexity (6 params, 4 enums, no output schema), the description covers purpose, usage, return format, and routing to siblings. Missing output schema is compensated by describing the return. All critical aspects for correct invocation are addressed.

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. Description adds significant value: explains that style sets framing and aspect ratio (and prompt should only describe subject), that resolution is for size signals only with detailed guidance, and that max_credits is a budget cap. This goes beyond schema descriptions.

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 the verb ('Generate'), resource ('AI image'), input ('text prompt'), and an explicit tie to 'Claude Imagine credits', distinguishing it from siblings like edit_image and generate_video. The first sentence is specific and unambiguous.

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 tells when to use the tool (new image from prompt) and when not (to change an existing image, use edit_image). It also instructs to call list_styles first for specific use cases (e.g., YouTube thumbnail, book cover) and pass its id as style. This is clear, actionable routing.

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

generate_videoGenerate VideoA
Destructive
Inspect

Generate an AI video with H3 Max Turbo (default: renders in seconds, 5-15 s), Grok Imagine, Seedance, Veo, or Kling. Every account gets its first H3 Max Turbo clip at 5 s / 480p free; after that it costs credits like any other preset. Users can name a model family naturally: H3, Hailuo or MiniMax map to H3 Max Turbo, Veo to Veo 3.1 Fast, Kling to Kling 2.5 Turbo, Grok to Grok Imagine, Seedance to Seedance 2.0 Mini, and Seedance Pro to Seedance 1.5 Pro. Never omit model when the user named one. Call list_models or quote_generation first when the user wants to review models and costs before spending credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
modelNoVideo model or friendly name. Shortcuts: h3, hailuo or minimax -> h3-max-turbo; grok -> grok-imagine; seedance or seedance-mini -> seedance-2.0-mini; seedance-pro -> seedance-1.5-pro; veo -> veo-3.1-fast; kling -> kling-2.5-turbo. Defaults to h3-max-turbo only when the user did not name a model.
promptYesVideo description
durationNoSeconds: H3 Max Turbo 5-15, Grok 6-30, Seedance 1.5 Pro 4-12, Seedance 2.0 Mini 4-15, Veo 3.1 Fast 4/6/8, Kling 5/10. Defaults to the selected model preset.
image_urlNoOptional public image URL to animate
resolutionNoQuality: H3 Max Turbo supports 480p/768p; Grok and Seedance 1.5 support 480p/720p/1080p; Seedance 2.0 Mini supports 480p/720p; Veo 3.1 Fast currently uses 720p; Kling uses fixed Pro quality.
max_creditsNoBudget cap in credits, when the person stated one. If the exact cost of this call is above it, nothing is started and the reply lists what fits.
aspect_ratioNoVideo aspect ratio, default 16:9. Veo supports 16:9 or 9:16; Kling and H3 Max Turbo image-to-video follow the source image instead.

TDQS

A5/5.0
Behavior5/5

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

Discloses that the first H3 Max Turbo clip is free, subsequent usage costs credits, and the max_credits parameter caps spending with a defined behavior (nothing started, reply lists what fits). This goes beyond the annotations by detailing cost-related behavior and budget handling.

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?

Though relatively long, every sentence provides necessary detail: model options, aliases, cost policy, defaults, and when to defer to sibling tools. The structure is logical and front-loaded with the core action, without redundant or unrelated content.

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 the sibling tools (check_generation, quote_generation, list_models, get_credits), the description covers the full context: what to do before generating, how to set budget, and what model to choose. The absence of an output schema is acceptable since the tool likely starts an async job and returns a generation ID, which is implicitly covered by the sibling check_generation.

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

Parameters5/5

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

The schema descriptions cover all 7 parameters (100% coverage), and the description text adds valuable aliases and default rules (e.g., 'h3' -> h3-max-turbo, default only when user did not name a model). This fully clarifies parameter meaning and allowed values.

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?

The description clearly states the tool generates AI videos, specifies the models available, and distinguishes it from siblings like generate_image and edit_image. The verb 'Generate' and resource 'AI video' are explicit, and the model list differentiates it from other tools.

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 instructs when to call list_models or quote_generation first, namely when the user wants to review models and costs before spending credits. Also clarifies when to omit the model parameter, providing unambiguous usage guidance.

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

get_creditsGet CreditsA
Read-onlyIdempotent
Inspect

Get the remaining credit balance for this account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior3/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, and the description ('Get the remaining credit balance') is consistent with these. The description adds no extra behavioral context beyond what the annotations provide, but since it is a simple read operation, no further disclosure is necessary. It neither contradicts nor meaningfully extends the annotations.

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?

The description is a single, front-loaded sentence that states the action and resource without any filler. Every word contributes to the meaning, making it exceptionally concise and well-structured.

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?

For a zero-parameter, read-only tool with no output schema, the description fully captures what the tool does. There are no missing details an agent would need to call it correctly; the absence of parameters and the simple nature of the tool make this description complete.

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?

The tool has no parameters, and the schema coverage is 100% (empty schema). With zero parameters, the description has no parameter semantics to clarify, so a baseline of 4 is appropriate. No additional explanation is needed.

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?

The description states a specific verb ('Get') and a clear resource ('remaining credit balance for this account'), making the tool's purpose unambiguous. It is clearly distinct from the sibling tools 'generate_image' and 'list_models' based on the action and resource mentioned.

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

Usage Guidelines4/5

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

While the description does not explicitly mention alternatives or exclusions, the purpose is self-evident and the tool has no parameters, so there is little ambiguity about when to use it. The siblings are unrelated in function, and the absence of explicit guidance does not hinder correct usage.

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

list_generationsList GenerationsA
Read-onlyIdempotent
Inspect

The caller's own recent image and video generations on this account, newest first, including ones made on the website. Use it to find an earlier result to show again, edit or animate, then use its task id with check_generation or its URL with edit_image / generate_video. Free; returns records only and never starts anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNo
limitNoDefault 10
queryNoCase-insensitive text to look for in the prompt
statusNo

TDQS

A4.7/5.0
Behavior5/5

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

The annotations already mark the operation as read-only and non-destructive, and the description adds valuable behavioral context: it is free, returns records only, never starts anything, and is scoped to the caller's own account. There is no contradiction with the annotations.

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, each earning its place: what is listed, how to use the results, and the side-effect/safety note. The key scoping detail is front-loaded.

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?

For a read-only list tool with optional filters and no output schema, the description is complete enough: it covers scope, ordering, side-effect absence, and how to consume the returned task ids/URLs with downstream tools. The annotations cover the safety profile, so nothing essential is missing.

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?

The input schema has descriptions for limit and query, but type and status are only bare enums. The description partially compensates by clarifying the content is image and video generations and that results are newest first, but it does not explain the type/status filter semantics or parameter combinations beyond what the schema already offers.

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?

The description states a specific verb and resource: listing the caller's own recent image and video generations, newest first, including website-made generations. This scope distinguishes it clearly from siblings like check_generation, edit_image, and generate_video.

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?

The description explicitly says when to use it: to find an earlier result to show again, edit, or animate. It also routes the agent to the correct next tools by mentioning task ids with check_generation and URLs with edit_image / generate_video.

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

list_modelsList ModelsA
Read-onlyIdempotent
Inspect

List available image and video models with their credit cost.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

Annotations already communicate readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds one useful behavioral detail beyond annotations: that each model has an associated credit cost, which informs the agent about the nature of the returned data. However, it does not mention response format, pagination, or ordering, but given the simplicity and annotation coverage, a 3 is appropriate.

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?

The description is a single sentence that front-loads the action and states the essential output detail. There is no wasted wording, and it is appropriately sized for a tool with no parameters and a simple return set.

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 straightforward list tool with no parameters, no output schema, and annotations covering safety, the description provides sufficient context: it specifies what is listed (models) and a key attribute (credit cost). It could be slightly more explicit about the return structure (e.g., array of objects with model ID and cost), but that is a minor gap given the simplicity.

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?

The tool has zero parameters, and schema description coverage is 100% (vacuously). With 0 params, the baseline is 4, and the description does not need to explain any input semantics. It correctly focuses on the output (models and credit costs) rather than parameters, which is appropriate.

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?

The description clearly states the action (list), the resource (available image and video models), and a specific detail (credit cost). It distinguishes itself from siblings like generate_image and generate_video, which perform generation, and get_credits, which presumably queries credit balance. The verb and resource are 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?

The description does not explicitly state when to use this tool versus alternatives. However, the purpose is clear and siblings are semantically distinct (generation vs. listing), so the intended usage is implied. No exclusions or conditions are provided, which keeps it at a baseline 'implied' level rather than explicit.

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

list_stylesList StylesA
Read-onlyIdempotent
Inspect

Named looks for generate_image: YouTube thumbnails, book covers, album and podcast cover art, posters, blog covers and product photos, four styles each. Free. Call it when the person wants one of those, show the options (in claude.ai they appear as a picker card), then pass the chosen id as style to generate_image with a prompt that describes only the subject.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoOnly this category. Omit for all six.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds meaningful behavior beyond that: the tool is free, results surface as a picker card in claude.ai, and there are exactly four styles per category. No contradiction with annotations.

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 tight sentences, front-loaded with purpose, then cost, then usage workflow. The single-word sentence 'Free.' earns its place as a key behavioral fact, and nothing is redundant or padded.

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 simple read-only list tool with one optional parameter and rich annotations, the description covers purpose, categories, count, cost, and the consumption flow. With no output schema, it could have specified the exact return object shape in more detail, but it does state the critical fact that the result contains an id to pass to generate_image, which is what an agent needs.

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%, setting the baseline at 3. The description adds real value by mapping the opaque enum values (cover-art) to human concepts ('album and podcast cover art') and clarifying the relationship between the category field and the enumerated looks. This helps an agent choose the correct enum value without opening the 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?

The description states a specific action (listing named styles) tied to a specific resource (generate_image) and enumerates the exact categories with a per-category count ('four styles each'). It is clearly distinguishable from siblings like list_models and list_generations by explicitly framing the output as the style picker for generate_image.

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

Usage Guidelines4/5

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

The description gives an explicit trigger condition ('Call it when the person wants one of those') and a full follow-up workflow: show the picker, then pass the chosen id as style to generate_image. It lacks an explicit 'when not to use' or direct alternative naming for cases like video or editing, so it falls just short of a 5.

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

plan_product_adPlan a Product AdA
Read-onlyIdempotent
Inspect

Plan a complete product-photo workflow: two image directions from one original product photo, user selection, then a short video. Returns exact account prices, prompts, budget guidance and output checks. Free: never starts a generation. Use before making product ads or product videos.

ParametersJSON Schema
NameRequiredDescriptionDefault
productYesProduct name or short description
durationNoClip length in seconds. Must be supported by video_model; use list_models to see valid durations. Omitted uses the model default.
preserveNoProduct details that must stay unchanged
image_urlNoPublic URL of the original product photo. If absent, the plan explains how to upload on the website.
max_creditsNoTotal budget in credits for the whole workflow (two images and one clip, retries included). The plan says STOP when the itemized total is above it. This call itself costs nothing.
video_modelNoChoose any supported image-to-video model. If omitted, uses the free H3 preset when eligible, otherwise the cheapest preset supporting the requested duration.

TDQS

A5/5.0
Behavior5/5

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

The description discloses that the call is free, never starts a generation, and returns exact account prices, prompts, budget guidance, and output checks. This is consistent with the readOnlyHint and idempotentHint annotations, adding practical detail about what the agent will receive without contradicting the annotations.

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?

The description is concise, with three sentences covering purpose, return value, cost, and usage timing. It is well-structured and free of redundancy, making it easy for an agent to parse quickly.

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?

Despite having no output schema, the description sufficiently informs the agent of what to expect (prices, prompts, budget guidance, output checks) and references related tools like list_models for duration validity. This is complete enough for correct selection and invocation.

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

Parameters5/5

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

All six parameters have clear descriptions. For example, max_credits explains the full budget scope, retries included, and the STOP behavior; video_model explains the fallback logic; image_url explains the behavior when absent. Schema coverage is 100% and each description adds meaningful context.

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?

The description explicitly states the tool's purpose: to plan a complete product-photo workflow, returning prices, prompts, budget guidance, and output checks. It clearly distinguishes its role from generation tools by instructing to use it before making product ads or videos and noting it never starts a generation.

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?

It provides explicit usage guidance: 'Use before making product ads or product videos.' It also clarifies cost behavior ('Free: never starts a generation') and describes how budget and model selection are handled, steering agents to this planning step before invoking sibling generation tools.

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

quote_generationQuote GenerationA
Read-onlyIdempotent
Inspect

Exact credit cost of a generate_image, edit_image or generate_video call before making it, with the caller's balance and plan eligibility. Use it whenever price or budget comes up instead of estimating. Free; nothing is reserved or started.

ParametersJSON Schema
NameRequiredDescriptionDefault
toolYesThe call being priced
modelNoModel id as that tool accepts it; omitted means the tool's default
durationNogenerate_video only: seconds
resolutionNogenerate_video: 480p, 720p, 768p or 1080p. generate_image and edit_image: 1k, 2k or 4k. Omitted means the model's default.
with_imageNogenerate_video only: true when an image_url will be animated

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false. The description adds value beyond these by stating it is 'Free' and that 'nothing is reserved or started,' which clarifies that no quota is consumed and no side effects occur. This contextualizes the read-only nature with operational implications, exceeding what annotations alone convey.

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?

The description is two sentences with zero waste. The primary purpose (exact credit cost) is front-loaded, followed by the use case and a critical behavioral note (free, nothing reserved). Every word contributes to agent decision-making.

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 conditional parameters and no output schema, the description covers the essential context: what it does, when to use, and that it is non-committal. It does not detail return structure, but the mention of 'balance and plan eligibility' gives a hint. Given the annotations and schema coverage, the description is sufficiently complete for an agent to invoke it correctly.

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 coverage is 100%, so all five parameters (tool, model, duration, resolution, with_image) are already fully described in the schema. The description does not add any parameter-specific guidance or clarify conditional usage (e.g., duration only for generate_video), so it provides no extra semantic value beyond the schema. Baseline of 3 is appropriate.

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?

The description clearly states the tool provides the exact credit cost for three specific tool calls (generate_image, edit_image, generate_video) along with the caller's balance and plan eligibility. The verb 'quote' and resource are specific, and it distinguishes itself from executing those calls by saying 'before making it.' It also implicitly differentiates from get_credits by including balance and plan eligibility, not just cost.

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

Usage Guidelines4/5

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

The description explicitly says 'Use it whenever price or budget comes up instead of estimating,' which is a clear when-to-use directive. It also notes 'Free; nothing is reserved or started,' indicating it is a non-committal query. However, it does not name alternative tools or explicitly state when not to use it, leaving some inference to the agent.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updates
    • Changedgenerate_image1 field changed
      • addedInput schema / properties / style
        Added value: +{
        +  "description": "A named look from list_styles, e.g. thumbnail-bold. The prompt then describes only the subject: what is in the picture, and any words that must appear in it in double quotes. The style sets the framing and the aspect ratio; aspect_ratio still overrides it.",
        +  "enum": [
        +    "thumbnail-bold",
        +    "thumbnail-clean",
        +    "thumbnail-cinematic",
        +    "thumbnail-tech",
        +    "book-literary",
        +    "book-thriller",
        +    "book-romance",
        +    "book-fantasy",
        +    "cover-minimal",
        +    "cover-neon",
        +    "cover-vintage",
        +    "cover-portrait",
        +    "poster-movie",
        +    "poster-event",
        +    "poster-retro",
        +    "poster-photo",
        +    "blog-editorial",
        +    "blog-flat",
        +    "blog-photo",
        +    "blog-isometric",
        +    "product-studio",
        +    "product-lifestyle",
        +    "product-marble",
        +    "product-nature"
        +  ],
        +  "type": "string"
        +}
    • Addedlist_styles
  2. 2 tool updates
    • Changededit_image1 field changed
      • changedInput schema / properties / resolution / description
        Previous value: -"Output size: 1k, 2k or 4k. Omitted means the model's default (its cheapest size). Larger sizes cost more credits; quote_generation shows the exact price."New value: +"Output size: 1k, 2k or 4k. Leave it out unless the user gave a clear size signal: a pixel size or tier (4K, 2K, high resolution) or a physical output (print, poster, wallpaper, billboard). Words like premium, professional or high quality describe the look, not the size, and are not a reason to pass this. Omitted uses the model's default, its cheapest size; 2k and 4k cost roughly two to three times more credits and take longer. When the user asks for 'sharper' or 'bigger' without a size, quote_generation the options and ask which one."
    • Changedgenerate_image1 field changed
      • changedInput schema / properties / resolution / description
        Previous value: -"Output size: 1k, 2k or 4k. Omitted means the model's default (its cheapest size). Larger sizes cost more credits; quote_generation shows the exact price."New value: +"Output size: 1k, 2k or 4k. Leave it out unless the user gave a clear size signal: a pixel size or tier (4K, 2K, high resolution) or a physical output (print, poster, wallpaper, billboard). Words like premium, professional or high quality describe the look, not the size, and are not a reason to pass this. Omitted uses the model's default, its cheapest size; 2k and 4k cost roughly two to three times more credits and take longer. When the user asks for 'sharper' or 'bigger' without a size, quote_generation the options and ask which one."
  3. 3 tool updates
    • Changededit_image1 field changed
      • addedInput schema / properties / resolution
        Added value: +{
        +  "description": "Output size: 1k, 2k or 4k. Omitted means the model's default (its cheapest size). Larger sizes cost more credits; quote_generation shows the exact price.",
        +  "enum": [
        +    "1k",
        +    "2k",
        +    "4k"
        +  ],
        +  "type": "string"
        +}
    • Changedgenerate_image1 field changed
      • addedInput schema / properties / resolution
        Added value: +{
        +  "description": "Output size: 1k, 2k or 4k. Omitted means the model's default (its cheapest size). Larger sizes cost more credits; quote_generation shows the exact price.",
        +  "enum": [
        +    "1k",
        +    "2k",
        +    "4k"
        +  ],
        +  "type": "string"
        +}
    • Changedquote_generation2 fields changed
      • changedInput schema / properties / resolution / description
        Previous value: -"generate_video only"New value: +"generate_video: 480p, 720p, 768p or 1080p. generate_image and edit_image: 1k, 2k or 4k. Omitted means the model's default."
      • changedInput schema / properties / resolution / enum
        Previous value: -[
        -  "480p",
        -  "720p",
        -  "768p",
        -  "1080p"
        -]New value: +[
        +  "480p",
        +  "720p",
        +  "768p",
        +  "1080p",
        +  "1k",
        +  "2k",
        +  "4k"
        +]
  4. 2 tool updates
    • Changededit_image2 fields changed
      • changedInput schema / properties / model / description
        Previous value: -"Editing model. nano-banana-2 (default) or gpt-image-2. The other image models cannot edit through MCP yet."New value: +"Editing model. nano-banana-2 (default) or gpt-image-2.5. The other image models cannot edit through MCP yet."
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "nano-banana-2",
        -  "gpt-image-2"
        -]New value: +[
        +  "nano-banana-2",
        +  "gpt-image-2.5",
        +  "gpt-image-2"
        +]
    • Changedgenerate_image2 fields changed
      • changedInput schema / properties / model / description
        Previous value: -"Model to use. nano-banana-2 (default, best quality/price), gpt-image-2, seedream-4.5, flux-2-pro, z-image (fastest & cheapest)"New value: +"Model to use. nano-banana-2 (default, best quality/price), gpt-image-2.5, seedream-4.5, flux-2-pro, z-image (fastest & cheapest)"
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "nano-banana-2",
        -  "gpt-image-2",
        -  "seedream-4.5",
        -  "flux-2-pro",
        -  "z-image"
        -]New value: +[
        +  "nano-banana-2",
        +  "gpt-image-2.5",
        +  "seedream-4.5",
        +  "flux-2-pro",
        +  "z-image",
        +  "gpt-image-2"
        +]
  5. 1 tool update
    • Addedplan_product_ad
  6. 3 tool updates
    • Changededit_image1 field changed
      • addedInput schema / properties / max_credits
        Added value: +{
        +  "description": "Budget cap in credits, when the person stated one. If the exact cost of this call is above it, nothing is started and the reply lists what fits.",
        +  "maximum": 9007199254740991,
        +  "minimum": 0,
        +  "type": "integer"
        +}
    • Changedgenerate_image1 field changed
      • addedInput schema / properties / max_credits
        Added value: +{
        +  "description": "Budget cap in credits, when the person stated one. If the exact cost of this call is above it, nothing is started and the reply lists what fits.",
        +  "maximum": 9007199254740991,
        +  "minimum": 0,
        +  "type": "integer"
        +}
    • Changedgenerate_video1 field changed
      • addedInput schema / properties / max_credits
        Added value: +{
        +  "description": "Budget cap in credits, when the person stated one. If the exact cost of this call is above it, nothing is started and the reply lists what fits.",
        +  "maximum": 9007199254740991,
        +  "minimum": 0,
        +  "type": "integer"
        +}
  7. 2 tool updates
    • Changedgenerate_video6 fields changed
      • changedInput schema / properties / aspect_ratio / description
        Previous value: -"Video aspect ratio, default 16:9. Veo supports 16:9 or 9:16; Kling image-to-video follows the source image instead."New value: +"Video aspect ratio, default 16:9. Veo supports 16:9 or 9:16; Kling and H3 Max Turbo image-to-video follow the source image instead."
      • changedInput schema / properties / duration / description
        Previous value: -"Seconds: Grok 6-30, Seedance 1.5 Pro 4-12, Seedance 2.0 Mini 4-15, Veo 3.1 Fast 4/6/8, Kling 5/10. Defaults to the selected model preset."New value: +"Seconds: H3 Max Turbo 5-15, Grok 6-30, Seedance 1.5 Pro 4-12, Seedance 2.0 Mini 4-15, Veo 3.1 Fast 4/6/8, Kling 5/10. Defaults to the selected model preset."
      • changedInput schema / properties / model / description
        Previous value: -"Video model or friendly name. Shortcuts: grok -> grok-imagine; seedance or seedance-mini -> seedance-2.0-mini; seedance-pro -> seedance-1.5-pro; veo -> veo-3.1-fast; kling -> kling-2.5-turbo. Defaults to grok-imagine only when the user did not name a model."New value: +"Video model or friendly name. Shortcuts: h3, hailuo or minimax -> h3-max-turbo; grok -> grok-imagine; seedance or seedance-mini -> seedance-2.0-mini; seedance-pro -> seedance-1.5-pro; veo -> veo-3.1-fast; kling -> kling-2.5-turbo. Defaults to h3-max-turbo only when the user did not name a model."
      • changedInput schema / properties / model / enum
        Previous value: -[
        -  "grok-imagine",
        -  "seedance-1.5-pro",
        -  "seedance-2.0-mini",
        -  "veo-3.1-fast",
        -  "kling-2.5-turbo",
        -  "grok",
        -  "seedance",
        -  "seedance-mini",
        -  "seedance-pro",
        -  "veo",
        -  "kling"
        -]New value: +[
        +  "h3-max-turbo",
        +  "grok-imagine",
        +  "seedance-1.5-pro",
        +  "seedance-2.0-mini",
        +  "veo-3.1-fast",
        +  "kling-2.5-turbo",
        +  "h3",
        +  "hailuo",
        +  "minimax",
        +  "grok",
        +  "seedance",
        +  "seedance-mini",
        +  "seedance-pro",
        +  "veo",
        +  "kling"
        +]
      • changedInput schema / properties / resolution / description
        Previous value: -"Quality: Grok and Seedance 1.5 support 480p/720p/1080p; Seedance 2.0 Mini supports 480p/720p; Veo 3.1 Fast currently uses 720p; Kling uses fixed Pro quality."New value: +"Quality: H3 Max Turbo supports 480p/768p; Grok and Seedance 1.5 support 480p/720p/1080p; Seedance 2.0 Mini supports 480p/720p; Veo 3.1 Fast currently uses 720p; Kling uses fixed Pro quality."
      • changedInput schema / properties / resolution / enum
        Previous value: -[
        -  "480p",
        -  "720p",
        -  "1080p"
        -]New value: +[
        +  "480p",
        +  "720p",
        +  "768p",
        +  "1080p"
        +]
    • Changedquote_generation1 field changed
      • changedInput schema / properties / resolution / enum
        Previous value: -[
        -  "480p",
        -  "720p",
        -  "1080p"
        -]New value: +[
        +  "480p",
        +  "720p",
        +  "768p",
        +  "1080p"
        +]
  8. 2 tool updates
    • Addedlist_generations
    • Addedquote_generation
  9. 1 tool update
    • Addedcheck_generation
  10. 1 tool update
    • Addededit_image
  11. 1 tool update
    • Changedgenerate_image1 field changed
      • changedInput schema / properties / aspect_ratio / description
        Previous value: -"Aspect ratio, default 1:1"New value: +"Aspect ratio. When omitted, the selected model's own default is used."
  12. 1 tool update
    • Addedgenerate_video
  13. 3 tool updates
    • First observedgenerate_image
    • First observedget_credits
    • First observedlist_models

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources