Skip to main content
Glama

Generate or approve a comic character's reference image

aetherwave_comic_character_reference

Gives a comic character a reference image, which every panel uses to keep that character looking the same.

action 'generate' (6 credits per image): draws 'count' (1 to 4) full-body references in the book's art style. Each new image is ADDED to the character's options, nothing is replaced. With editPrompt alone, the note steers a fresh drawing ("older, with a grey beard"). With editPrompt AND baseUrl (one of this character's existing images) it edits that image and keeps the same person. Images are saved to permanent AetherWave storage. If the call runs out of time the images still land: read them from aetherwave_comic_status (characters[].referenceOptions).

action 'approve' (free): sets imageUrl as the character's reference and re-describes the character from the picture. Approve before aetherwave_comic_write_script. Only the character's own images or other permanent AetherWave images (media.aetherwavestudio.com) are accepted: a temporary link would break every panel when it expires.

Identify the character by characterId (from aetherwave_comic_create or aetherwave_comic_status) or by exact characterName.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
countNogenerate: how many images, 1 to 4 (default 1). 6 credits each.
actionYes
baseUrlNogenerate: one of this character's existing images to edit. Requires editPrompt.
imageUrlNoapprove: the image to approve.
projectIdYes
editPromptNogenerate: what to change or emphasise.
characterIdNo
characterNameNoAlternative to characterId: the character's name, matched without case.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Beyond annotations, the description discloses important behaviors: generated images are added rather than replacing existing ones, images persist in AetherWave storage, edits preserve the same person, approve re-describes the character from the image, and timed-out calls still save images retrievable via status. This is rich behavioral disclosure with no contradiction to 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 long but dense and well-organized, front-loaded with the core purpose and then structured by action. Every sentence contributes operational guidance, including edge cases like timeout behavior and URL expiration. No filler or redundancy appears.

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?

Given the tool's two-action complexity and no output schema, the description covers invocation, credit cost, parameter relationships, approval timing, storage durability, and failure fallback. It is slightly incomplete because projectId is required but never explained, and the tool's direct return value is not described; however, both are inferable from the workflow context.

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?

With schema description coverage at 63%, the description adds substantial meaning: count credit costs, baseUrl requiring editPrompt, approve's imageUrl, and characterId/characterName identification. The main gap is projectId, a required parameter with no description in either the schema or the tool description, though its meaning is likely inherited from the surrounding workflow.

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: it gives a comic character a reference image, with two explicit actions (generate and approve). It clearly distinguishes this tool from generic image-generation siblings by emphasizing that this reference is what every panel uses to keep the character consistent, and it names related tools for context.

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 clear context for both actions: generate costs credits and adds options; approve is free and must happen before aetherwave_comic_write_script. It also constrains acceptable image URLs. It does not explicitly contrast this with aetherwave_generate_image or aetherwave_edit_image, but the unique character-consistency purpose is clear enough.

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.

Resources