mcpField
M
Midjourney

Midjourney

远程服务
platform.acedata.cloud媒体与设计161 周前更新

关于 Midjourney

MidjourneyMCP 是一款 MCP 服务,通过 AceDataCloud API 让兼容客户端使用 Midjourney 生成和编辑图像、视频。它还提供提示词工具与任务跟踪,并支持托管 OAuth、API 令牌和本地 stdio 连接。

主要功能

  1. 01生成图像和视频
  2. 02放大、变体、缩放与平移图像
  3. 03混合图像并使用参考图
  4. 04编辑图像并生成描述
  5. 05延长视频并跟踪任务
  6. 06翻译和缩短提示词

适用场景

  1. 01根据文本提示创建图像
  2. 02编辑或变换现有图像
  3. 03根据提示词和参考图生成视频
  4. 04查询生成任务状态与结果

MCP 相关

向 MCP 客户端提供 Midjourney 图像、视频、编辑、提示词和任务管理工具。可通过托管端点使用 OAuth 或 Bearer 令牌连接,也可在本地通过 stdio 运行。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://midjourney.mcp.acedata.cloud/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
pypimcp-midjourney2026.10.18.4

工具

详细介绍

MidjourneyMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

一个通过 AceDataCloud API 使用 Midjourney 生成 AI 图像和视频的 Model Context Protocol (MCP) 服务。

可直接在 Claude、VS Code 或任何兼容 MCP 的客户端中生成 AI 图像和视频,并管理创意项目。

功能

  • 图像生成 - 根据文本提示词创建 AI 生成的图像
  • 图像变换 - 放大、创建变体、缩放和移动图像
  • 图像混合 - 将多张图像组合成创意融合效果
  • 基于参考图生成 - 使用现有图像作为灵感
  • 图像描述 - 获取 AI 对图像的描述(反向提示词)
  • 图像编辑 - 使用文本提示词和蒙版编辑图像
  • 视频生成 - 根据文本和参考图像创建视频
  • 视频延长 - 延长现有视频
  • 翻译 - 将中文提示词翻译成英文
  • 任务跟踪 - 监控生成进度并获取结果

工具参考

工具描述
midjourney_imagine使用 Midjourney 根据文本提示词生成 AI 图像。
midjourney_transform使用各种操作变换现有的 Midjourney 图像。
midjourney_blend使用 Midjourney 混合多张图像。
midjourney_with_reference使用参考图像作为灵感生成图像。
midjourney_edit使用 Midjourney 编辑现有图像。
midjourney_describe获取 AI 生成的图像描述。
midjourney_generate_video使用 Midjourney 根据文本提示词和参考图像生成视频。
midjourney_extend_video延长现有的 Midjourney 视频。
midjourney_translate将中文文本翻译成英文,以用作 Midjourney 提示词。
midjourney_shorten分析并缩短较长的 Midjourney 提示词,同时保留核心构想。
midjourney_get_seed获取之前生成的 Midjourney 图像的种子值。
midjourney_get_task查询 Midjourney 生成任务的状态和结果。
midjourney_get_tasks_batch一次查询多个 Midjourney 生成任务。
midjourney_list_actions列出所有可用的 Midjourney API 操作及对应工具。
midjourney_get_prompt_guide获取编写有效 Midjourney 提示词的指导。
midjourney_list_transform_actions列出所有适用于 Midjourney 图像的可用变换操作。

连接:托管 OAuth、API 令牌或本地 stdio

托管端点为 https://midjourney.mcp.acedata.cloud/mcp。为 MCP 客户端选择一种方式:

方式适用场景凭据设置
托管 OAuth客户端支持远程 MCP OAuth只添加 URL,然后登录 AceDataCloud 并批准访问。无需将令牌粘贴到客户端配置中。
托管 API 令牌客户端无法完成 OAuth,或者你需要明确的集成凭据在 Authorization: Bearer … 标头中发送 AceDataCloud API 令牌。将其保存在本地机密存储或环境变量中。
本地 stdio客户端运行本地 MCP 进程安装 mcp-midjourney,并将 ACEDATACLOUD_API_TOKEN 传递给该进程。它仍会调用 AceDataCloud API。

托管服务会公布 OAuth 元数据和动态客户端注册(DCR)。DCR 用于注册客户端应用,不是 API 密钥。 OAuth 会为你登录,客户端则发送生成的 Bearer 令牌;它可能会重用或为该账户创建 API 凭据。通过浏览器登录仍需拥有 AceDataCloud 账户。托管服务可能按用量计费:在执行实际操作前,请查看当前服务文档和展示的价格。请勿为同一服务同时配置 OAuth 登录和固定的 Authorization 标头。

托管 OAuth 示例
  • Claude 和 Claude Desktop 聊天: 在 Customize → Connectors → Add custom connector 中添加远程自定义连接器,输入 https://midjourney.mcp.acedata.cloud/mcp,选择登录;如果 Claude 询问如何注册其 OAuth 客户端,请选择 Register automatically。完成授权。Claude Desktop 的本地 claude_desktop_config.json 需要单独配置。Claude 连接器指南。
  • Claude Code: 运行 claude mcp add --transport http --scope user midjourney https://midjourney.mcp.acedata.cloud/mcp,然后运行 claude mcp login midjourney。检查 /mcp。Claude Code MCP 指南。
  • Cursor: 添加远程服务,只填写 https://midjourney.mcp.acedata.cloud/mcp。对于项目,将以下条目合并到 <project>/.cursor/mcp.json;个人使用时,请使用 ~/.cursor/mcp.json。Cursor MCP 指南。
  • VS Code / Copilot: 运行 MCP: Add Server,选择 HTTP,输入 https://midjourney.mcp.acedata.cloud/mcp,然后完成浏览器登录。新的可移植工作区配置使用 <project>/.mcp.json;下方的 VS Code 专用格式使用 <project>/.vscode/mcp.json 或用户配置文件。检查 MCP: List Servers。VS Code MCP 设置。
  • Codex: 运行 codex mcp add midjourney --url https://midjourney.mcp.acedata.cloud/mcp,然后运行 codex mcp login midjourney。其用户设置位于 ~/.codex/config.toml。Codex 官方 MCP 指南。

Cursor 项目配置(OAuth):

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

VS Code 专用工作区配置(OAuth):

{
  "servers": {
    "midjourney": {"type": "http", "url": "https://midjourney.mcp.acedata.cloud/mcp"}
  }
}
托管 API 令牌
  1. 打开 Ace Data Cloud → 应用程序。登录,或先注册账号。
  2. 找到 通用应用程序。如果尚未创建,请选择 初始化通用应用程序。通用密钥可使用账号可用的服务;专用应用程序的密钥则仅限用于该应用程序对应的服务。检查所需的服务/模型访问权限和当前定价。
  3. 从应用程序卡片中复制 API 密钥,或打开 密钥 / 管理密钥 → 创建,为此集成创建单独的密钥。为密钥设置易于识别的名称,以便单独撤销或轮换。
  4. 创建密钥时,请检查 过期时间、设置用量限制和允许的 API。仅启用所需的限制,并允许要调用的操作,然后点击 创建,再从密钥列表中复制令牌。查询任务并不意味着有权提交生成请求。确认应用程序余额足以支付首次请求;任何试用额度均以账号当前显示的为准。
  5. 仅复制令牌值,不要包含引号、空格或 Bearer 。API 密钥 / API 令牌字段需要填写此原始值;只有手动配置 HTTP Authorization 标头时才需要添加 Bearer 前缀。platform-... 账号管理令牌不能替代生成 API 密钥。

复制应用程序 API 密钥或打开管理密钥

创建单独命名且可选设置限制的密钥

将密钥保存在客户端的凭据存储区,或下方所示的环境变量中。切勿将其放入提示词、共享工作流、截图或 Git 提交中。如果身份验证失败,请检查复制的完整值、应用程序/服务访问权限、过期时间、用量限制和余额,然后再创建其他密钥。

固定的 Bearer 标头会绕过 OAuth。如果标头无效,请在尝试浏览器登录之前将其移除;请妥善保管已保存的凭据。

对于 Claude Code,添加服务时 Shell 会展开令牌;请将保存的用户 MCP 配置视为机密:

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"

对于 Claude Code 项目配置,请在 <project>/.mcp.json 中放入变量引用,并在启动 Claude Code 的环境中设置该变量:

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

Cursor 在 ~/.cursor/mcp.json 或未提交的项目配置中使用不同的环境变量语法:

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

在 VS Code 中,运行 MCP: 打开用户配置,并合并此服务及其掩码输入;${input:...} 适用于 VS Code 的用户/工作区格式,不能移植到 Agent Host 的 .mcp.json 格式:

{
  "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}"}
    }
  }
}

对于 Cline,请使用其 MCP 配置界面或 CLI 文件 ~/.cline/data/settings/cline_mcp_settings.json;其远程传输值为 streamableHttp。对于 JetBrains AI Assistant,请从 设置 → 工具 → AI Assistant → Model Context Protocol (MCP) 添加远程 URL。对于 Zed,OAuth 方式请使用仅含 URL 的 context_servers 条目,或者添加本地 Bearer 标头。这些客户端的配置架构各不相同;请按照各自当前的界面操作,不要直接复制其他客户端的 JSON。Cline · JetBrains · Zed。

本地 stdio

安装软件包,并为本地进程提供 API 令牌:

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

对于 Claude Desktop 本地 MCP,请将此条目合并到其开发者设置打开的文件中(macOS 上为 ~/Library/Application Support/Claude/claude_desktop_config.json)。uvx 需要在 PATH 中找到 uv:

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

请对这个用户级文件保密。可自托管的 HTTP 使用 mcp-midjourney --transport http --port 8000;仅在配置了适当的网络和 TLS 控制后才将其公开。本地执行仍会调用 AceDataCloud API。

使用服务前的检查
  1. https://midjourney.mcp.acedata.cloud/health 返回 {"status":"ok"} 仅能检查端点是否可访问。
  2. 确认 MCP 客户端已加载工具。midjourney_list_actions 是一个参考工具;它无法验证下游 API 访问权限或余额。
  3. 如果需要进行完整的 API 检查,请先查看当前服务文档和显示的价格,然后使用你自己的有效输入调用 midjourney_generate_video。如果结果包含任务 ID,请对同一 ID 调用 midjourney_get_task,直到任务成功或失败。请勿仅为检查进度而重新提交操作。

对于 401,请检查客户端使用了哪种认证方式,以及令牌或 OAuth 会话是否有效。403 可能表示账户权限不足或内容审核失败;请查看返回的错误。余额不足和下游服务故障需要分别排查。工具已列出或任务已提交,并不能证明操作已成功。

可用工具

图像生成
工具描述
midjourney_imagine根据文本提示词生成图像(创建 2x2 网格)
midjourney_transform转换图像(放大、变体、缩放、平移)
midjourney_blend将多张图像混合在一起
midjourney_with_reference使用参考图像作为灵感进行生成
图像编辑
工具描述
midjourney_edit使用文本提示词编辑现有图像
midjourney_describe获取图像的 AI 描述(反向提示词)
视频
工具描述
midjourney_generate_video根据文本和参考图像生成视频
midjourney_extend_video延长现有视频
实用工具
工具描述
midjourney_translate将中文文本翻译成英文,用作提示词
midjourney_get_seed获取生成图像的种子值
任务
工具描述
midjourney_get_task查询单个任务的状态
midjourney_get_tasks_batch一次查询多个任务
信息
工具描述
midjourney_list_actions列出可用的 API 操作
midjourney_get_prompt_guide获取提示词编写指南
midjourney_list_transform_actions列出转换操作

使用示例

根据提示词生成图像
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"]
放大图像
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"]
混合多张图像
User: Blend these two images: [url1] and [url2]

Claude: I'll blend these images together.
[Calls midjourney_blend with image_urls=[url1, url2]]
生成视频
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"]

生成模式

模式描述
fast推荐用于大多数使用场景(默认)
turbo生成速度更快,消耗更多积分
relax生成速度较慢,成本较低

配置

环境变量
变量描述默认值
ACEDATACLOUD_API_TOKENAceDataCloud 提供的 API 令牌必填
ACEDATACLOUD_API_BASE_URLAPI 基础 URLhttps://api.acedata.cloud
ACEDATACLOUD_OAUTH_CLIENT_IDOAuth 客户端 ID(托管模式)—
ACEDATACLOUD_PLATFORM_BASE_URL平台基础 URLhttps://platform.acedata.cloud
MIDJOURNEY_DEFAULT_MODE默认生成模式fast
MIDJOURNEY_REQUEST_TIMEOUT请求超时时间(秒)1800
LOG_LEVEL日志级别INFO
命令行选项
mcp-midjourney --help

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

开发

设置开发环境
# 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 unit tests
pytest

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

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration
代码质量
# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools
构建与发布
# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

项目结构

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 参考

此服务封装了 AceDataCloud Midjourney API:

贡献

欢迎贡献!请按以下步骤操作:

  1. Fork 此仓库
  2. 创建功能分支(git checkout -b feature/amazing)
  3. 提交更改(git commit -m 'Add amazing feature')
  4. 推送到该分支(git push origin feature/amazing)
  5. 创建 Pull Request

服务详情

服务详情

许可证

MIT 许可证 - 详情请参阅 LICENSE。

链接


由 AceDataCloud 倾情打造

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。