Midjourney MCP Server Tutorial: Apply for the Official Test and Generate Images from Claude Code Today

Introduction

Midjourney makes some of the most recognizable images on the internet, and for years the only way to get one was to type in Discord or the web app. There was no public API for an agent to call, so every automation idea stopped at the same wall. On October 10, 2026, Midjourney posted that it would open an official MCP server to a limited group of users as a test, and the wall finally cracked. The catch is that the test is application-gated, with no published tool list, pricing, or timeline. This tutorial covers both tracks: how to apply for the official test, and how to generate Midjourney images from Claude Code today with the community RunAPI MCP server, which installs in one command.

Quick answer

Apply for Midjourney’s limited MCP test through the official form, then generate images from Claude Code today with the community RunAPI MCP server: install it with one command, sign in, and ask for an image in plain language.

Evidence

The official announcement is small, and that is the point. Midjourney posted once, on October 10, 2026, that it would test an MCP server with a limited community, and attached an application form. No spec sheet, no pricing page, and no tool reference followed. The announcement drew 755 likes and 60 reposts in its first day, according to a detailed read of the announcement, which shows how much demand there is for agent access to Midjourney, even though the post itself promised almost nothing concrete.

The scope is the most important sentence in the announcement. Midjourney said the program is for “purely artistic and creative endeavors” and is not intended for Midjourney inside SaaS products. That is a direct quote of the program’s defining constraint, and it rules out the commercial API that developers have asked for for years. If you want to embed Midjourney in a product, this test is not your route.

The community did not wait. Unofficial bridges already wrap Midjourney’s web app, and the most capable hosted one advertises 16 tools covering imagine, transform, blend, describe, edit, video generation, video extension, and task tracking, from $0.04 per imagine job across Midjourney models 5.2 through 8. Demand for these bridges is measurable: the AceDataCloud hosted Midjourney server’s PyPI package was installed 1,168 times in the last week, up 98% week over week, and an independent monitor answered 92 of 92 handshake checks in 24 hours with an average response time of 1,576 ms, as of November 5, 2026.

The wider MCP ecosystem explains why this matters beyond one image model. A read of the official MCP registry published on October 22, 2026 connected to 2,760 servers and counted 34,764 tools, a median of six per server. In that sample, 54% listed their tools openly, while 37% wanted credentials first. Midjourney joining that ecosystem, even as a gated test, is the first sign it intends to be callable from an agent at all.

Prerequisites

You need a Midjourney account on any paid plan, because every generation route in this tutorial bills against a Midjourney-backed service. You need Claude Code installed and logged in, plus Node.js 18 or newer so the npx command works. You need a RunAPI account for the bridge in Step 2, which takes pay-as-you-go credit. You do not need a Midjourney API key, because Midjourney does not issue one. If you want a grounding in the protocol first, read the Model Context Protocol introduction, which explains how clients discover tools from a server. Our MCP server tutorial covers the same client concepts with a local server.

Step 1: Apply for the official Midjourney MCP limited test

Start with the official route, even though it may not admit you yet. Open the official @midjourney post dated October 10, 2026 and follow its application form link. The announcement and the form are the only primary sources for the program, and everything else you read about it is second-hand.

On the form, describe a creative or technical use case. Midjourney says the goal is to recruit creative and technical people to push the boundaries of its models, so say what you would actually make: a style-exploration agent, a storyboard pipeline, a video-extension experiment. Do not describe a SaaS product or a customer-facing feature, because the program explicitly excludes that. Submit once and move on. As of November 6, 2026, Midjourney has not confirmed when testing begins, who will be selected, or how access will be granted, so treat the application as a lottery ticket, not a plan.

Step 2: Install the RunAPI Midjourney MCP server in Claude Code

The working route today is the community RunAPI server, @runapi.ai/midjourney-mcp, version 0.4.1. It exposes 9 tools across 3 Midjourney model variants under the Apache 2.0 license. Its GitHub repository documents the install, the tool list, and the auth model, and every command below comes from that README.

Install it in Claude Code with one command:

claude mcp add midjourney -s user -- npx -y @runapi.ai/midjourney-mcp

The -s user scope installs it for your user account. Use -s project instead when the server should be shared with everyone who opens the same repository. Verify the install took:

claude mcp list

You should see midjourney in the list. If you use a different client, the same stdio command goes in its JSON config, as our Claude Code MCP setup guide shows for other servers:

{
  "mcpServers": {
    "midjourney": {
      "command": "npx",
      "args": ["-y", "@runapi.ai/midjourney-mcp"]
    }
  }
}

That config works for Cursor, Windsurf, VS Code, Codex, and Roo Code without changes.

Step 3: Sign in and check pricing before you spend anything

The server resolves auth in a fixed order: the RUNAPI_API_KEY environment variable first, then ~/.config/runapi/config.json, then no key at all. The no-key state still allows the check_pricing tool, which is exactly the tool to call first.

In Claude Code, ask the assistant to call the login tool. It opens a browser login and saves credentials to ~/.config/runapi/config.json, the same file the runapi login CLI command creates. That is the normal path on a desktop. On a headless host or in CI, set the environment variable instead before starting the MCP host:

export RUNAPI_API_KEY="your_runapi_key"

Never commit a real key to a repository. The README states this plainly, and the config file is the place keys belong.

Now check pricing before creating any task. Ask your assistant:

Check current Midjourney pricing, then tell me the cost of one text-to-image job.

The assistant calls check_pricing, which needs no sign-in, and reports the rate for the model you name. You can also read the same catalog on the RunAPI Midjourney model page. Pricing is pay-as-you-go and varies by model and endpoint, so repeat this check every time you switch models. A job that costs cents on one variant can cost more on the video variant, and the check takes seconds.

Step 4: Generate your first image from a plain-language prompt

With the server installed and signed in, generation is a sentence. Ask your assistant:

Generate a Midjourney image of a lighthouse at dusk in the style of a woodcut print.

Behind that sentence, the assistant calls text_to_image with the midjourney-v8.1 model. The tool creates an asynchronous task and returns a task id, a status, and output URLs when the job finishes. By default it can wait for a terminal status, so a short job returns the finished image URL directly. For a long job, tell the assistant to submit without waiting:

Create the task but don't wait for it to finish.

The assistant calls the create tool with wait: false and returns the task id. Check on it later with get_task, which fetches the current status and latest payload for that task. This two-step pattern matters for video jobs, which run longer than a single chat turn should block on.

When the image URL arrives, open it and check two things: the subject matches the prompt, and the style matches what you asked for. If the style is wrong, the fix is usually in the prompt, not the server. Move the style words earlier in the prompt and drop conflicting adjectives, then generate again. Each retry is a new billed task, so iterate one image at a time.

Step 5: Try the other tools and the hosted alternative

The server exposes 9 tools, and the image step is only the start. edit_image reworks an existing image with the midjourney-edit-image model. image_to_video and extend_video use the midjourney-image-to-video model to animate a still or extend a clip. get_seed returns the seed of a job, so you can reproduce a composition with a new prompt. image_to_prompt describes an image back into prompt text, which shows how Midjourney reads your own work. shorten_prompt compresses a long prompt without changing its meaning, useful near a length limit. All of them take plain-language instructions through your assistant, and all of them bill per task, so check pricing first for each new tool.

If you would rather not run a local Node process, the AceDataCloud hosted server answers at https://midjourney.mcp.acedata.cloud/mcp over streamable HTTP. Add it with:

claude mcp add mcp-midjourney --transport http https://midjourney.mcp.acedata.cloud/mcp

The endpoint answers with an authorization challenge, which is normal: the server signs you in through your browser, and there is no API key to paste. We verified from our own machine that the endpoint returns a 401 challenge. The hosted route trades control for convenience: a local stdio server keeps credentials on your machine, while a hosted server means a third party operates the endpoint. Pick the local route when you plan to generate often, and the hosted route for the fastest first test.

Troubleshooting

claude mcp add fails or npx is not found

This is almost always a missing or old Node.js. Check with node -v and install Node.js 18 or newer, then run the install command again. The npx -y flag downloads the package on first use, so the first run also needs network access to the npm registry.

The login tool cannot open a browser

The login flow needs a browser on the same machine. On a headless server or over SSH, it cannot open one, and the tool will stall. Set RUNAPI_API_KEY before starting your MCP host instead, as shown in Step 3. Create the key in the RunAPI dashboard on a machine with a browser, then paste it into the headless host.

Tool calls fail with an auth error

Re-run the login tool and check that ~/.config/runapi/config.json exists and contains an apiKey field. If you set RUNAPI_API_KEY, confirm the variable is exported in the same shell that launched Claude Code, because a variable set in one terminal does not reach a client started from another. Note that check_pricing works without any auth, so if pricing works but task creation fails, the problem is your credentials.

A task stays pending for a long time

Poll it again with get_task and the task id. Text-to-image jobs usually finish in under a minute, but video jobs and busy periods take longer, and the task status is the only honest signal. Do not create a duplicate task while the first one is still running, because each task bills separately and you will pay twice for the same image.

Some community bridges log in with your Midjourney web session cookies, TOKEN_R and TOKEN_I, and replay your browser session. Those bridges break whenever Midjourney changes its web flow, and they carry your session secrets. The RunAPI route uses an API key instead of session cookies, which is why this tutorial recommends it. If a cookie-based bridge stops working, treat the breakage as a property of the approach, not a bug you can fix by retrying.

FAQ

Is there an official Midjourney MCP server I can use today?

Not yet, unless you are selected. Midjourney announced a limited community test of an official MCP server on October 10, 2026, and access is gated behind an application form. No tool list, pricing, or timeline has been published, so the working route today is a community bridge such as the RunAPI MCP server.

Does Midjourney have a public API?

No. Midjourney has no broadly available public API, and generation has lived in Discord and the web app. The limited MCP test announced on October 10, 2026 is the first official channel for letting an AI agent call its image models through the Model Context Protocol.

Is the RunAPI Midjourney MCP server official?

No. It is a community package published by RunAPI, not by Midjourney. It wraps RunAPI’s Midjourney surface behind 9 MCP tools, and it needs a RunAPI account with pay-as-you-go credit. It is the practical route while the official server stays gated.

How much does generating with the RunAPI bridge cost?

Pricing is pay-as-you-go and varies by model and endpoint, so check it before you create a task. The server exposes a check_pricing tool that works without signing in. One hosted community bridge advertises imagine jobs from $0.04 each, which gives a rough sense of the price floor, but RunAPI sets its own rates.

Can I use the Midjourney MCP test inside a SaaS product?

No. Midjourney stated explicitly that the official test is not for Midjourney inside SaaS products and is for purely artistic and creative endeavors. Community bridges carry no vendor terms at all, which is a risk, not a permission, so do not build a commercial product on them.

Which MCP clients work with the Midjourney bridge?

The RunAPI server works with Claude Code, Codex, Cursor, Windsurf, VS Code, Roo Code, and any MCP-compatible host. Claude Code gets a one-line install command, and the other clients use the same stdio command in their JSON config.

Conclusion

Midjourney’s official MCP server is real but gated, and waiting for an invitation is not a plan. Apply through the official form, then generate images today with the RunAPI bridge: one install command, one browser sign-in, and a plain-language prompt is enough to get a Midjourney image back inside Claude Code. Keep your image step behind a plain prompt and a task id, not behind a specific bridge, because the official server may change the terms, and the bridges may break when Midjourney changes its web flow. When you want to publish a server of your own, read our guide on how to publish an MCP server to the registry, and our MCP stateless spec migration guide explains the 2026 spec changes every new server has to handle.

Frequently asked questions

Is there an official Midjourney MCP server I can use today?

Not yet, unless you are selected. Midjourney announced a limited community test of an official MCP server on October 10, 2026, and access is gated behind an application form. No tool list, pricing, or timeline has been published, so the working route today is a community bridge such as the RunAPI MCP server.

Does Midjourney have a public API?

No. Midjourney has no broadly available public API, and generation has lived in Discord and the web app. The limited MCP test announced on October 10, 2026 is the first official channel for letting an AI agent call its image models through the Model Context Protocol.

Is the RunAPI Midjourney MCP server official?

No. It is a community package published by RunAPI, not by Midjourney. It wraps RunAPI's Midjourney surface behind 9 MCP tools, and it needs a RunAPI account with pay-as-you-go credit. It is the practical route while the official server stays gated.

How much does generating with the RunAPI bridge cost?

Pricing is pay-as-you-go and varies by model and endpoint, so check it before you create a task. The server exposes a check_pricing tool that works without signing in. One hosted community bridge advertises imagine jobs from $0.04 each, which gives a rough sense of the price floor, but RunAPI sets its own rates.

Can I use the Midjourney MCP test inside a SaaS product?

No. Midjourney stated explicitly that the official test is not for Midjourney inside SaaS products and is for purely artistic and creative endeavors. Community bridges carry no vendor terms at all, which is a risk, not a permission, so do not build a commercial product on them.

Which MCP clients work with the Midjourney bridge?

The RunAPI server works with Claude Code, Codex, Cursor, Windsurf, VS Code, Roo Code, and any MCP-compatible host. Claude Code gets a one-line install command, and the other clients use the same stdio command in their JSON config.

TP
ToolPilot Team

We install, break, and fix automation tools so you don't have to. Every tutorial on ToolPilot is tested hands-on before publishing.

Keep reading