CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
acedatacloud avatar

Midjourney

acedatacloud/midjourneymcp
1315 toolsauthSTDIO, HTTPregistry active
Summary

Connects Claude and other MCP clients to Midjourney's image and video generation through the AceDataCloud API. Exposes 15 tools covering the full creative workflow: imagine for text-to-image, transform for upscaling and variations, blend for combining images, describe for reverse prompting, and edit for masked modifications. Also handles video generation and extension, reference-based creation, seed extraction, and task tracking. Hosted endpoint means no local setup, just drop in your AceDataCloud token and start generating. Useful when you want AI image workflows directly in your chat or editor without switching to Discord or the Midjourney web interface.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Lid closed, agents working
Lid closed, agents working
Keeps your Mac awake while Claude Code, Codex or Cursor works. Lets it sleep when they are done.
Try free for 7 days →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Lid closed, agents working
Lid closed, agents working
Keeps your Mac awake while Claude Code, Codex or Cursor works. Lets it sleep when they are done.
Try free for 7 days →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →

Tools

Public tool metadata for what this MCP can expose to an agent.

15 tools
midjourney_describeGet AI-generated descriptions of an image. This analyzes an image and returns 4 alternative text descriptions that could be used as prompts to recreate similar images with Midjourney. Use this when: - You want to understand what prompts might create a similar image - You want...1 params

Get AI-generated descriptions of an image. This analyzes an image and returns 4 alternative text descriptions that could be used as prompts to recreate similar images with Midjourney. Use this when: - You want to understand what prompts might create a similar image - You want...

Parameters* required
image_urlstring
URL of the image to describe. Must be a direct image URL (JPEG, PNG, GIF, etc.), not a web page containing an image.
midjourney_editEdit 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...6 params

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...

Parameters* required
callback_urlvalue
Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the edit is complete.
image_urlstring
URL of the image to edit. Must be a direct image URL (not a web page).
maskstring
Optional Base64-encoded mask image. White areas indicate regions to edit and regenerate.default:
modestring
Generation mode. 'fast' is recommended.one of fast · relax · turbodefault: fast
promptstring
Description 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'
split_imagesboolean
If true, split the result into separate images returned via sub_image_urls.default: false
midjourney_imagineGenerate AI images from a text prompt using Midjourney. This is the primary way to create images - describe what you want and Midjourney will generate a 2x2 grid of 4 image variations. Use this when: - You want to create new images from a text description - You have a creative...11 params

Generate AI images from a text prompt using Midjourney. This is the primary way to create images - describe what you want and Midjourney will generate a 2x2 grid of 4 image variations. Use this when: - You want to create new images from a text description - You have a creative...

Parameters* required
callback_urlvalue
Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the image is generated.
hdboolean
Enable HD mode (V8 only). Generates higher resolution images at 4x cost. Requires version='8'.default: false
modestring
Generation mode. 'fast' is recommended for most use cases. 'turbo' is faster but uses more credits. 'relax' is slower but cheaper.one of fast · relax · turbodefault: fast
moodboardboolean
Whether using moodboard feature (V8 only, multiple reference images). Incurs 4x cost.default: false
promptstring
Description of the image to generate. Be descriptive about style, subject, lighting, and composition. Examples: 'A majestic lion in a savanna at sunset, cinematic lighting', 'Cyberpunk city street...
qualityvalue
Image quality level. For V8: '1' (standard) or '4' (ultra, 4x cost). For older versions: '.25', '.5', or '1'. HD + quality '4' = 16x cost.
split_imagesboolean
If true, split the 2x2 grid result into 4 separate images returned via sub_image_urls.default: false
style_referenceboolean
Whether the prompt includes --sref style reference. In V8 this incurs 4x cost.default: false
timeoutvalue
Timeout in seconds for the API to return data. Default is 480.
translationboolean
If true, automatically translate non-English prompts to English for better results.default: false
versionvalue
Midjourney model version to use. '8' is the latest V8 Alpha with HD and ultra quality support. Leave unset to use Midjourney's default.
midjourney_transformTransform an existing Midjourney image with various operations. This allows you to upscale, create variations, zoom, or pan existing images generated by Midjourney. Use this when: - You want to upscale one of the 4 images from a generation - You want to create variations of a...5 params

Transform an existing Midjourney image with various operations. This allows you to upscale, create variations, zoom, or pan existing images generated by Midjourney. Use this when: - You want to upscale one of the 4 images from a generation - You want to create variations of a...

Parameters* required
actionstring
Transformation action to perform. Options include: - upscale1/2/3/4: Upscale one of the 4 images (top-left=1, top-right=2, bottom-left=3, bottom-right=4) - upscale_2x/4x: Further upscale an already...one of generate · upscale1 · upscale2 · upscale3 · upscale4 · upscale_2x
image_idstring
ID of the image to transform. This is the 'image_id' field from a previous generation result.
maskstring
Base64-encoded mask image for variation_region action. White areas indicate regions to regenerate.default:
modestring
Generation mode for the transformation.one of fast · relax · turbodefault: fast
promptstring
Optional prompt for the transformation. Used with variation_region action.default:
midjourney_blendBlend multiple images together using Midjourney. This allows you to combine 2-5 images into a new creative fusion. Use this when: - You want to merge elements from multiple images - You want to create composite images - You want to blend styles or subjects together Example: -...3 params

Blend multiple images together using Midjourney. This allows you to combine 2-5 images into a new creative fusion. Use this when: - You want to merge elements from multiple images - You want to create composite images - You want to blend styles or subjects together Example: -...

Parameters* required
image_urlsarray
List of image URLs to blend together. Supports 2-5 images. Images should be pure image URLs (not web pages containing images).
modestring
Generation mode.one of fast · relax · turbodefault: fast
promptstring
Description of how to blend the images. Examples: 'The bear is holding the chainsaw', 'Combine the face with the background'default:
midjourney_with_referenceGenerate images using a reference image as inspiration. This allows you to use an existing image as a starting point and modify it based on your prompt description. Use this when: - You want to reimagine an existing image with modifications - You want to change the style of an...3 params

Generate images using a reference image as inspiration. This allows you to use an existing image as a starting point and modify it based on your prompt description. Use this when: - You want to reimagine an existing image with modifications - You want to change the style of an...

Parameters* required
modestring
Generation mode.one of fast · relax · turbodefault: fast
promptstring
Description of how to modify or reimagine the reference image. Examples: 'an illustration of a car parked on the beach --iw 2', 'in the style of Van Gogh'
reference_image_urlstring
URL of the reference image to use as a base. Must be a direct image URL (not a web page).
midjourney_list_actionsList all available Midjourney API actions and corresponding tools. Reference guide for what each action does and which tool to use. Helpful for understanding the full capabilities of the Midjourney MCP. Returns: Categorized list of all actions and their corresponding tools.

List all available Midjourney API actions and corresponding tools. Reference guide for what each action does and which tool to use. Helpful for understanding the full capabilities of the Midjourney MCP. Returns: Categorized list of all actions and their corresponding tools.

No parameter schema in public metadata yet.

midjourney_get_prompt_guideGet guidance on writing effective prompts for Midjourney. Shows how to structure prompts and use parameters for best results. Following this guide helps Midjourney understand your creative vision. Returns: Complete guide with prompt structure, parameters, and examples.

Get guidance on writing effective prompts for Midjourney. Shows how to structure prompts and use parameters for best results. Following this guide helps Midjourney understand your creative vision. Returns: Complete guide with prompt structure, parameters, and examples.

No parameter schema in public metadata yet.

midjourney_list_transform_actionsList all available transformation actions for Midjourney images. Reference guide for transform actions used with midjourney_transform tool. Returns: Detailed list of all transformation actions and when to use them.

List all available transformation actions for Midjourney images. Reference guide for transform actions used with midjourney_transform tool. Returns: Detailed list of all transformation actions and when to use them.

No parameter schema in public metadata yet.

midjourney_get_seedGet the seed value of a previously generated Midjourney image. The seed is a numeric value that controls the randomness of generation. Using the same seed with the same prompt will produce similar results, which is useful for reproducible generation or fine-tuning prompts. Use...1 params

Get the seed value of a previously generated Midjourney image. The seed is a numeric value that controls the randomness of generation. Using the same seed with the same prompt will produce similar results, which is useful for reproducible generation or fine-tuning prompts. Use...

Parameters* required
image_idstring
The ID of the generated image to get the seed for. This is the 'image_id' field from a previous imagine result.
midjourney_get_taskQuery the status and result of a Midjourney generation task. Use this to check if a generation is complete and retrieve the resulting image/video URLs and metadata. Use this when: - You want to check if a generation has completed - You need to retrieve URLs from a previous gen...1 params

Query the status and result of a Midjourney generation task. Use this to check if a generation is complete and retrieve the resulting image/video URLs and metadata. Use this when: - You want to check if a generation has completed - You need to retrieve URLs from a previous gen...

Parameters* required
task_idstring
The task ID returned from a generation request. This is the 'task_id' field from any midjourney_imagine, midjourney_describe, midjourney_edit, or midjourney_generate_video tool response.
midjourney_get_tasks_batchQuery multiple Midjourney generation tasks at once. Efficiently check the status of multiple tasks in a single request. More efficient than calling midjourney_get_task multiple times. Use this when: - You have multiple pending generations to check - You want to get status of s...1 params

Query multiple Midjourney generation tasks at once. Efficiently check the status of multiple tasks in a single request. More efficient than calling midjourney_get_task multiple times. Use this when: - You have multiple pending generations to check - You want to get status of s...

Parameters* required
task_idsarray
List of task IDs to query. Maximum recommended batch size is 50 tasks.
midjourney_translateTranslate Chinese text to English for use as Midjourney prompts. Midjourney works best with English prompts. This tool helps translate Chinese descriptions to English, optimized for image generation. Use this when: - You have a Chinese description that needs translation - You...1 params

Translate Chinese text to English for use as Midjourney prompts. Midjourney works best with English prompts. This tool helps translate Chinese descriptions to English, optimized for image generation. Use this when: - You have a Chinese description that needs translation - You...

Parameters* required
contentstring
Chinese text to translate to English. This is useful for converting Chinese prompts to English for better Midjourney results.
midjourney_generate_videoGenerate a video from text prompt and reference image using Midjourney. This creates an AI-generated video based on your description and a starting frame image. You can optionally specify an ending frame for more control. Use this when: - You want to animate a still image - Yo...7 params

Generate a video from text prompt and reference image using Midjourney. This creates an AI-generated video based on your description and a starting frame image. You can optionally specify an ending frame for more control. Use this when: - You want to animate a still image - Yo...

Parameters* required
callback_urlvalue
Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the video is generated.
end_image_urlstring
Optional URL of the last frame reference image. Use this to control where the video ends.default:
image_urlstring
URL of the first frame reference image. This image will be used as the starting point for the video.
loopboolean
If true, generate a looping video where the end seamlessly connects to the beginning.default: false
modestring
Generation mode. 'fast' is recommended for most use cases.one of fast · relax · turbodefault: fast
promptstring
Description of the video to generate. Examples: 'A cat walking on a table', 'Ocean waves crashing on the shore', 'Timelapse of clouds moving'
resolutionstring
Video resolution. '720p' or '480p'.one of 480p · 720pdefault: 720p
midjourney_extend_videoExtend an existing Midjourney video to make it longer. This allows you to continue a previously generated video by adding more frames based on your prompt description. Use this when: - You want to make a video longer - You want to continue the story or motion from an existing...6 params

Extend an existing Midjourney video to make it longer. This allows you to continue a previously generated video by adding more frames based on your prompt description. Use this when: - You want to make a video longer - You want to continue the story or motion from an existing...

Parameters* required
callback_urlvalue
Webhook callback URL for asynchronous notifications. When provided, the API will call this URL when the video extension is complete.
end_image_urlstring
Optional URL of an image to use as the final frame of the extended video.default:
modestring
Generation mode.one of fast · relax · turbodefault: fast
promptstring
Description for the video extension. This guides how the video should continue.
video_idstring
ID of the video to extend. This is the 'video_id' field from a previous video generation result.
video_indexinteger
Index of the video to extend from the video_urls array. 0-indexed, default is 0 (first video).default: 0

MidjourneyMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

A Model Context Protocol (MCP) server for AI image and video generation using Midjourney through the AceDataCloud API.

Generate AI images, videos, and manage creative projects directly from Claude, VS Code, or any MCP-compatible client.

Features

  • Image Generation - Create AI-generated images from text prompts
  • Image Transformation - Upscale, create variations, zoom, and pan images
  • Image Blending - Combine multiple images into creative fusions
  • Reference-Based Generation - Use existing images as inspiration
  • Image Description - Get AI descriptions of images (reverse prompt)
  • Image Editing - Edit images with text prompts and masks
  • Video Generation - Create videos from text and reference images
  • Video Extension - Extend existing videos to make them longer
  • Translation - Translate Chinese prompts to English
  • Task Tracking - Monitor generation progress and retrieve results

Tool Reference

ToolDescription
midjourney_imagineGenerate AI images from a text prompt using Midjourney.
midjourney_transformTransform an existing Midjourney image with various operations.
midjourney_blendBlend multiple images together using Midjourney.
midjourney_with_referenceGenerate images using a reference image as inspiration.
midjourney_editEdit an existing image using Midjourney.
midjourney_describeGet AI-generated descriptions of an image.
midjourney_generate_videoGenerate a video from text prompt and reference image using Midjourney.
midjourney_extend_videoExtend an existing Midjourney video to make it longer.
midjourney_translateTranslate Chinese text to English for use as Midjourney prompts.
midjourney_shortenAnalyze and shorten long Midjourney prompts while preserving key ideas.
midjourney_get_seedGet the seed value of a previously generated Midjourney image.
midjourney_get_taskQuery the status and result of a Midjourney generation task.
midjourney_get_tasks_batchQuery multiple Midjourney generation tasks at once.
midjourney_list_actionsList all available Midjourney API actions and corresponding tools.
midjourney_get_prompt_guideGet guidance on writing effective prompts for Midjourney.
midjourney_list_transform_actionsList all available transformation actions for Midjourney images.

Connect: hosted OAuth, API token, or local stdio

The hosted endpoint is https://midjourney.mcp.acedata.cloud/mcp. Choose one route for the MCP client:

RouteWhen to use itCredential setup
Hosted OAuthThe client supports remote MCP OAuthAdd only the URL, then sign in to AceDataCloud and approve access. No token needs to be pasted into client configuration.
Hosted API tokenThe client cannot finish OAuth, or you need an explicit integration credentialSend an AceDataCloud API token in the Authorization: Bearer … header. Keep it in a local secret store or environment variable.
Local stdioThe client runs a local MCP processInstall mcp-midjourney and pass ACEDATACLOUD_API_TOKEN to that process. It still calls the AceDataCloud API.

The hosted service advertises OAuth metadata and Dynamic Client Registration (DCR). DCR registers the client application; it is not an API key. OAuth signs you in and the client sends the resulting Bearer token; it may reuse or create an API credential for the account. Browser sign-in still requires an AceDataCloud account. The hosted service can be metered: review current service documentation and displayed pricing before a real operation. Do not configure both an OAuth login and a fixed Authorization header for the same server.

Hosted OAuth examples

  • Claude and Claude Desktop chat: Add a remote custom connector in Customize → Connectors → Add custom connector, enter https://midjourney.mcp.acedata.cloud/mcp, select sign-in, and choose Register automatically if Claude asks how to register its OAuth client. Complete consent. Claude Desktop's local claude_desktop_config.json is a separate setup. Claude connector guide.
  • Claude Code: claude mcp add --transport http --scope user midjourney https://midjourney.mcp.acedata.cloud/mcp, then claude mcp login midjourney. Check /mcp. Claude Code MCP guide.
  • Cursor: Add a remote server with only https://midjourney.mcp.acedata.cloud/mcp. For a project, merge the entry below into <project>/.cursor/mcp.json; for personal use, use ~/.cursor/mcp.json. Cursor MCP guide.
  • VS Code / Copilot: Run MCP: Add Server, select HTTP, enter https://midjourney.mcp.acedata.cloud/mcp, then finish the browser sign-in. New portable workspace configs use <project>/.mcp.json; the VS Code-specific format below uses <project>/.vscode/mcp.json or the user profile. Check MCP: List Servers. VS Code MCP setup.
  • Codex: codex mcp add midjourney --url https://midjourney.mcp.acedata.cloud/mcp, then codex mcp login midjourney. Its user settings are in ~/.codex/config.toml. Official Codex MCP guide.

Cursor project config (OAuth):

{
  "mcpServers": {
    "midjourney": {"url": "https://midjourney.mcp.acedata.cloud/mcp"}
  }
}

VS Code-specific workspace config (OAuth):

{
  "servers": {
    "midjourney": {"type": "http", "url": "https://midjourney.mcp.acedata.cloud/mcp"}
  }
}

Hosted API token

  1. Open Ace Data Cloud → Applications. Sign in, or register an account first.
  2. Find General application. If it has not been created, choose Initialize General Application. A general key can use the services available to your account; a dedicated application's key is limited to its service. Check the required service/model access and current pricing.
  3. Copy the API Key from the application card, or open Keys / Manage Keys → Create to create a separate key for this integration. Give it a recognizable name so you can revoke or rotate it independently.
  4. When creating a key, review Expiration Time, Set Usage Limitation, and Allowed APIs. Enable only the restrictions you need, allow the operations you will call, then click Create and copy the token from the key list. Task lookup does not grant permission to submit a generation. Confirm the application's balance can cover your first request; any trial allowance is whatever your account currently displays.
  5. Copy only the token value, without quotation marks, spaces, or Bearer . An API Key / API Token field expects this raw value; only a manually configured HTTP Authorization header needs the Bearer prefix. A platform-... account-management token cannot replace a generation API key.

Copy an application API key or open Manage Keys

Create a separately named key with optional restrictions

Save the key in the client's credential store or the environment variable shown below. Never put it in a prompt, shared workflow, screenshot, or Git commit. If authentication fails, check the full copied value, application/service access, expiration, usage limit, and balance before creating another key.

A fixed Bearer header bypasses OAuth. If the header is invalid, remove it before trying browser sign-in; keep the saved credential private.

For Claude Code, the shell expands the token when you add the server; treat the saved user MCP config as a secret:

export ACEDATACLOUD_API_TOKEN='YOUR_API_TOKEN'
claude mcp add --transport http --scope user midjourney https://midjourney.mcp.acedata.cloud/mcp \
  --header "Authorization: Bearer $ACEDATACLOUD_API_TOKEN"

For a Claude Code project config, put a variable reference in <project>/.mcp.json and set that variable in the environment that launches Claude Code:

{
  "mcpServers": {
    "midjourney": {
      "type": "http",
      "url": "https://midjourney.mcp.acedata.cloud/mcp",
      "headers": {"Authorization": "Bearer ${ACEDATACLOUD_API_TOKEN}"}
    }
  }
}

Cursor uses a different environment-variable syntax in ~/.cursor/mcp.json or an uncommitted project config:

{
  "mcpServers": {
    "midjourney": {
      "url": "https://midjourney.mcp.acedata.cloud/mcp",
      "headers": {"Authorization": "Bearer ${env:ACEDATACLOUD_API_TOKEN}"}
    }
  }
}

In VS Code, run MCP: Open User Configuration and merge this server plus its masked input; ${input:...} is for VS Code's user/workspace format and is not portable to the Agent Host .mcp.json format:

{
  "inputs": [
    {"id": "acedata-midjourney-token", "type": "promptString", "description": "AceDataCloud API token", "password": true}
  ],
  "servers": {
    "midjourney": {
      "type": "http",
      "url": "https://midjourney.mcp.acedata.cloud/mcp",
      "headers": {"Authorization": "Bearer ${input:acedata-midjourney-token}"}
    }
  }
}

For Cline, use its MCP configuration UI or CLI file ~/.cline/data/settings/cline_mcp_settings.json; its remote transport value is streamableHttp. For JetBrains AI Assistant, add a remote URL from Settings → Tools → AI Assistant → Model Context Protocol (MCP). For Zed, use a context_servers entry with the URL only for OAuth or add a local Bearer header. These clients have different configuration schemas; follow their current UI rather than copying another client's JSON. Cline · JetBrains · Zed.

Local stdio

Install the package and give the local process an API token:

python -m pip install mcp-midjourney
export ACEDATACLOUD_API_TOKEN='YOUR_API_TOKEN'
mcp-midjourney

For Claude Desktop local MCP, merge this entry into the file opened by its developer settings (~/Library/Application Support/Claude/claude_desktop_config.json on macOS). uvx requires uv on PATH:

{
  "mcpServers": {
    "midjourney": {
      "command": "uvx",
      "args": ["mcp-midjourney"],
      "env": {"ACEDATACLOUD_API_TOKEN": "YOUR_API_TOKEN"}
    }
  }
}

Keep this user-level file private. Self-hosted HTTP uses mcp-midjourney --transport http --port 8000; expose it only with suitable network and TLS controls. Local execution still calls the AceDataCloud API.

Check before using the service

  1. https://midjourney.mcp.acedata.cloud/health returning {"status":"ok"} checks endpoint reachability only.
  2. Confirm that the MCP client loads tools. midjourney_list_actions is a reference tool; it does not verify downstream API access or balance.
  3. If you need a full API check, call midjourney_generate_video with your own valid input after reviewing current service documentation and displayed pricing. If the result contains a task ID, call midjourney_get_task on that same ID until terminal success or failure. Do not resubmit the operation just to check progress.

For 401, check which auth route the client used and whether the token or OAuth session is valid. A 403 may mean an account permission or content moderation failure; read the returned error. Insufficient balance and downstream service failures need their own diagnosis. A listed tool or submitted task does not prove a successful result.

Available Tools

Image Generation

ToolDescription
midjourney_imagineGenerate images from a text prompt (creates 2x2 grid)
midjourney_transformTransform images (upscale, variation, zoom, pan)
midjourney_blendBlend multiple images together
midjourney_with_referenceGenerate using a reference image as inspiration

Image Editing

ToolDescription
midjourney_editEdit an existing image with text prompt
midjourney_describeGet AI descriptions of an image (reverse prompt)

Video

ToolDescription
midjourney_generate_videoGenerate video from text and reference image
midjourney_extend_videoExtend existing video to make it longer

Utility

ToolDescription
midjourney_translateTranslate Chinese text to English for prompts
midjourney_get_seedGet the seed value of a generated image

Tasks

ToolDescription
midjourney_get_taskQuery a single task status
midjourney_get_tasks_batchQuery multiple tasks at once

Information

ToolDescription
midjourney_list_actionsList available API actions
midjourney_get_prompt_guideGet prompt writing guide
midjourney_list_transform_actionsList transformation actions

Usage Examples

Generate Image from Prompt

User: Create a cyberpunk city at night

Claude: I'll generate a cyberpunk city image for you.
[Calls midjourney_imagine with prompt="Cyberpunk city at night, neon lights, rain, futuristic, detailed --ar 16:9"]

Upscale an Image

User: Upscale the second image

Claude: I'll upscale the top-right image from the grid.
[Calls midjourney_transform with image_id and action="upscale2"]

Blend Multiple Images

User: Blend these two images: [url1] and [url2]

Claude: I'll blend these images together.
[Calls midjourney_blend with image_urls=[url1, url2]]

Generate Video

User: Animate this image [url] with gentle movement

Claude: I'll create a video from this image.
[Calls midjourney_generate_video with image_url and prompt="Gentle camera movement, cinematic"]

Generation Modes

ModeDescription
fastRecommended for most use cases (default)
turboFaster generation, uses more credits
relaxSlower generation, cheaper

Configuration

Environment Variables

VariableDescriptionDefault
ACEDATACLOUD_API_TOKENAPI token from AceDataCloudRequired
ACEDATACLOUD_API_BASE_URLAPI base URLhttps://api.acedata.cloud
ACEDATACLOUD_OAUTH_CLIENT_IDOAuth client ID (hosted mode)—
ACEDATACLOUD_PLATFORM_BASE_URLPlatform base URLhttps://platform.acedata.cloud
MIDJOURNEY_DEFAULT_MODEDefault generation modefast
MIDJOURNEY_REQUEST_TIMEOUTRequest timeout in seconds1800
LOG_LEVELLogging levelINFO

Command Line Options

mcp-midjourney --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

Development

Setup Development Environment

# Clone repository
git clone https://github.com/AceDataCloud/MidjourneyMCP.git
cd MidjourneyMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

Run Tests

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

Code Quality

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

Build & Publish

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

Project Structure

MidjourneyMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for Midjourney API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   ├── server.py          # MCP server initialization
│   ├── types.py           # Type definitions
│   └── utils.py           # Utility functions
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── describe_tools.py  # Image description tools
│   ├── edits_tools.py     # Image editing tools
│   ├── imagine_tools.py   # Image generation tools
│   ├── info_tools.py      # Information tools
│   ├── task_tools.py      # Task query tools
│   ├── translate_tools.py # Translation tools
│   └── video_tools.py     # Video generation tools
├── prompts/                # MCP prompt templates
│   └── __init__.py
├── tests/                  # Test suite
├── deploy/                 # Deployment configs
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

API Reference

This server wraps the AceDataCloud Midjourney API:

  • Midjourney Imagine API - Image generation
  • Midjourney Describe API - Image description
  • Midjourney Tasks API - Task queries
  • Midjourney Edits API - Image editing
  • Midjourney Videos API - Video generation
  • Midjourney Translate API - Translation

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing)
  5. Open a Pull Request

Service details

Service details

License

MIT License - see LICENSE for details.

Links

  • AceDataCloud Platform
  • Midjourney Official
  • Model Context Protocol
  • MCP Python SDK

Made with love by AceDataCloud

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Lid closed, agents working
Lid closed, agents working
Keeps your Mac awake while Claude Code, Codex or Cursor works. Lets it sleep when they are done.
Try free for 7 days →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
Open Steps
Open Steps
Free an open-source skills that make AI coding agents easier to understand, verify, and control.
Download for free →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →

Configuration

ACEDATACLOUD_API_TOKEN*secret

API token from Ace Data Cloud (https://platform.acedata.cloud)

Categories
Design & Creative
Registryactive
Packagemcp-midjourney
TransportSTDIO, HTTP
AuthRequired
UpdatedJun 9, 2026
View on GitHub

More from acedatacloud

  • Mcp Nanobanana Pro6
  • Mcp Seedance5
  • Mcp Flux Pro1
  • Mcp Sora1
  • Mcp Hailuo
  • Mcp Kling
  • Mcp Luma
  • Mcp Producer
  • Mcp Seedream Pro
  • Mcp Serp
  • Mcp Shorturl
  • Mcp Veo
  • Mcp Wan
  • Mcp Suno13

Related Design & Creative MCP Servers

View all →
funplayai avatar
Funplay Godot MCP

funplayai/funplay-godot-mcp

stdio bridge for the local Godot Editor MCP server from FunplayAI/funplay-godot-mcp.
12
gregario avatar
Godot Forge

gregario/godot-forge

Godot 4 MCP server — test runner, API docs, script analysis, scene parsing, LSP.
7
cmd8 avatar
Excalidraw Mcp

cmd8/excalidraw-mcp

Model Context Protocol server for Excalidraw diagrams.
4
neozhehan avatar
Figma Edit Mcp

neozhehan/figma-edit-mcp

Programmatically read, create, and modify Figma designs via MCP.
4
bruchris avatar
Canvas Lms Mcp

bruchris/canvas-lms-mcp

TypeScript MCP server for Canvas LMS — 115 read+write tools across 17 domains.
3
felixanhalt avatar
Figma Context Mcp

felixanhalt/figma-context-mcp

LLM-optimized Figma MCP server.
3