Edit image with AI (I2I)
aetherwave_edit_imageEdits an existing image guided by a text prompt. Pass a public imageUrl plus a prompt describing the change ("add a moon to the sky", "swap the background for a neon city", "make it look like a comic panel"). Submits, polls, and returns the edited image URL(s). Default model is 'grok-imagine-i2i' (10 cr, one image, ~15-30s, best cost-to-quality on standard edits). Other I2I-capable models: 'seedream-v4-edit', 'wan-2.5-spicy-i2i', 'flux-kontext-pro', 'qwen-image-edit', 'gpt-image-1.5-i2i' (slow, ~5min). Use list_image_models for full lineup. Note: source URLs with spaces or parentheses may fail upstream; prefer clean URLs.
Model selection guide for edits
Default: grok-imagine-i2i (10 cr, one image, fast ~15-30s, strong general-purpose edit quality).
Pick a different model when:
Need a single deterministic output, or 4K resolution ->
seedream-v4-edit(7 cr per image, supports 1K/2K/4K, multi-image up to 6)Subtle edits / preserve composition / character consistency ->
flux-kontext-proorflux-kontext-maxNSFW edits ->
wan-2.5-spicy-i2iHighest quality, time is not a concern (~5 min OK) ->
gpt-image-1.5-i2i(6 cr medium, 31 cr high) orgrok-imagine-quality-i2i(14 cr)
If the user simply says "edit this image" with no other signal, default to grok-imagine-i2i.
Returns within ~45 s. If the result has state "running" the job is still rendering: poll aetherwave_get_job with the returned taskId and kind every ~10 s. Pass wait:true ONLY if your MCP client permits tool calls longer than 60 s (most do not). Pass async:true to get the taskId back immediately without waiting.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| wait | No | Block until the job finishes (up to the tool's full budget, 6-15 minutes). ONLY if your MCP client permits tool calls longer than 60 s; most abandon the call at 60 s and lose the taskId. Default false: return within ~45 s and hand back a taskId if still running. | |
| async | No | Submit and return the taskId immediately without polling at all. Then poll aetherwave_get_job(taskId, kind). | |
| model | No | Model ID. Defaults to 'grok-imagine-i2i' (10 cr, one image). Other options: 'seedream-v4-edit', 'wan-2.5-spicy-i2i', 'flux-kontext-pro', 'qwen-image-edit', 'gpt-image-1.5-i2i', 'grok-imagine-quality-i2i'. Use list_image_models for the full list. | |
| prompt | Yes | Text description of the edit (e.g. 'replace the sky with sunset clouds'). | |
| quality | No | Quality preset for models that support it (e.g. GPT Image 2). | |
| imageUrl | Yes | Public URL of the source image to edit. Must be a real, fetchable URL. | |
| maxImages | No | Number of variations to return for multi-output models. | |
| resolution | No | Output resolution. Tiered-pricing models accept '1K' / '2K'. | |
| aspectRatio | No | Output aspect ratio (e.g. '1:1', '16:9'). Defaults to the source ratio for most models. | |
| renderingSpeed | No | Rendering speed preset for models that support it. | |
| negative_prompt | No | What to avoid in the output (supported by some models). |