Skip to main content
Glama

midjourney_edit

Modify existing images by applying a text prompt, with optional mask to edit specific regions, add elements, or change styles.

Instructions

Edit an existing image using Midjourney.

This allows you to modify an existing image based on a text prompt,
optionally using a mask to specify which regions to edit.

Use this when:
- You want to modify an existing image with AI
- You want to add or change elements in an image
- You want to apply style changes to an image
- You need to edit specific regions using a mask

For masks:
- White areas in the mask indicate regions to regenerate
- Black areas will be preserved from the original

Returns:
    Task ID and edited image information including URLs and dimensions.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
maskNoOptional Base64-encoded mask image. White areas indicate regions to edit and regenerate.
modeNoGeneration mode. 'fast' is recommended.fast
asyncNoWhether to process the request asynchronously.
promptYesDescription of how to edit the image. Examples: 'A cat sitting on a table', 'Add a sunset in the background', 'Make it look like a watercolor painting'
image_urlYesURL of the image to edit. Must be a direct image URL (not a web page).
callback_urlNoWebhook callback URL for asynchronous notifications. When provided, the API will call this URL when the edit is complete.
split_imagesNoIf true, split the result into separate images returned via sub_image_urls.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changedv0.1.10
    • addedInput schema / properties / async
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "boolean"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Whether to process the request asynchronously.",
      +  "title": "Async"
      +}
  2. Addedv0.1.5
  3. Removedv0.1.4
  4. Changed1 schema field changedv0.1.1
    • addedInput schema / properties / callback_url
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the edit is complete.",
      +  "title": "Callback Url"
      +}
  5. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description must carry behavioral disclosure. It explains important behavior like mask semantics (white regenerates, black preserves) and that the tool returns task ID plus image information. However, it does not disclose side effects, async behavior, failure modes, or any requirements beyond the 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?

The description is well-organized with a short summary, bulleted use cases, mask guidance, and return info. It is not overly verbose and front-loads the core purpose. The four 'Use this when' bullets are slightly overlapping but still earn their place by clarifying intended scenarios.

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 has 7 parameters, an output schema, and 100% schema coverage, the description provides enough operational context: what it does, when to use it, how masks work, and what is returned. It does not discuss async/callback modes, but those are fully documented in the schema, so the description does not need to repeat them.

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 description coverage is 100%, giving a baseline of 3. The description adds value by explicitly stating black mask areas are preserved, which complements the schema's white-region semantics, and by clarifying 'optionally using a mask' in the main description. This adds meaning beyond the structured schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Edit'), the resource ('an existing image'), and the method (via text prompt, optionally with mask). It distinguishes the tool from image generation siblings like midjourney_imagine, though it does not explicitly name a sibling to differentiate from.

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 'Use this when' section provides clear contextual scenarios: modifying existing images, adding/changing elements, applying style changes, and region-specific edits. It does not explicitly list exclusions or when to prefer a sibling tool like midjourney_transform, but the usage context is clear and actionable.

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

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AceDataCloud/MidjourneyMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server