Install
openclaw skills install @germey/acedatacloud-midjourney-imageGenerate, edit, blend, upscale, and describe images with Midjourney via AceDataCloud API. Use when creating AI images from text prompts, editing existing images, generating 2x2 grids, upscaling, creating variations, blending multiple images, reverse-prompting from images, or generating video from images. Supports versions 5.2 through 8.
openclaw skills install @germey/acedatacloud-midjourney-imageGenerate and manipulate AI images through AceDataCloud's Midjourney API.
export ACEDATACLOUD_API_TOKEN="your-token-here"
curl -X POST https://api.acedata.cloud/midjourney/imagine \
-H "Authorization: Bearer $ACEDATACLOUD_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"prompt": "a futuristic city at sunset, cyberpunk style --ar 16:9", "wait": true}'
| Mode | Speed | Cost | Best For |
|---|---|---|---|
fast | Fast | Standard | Most tasks (default) |
relax | Slow | Cheaper | Batch generation |
turbo | Fastest | Premium | Time-sensitive work |
| Version | Notes |
|---|---|
8 | Latest, best quality |
7 | Great quality, fast |
6.1 | Stable, well-tested |
6 | Previous generation |
5.2 | Legacy |
Creates a 2x2 grid of 4 image variations.
POST /midjourney/imagine
{
"prompt": "a serene mountain lake at dawn, photorealistic --ar 16:9 --v 7",
"mode": "fast",
"translation": true,
"split_images": true
}
Set translation: true to auto-translate non-English prompts. Set split_images: true to get individual images besides the grid.
After generating a grid, use transform actions on individual images:
POST /midjourney/imagine
{
"action": "upscale1",
"image_id": "grid-image-id"
}
Available actions:
upscale1–upscale4: Upscale individual quadrantvariation1–variation4: Create variation of a quadrantvariation_subtle / variation_strong: Subtle/strong variation of full imagereroll: Re-generate with same promptzoom_out_2x / zoom_out_1_5x: Zoom outpan_left / pan_right / pan_up / pan_down: Extend canvasModify an existing image using a text prompt, optionally with a mask.
POST /midjourney/edits
{
"image_url": "https://example.com/photo.jpg",
"prompt": "add a rainbow in the sky",
"mode": "fast"
}
Combine 2–5 images into a new composition.
POST /midjourney/imagine
{
"action": "blend",
"image_urls": [
"https://example.com/image1.jpg",
"https://example.com/image2.jpg"
]
}
Get AI-generated text descriptions of an image (returns 4 options).
POST /midjourney/describe
{"image_url": "https://example.com/photo.jpg"}
Create a video with a reference image and text prompt.
POST /midjourney/videos
{
"image_url": "https://example.com/photo.jpg",
"prompt": "the city comes alive with moving traffic",
"resolution": "720p"
}
Append these to your prompt text:
| Parameter | Example | Description |
|---|---|---|
--ar | --ar 16:9 | Aspect ratio |
--v | --v 7 | Midjourney version |
--q | --q 2 | Quality (0.25, 0.5, 1, 2) |
--s | --s 750 | Stylization (0–1000) |
--c | --c 50 | Chaos/variety (0–100) |
--no | --no text, watermark | Negative prompt |
--seed | --seed 12345 | Reproducible generation |
POST /midjourney/tasks
{"task_id": "your-task-id"}
pip install mcp-midjourney
Or hosted: https://midjourney.mcp.acedata.cloud/mcp
Key tools: midjourney_imagine, midjourney_transform, midjourney_edit, midjourney_blend, midjourney_describe, midjourney_generate_video
split_images: true to also receive individual cropped images alongside the grid--ar, --v, etc.) go inside the prompt string, not as separate fieldstranslation: true auto-translates Chinese/other languages to English before sending to Midjourneyimage_url — it cannot generate from text aloneavailable_actions in the responsePOST /midjourney/seed using the image_id for reproducible results