返回 MCP 目录
public公开dns本地运行

midjourney-mcp

一个基于GPTNB API的Midjourney图像生成服务器,提供图像生成、编辑、人脸替换等功能

article

README

🚀 🎨 Midjourney MCP Server

Midjourney MCP (Model Context Protocol) 服务器功能完备,借助 GPTNB API 实现 Midjourney 图像生成功能,能够满足多样化的图像创作需求。

🚀 快速开始

环境要求

  • Python 3.10+
  • pip
  • Node.js(用于 MCP Inspector,可选)

安装

# 克隆项目
git clone <repository-url>
cd mj-mcp

# 安装依赖
pip install -r requirements.txt

# 或安装为可编辑包
pip install -e .

配置

设置环境变量:

# Windows
set GPTNB_API_KEY=your_api_key_here
set GPTNB_BASE_URL=https://aiclound.vip

# Linux/Mac
export GPTNB_API_KEY=your_api_key_here
export GPTNB_BASE_URL=https://aiclound.vip

或创建 .env 文件:

GPTNB_API_KEY=your_api_key_here
GPTNB_BASE_URL=https://aiclound.vip

运行

启动服务器

# 直接运行
python src/server.py

# 或使用MCP开发工具
npx @modelcontextprotocol/inspector python src/server.py

✨ 主要特性

  • 🖼️ 图像生成:依据文本提示生成高质量图像。
  • 🔄 图像变换:支持放大、变体、重新生成等操作。
  • 🎭 高级编辑:具备缩放、平移、修复等编辑功能。
  • 👥 人脸替换:拥有智能人脸交换功能。
  • 📝 图像描述:可进行 AI 图像内容分析。
  • 🔧 提示优化:提供智能提示词优化建议。
  • 📊 任务管理:实现简洁高效的任务状态跟踪。

🛠️ 可用工具 (7个)

核心图像生成工具 (6个)

| 工具名称 | 描述 | 主要参数 | |---------|------|---------| | imagine_image | 生成图像 | prompt, aspect_ratio, base64_images | | blend_images | 混合图像 | base64_images, dimensions | | describe_image | 描述图像 | base64_image | | change_image | 图像变换 | task_id, action, index | | modal_edit | 高级编辑 | task_id, action, prompt | | swap_face | 人脸替换 | source_image, target_image |

任务管理工具 (1个)

| 工具名称 | 描述 | 主要参数 | |---------|------|---------| | get_task_status | 任务状态查询 | task_id |

📁 项目结构

mj-mcp/
├── src/                    # 源代码目录
│   ├── server.py          # MCP 服务器主入口
│   ├── client.py          # GPTNB API 客户端
│   ├── service.py         # 业务逻辑服务
│   ├── config.py          # 配置管理
│   ├── models.py          # 数据模型
│   ├── task_handler.py    # 任务处理器
│   ├── exceptions.py      # 异常定义
│   └── utils.py           # 工具函数
├── requirements.txt       # 项目依赖
├── setup.py              # 安装配置
└── README.md             # 项目文档

🔧 技术细节

代码结构

项目采用简化的扁平化结构,符合 MCP 协议最佳实践:

  • 无包结构:移除了不必要的 __init__.py__main__.py
  • 直接入口:通过 python src/server.py 直接启动。
  • 现代依赖:使用最新版本的 MCP SDK (1.9.1)。
  • 简洁配置:使用传统的 requirements.txt 管理依赖。
  • 精简工具集:7 个核心工具,专注于实用功能,避免冗余。

💻 使用示例

基础用法

# 通过 MCP 客户端调用
result = await session.call_tool("imagine_image", {
    "prompt": "a beautiful sunset over mountains, digital art",
    "aspect_ratio": "16:9"
})

高级用法

# 生成变体
result = await session.call_tool("change_image", {
    "task_id": "previous_task_id",
    "action": "VARIATION",
    "index": 1
})

🤝 贡献

欢迎提交 Issue 和 Pull Request!

📄 许可证

GPT-3.0 License

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端