百炼生图改图_MCP&Agent挑战赛
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"bailian-image": {
"args": [
"--from",
"my-mcp-servers",
"bailian-mcp-server"
],
"command": "uvx",
"env": {
"DASHSCOPE_API_KEY": "sk-your-api-key"
}
}
}
}
该服务需要配置环境变量:DASHSCOPE_API_KEY
可用工具 (3 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
generate_image 6 个参数 需填 1 项
调用阿里云百炼生图API生成图像 Args: prompt: 正向提示词,用来描述生成图像中期望包含的元素和视觉特点 size: 输出图像的分辨率,格式为宽*高。: 默认为1328*1328,可选的分辨率及其对应的图像宽高比例为: - "1664*928": approximately 16:9 - "1472*1140": approximately 4:3 - "1328*1328": 1:1 (square) - "1140*1472": approximately 3:4 - "928*1664": approximately 9:16 n: 生成图片的数量。当前仅支持生成1张图像 prompt_extend: 是否开启prompt智能改写 watermark: 是否添加水印标识 negative_prompt: 反向提示词,用来描述不希望在画面中看到的内容 Returns: 任务ID和初始状态的JSON格式字符串
必填参数:prompt
get_image_generation_result 3 个参数 需填 1 项
根据任务ID查询图像生成结果 Args: task_id: 图像生成任务的ID max_retries: 最大重试次数 retry_interval: 重试间隔(秒) Returns: results: 任务结果列表,包括图像URL、prompt、部分任务执行失败报错信息等
必填参数:task_id
image_edit_generation 3 个参数 需填 2 项
调用阿里云百炼编辑图片API生成图像 :param prompt: 正向提示词,用来描述生成图像中期望包含的元素和视觉特点。支持中英文,长度不超过800个字符,每个汉字/字母占一个字符,超过部分会自动截断。 :type prompt: str :param image: 输入图像的URL。 图像限制: - 图像格式:JPG、JPEG、PNG、BMP、TIFF、WEBP。 - 图像分辨率:图像的宽度和高度范围为[512, 4096]像素。 - 图像大小:不超过10MB。 - URL地址中不能包含中文字符。 输入图像说明: - 使用公网可访问URL - 支持 HTTP 或 HTTPS 协议。 :type image: str :param negative_prompt: 反向提示词,用来描述不希望在画面中看到的内容,可以对画面进行限制。支持中英文,长度不超过500个字符,超过部分会自动截断。 示例值:低分辨率、错误、最差质量、低质量、残缺、多余的手指、比例不良等。 :type negative_prompt: Optional[str] Returns: image_url: 生成的图像URL
必填参数:prompt、image
服务介绍
阿里云百炼生图 MCP 服务器
一个 Model Context Protocol 服务器,提供阿里云百炼平台的图像生成和编辑功能。该服务器使LLM能够调用阿里云百炼API来生成、编辑图像,支持多种图像分辨率和自定义参数。
可用工具
generate_image - 生成图像
使用文本提示词生成图像。
必需参数:
prompt(string): 正向提示词,描述期望生成的图像内容
可选参数:
size(string): 输出图像分辨率,默认 "1328*1328"- "1664*928": 约 16:9 宽屏
- "1472*1140": 约 4:3
- "1328*1328": 1:1 正方形
- "1140*1472": 约 3:4
- "928*1664": 约 9:16 竖屏
n(int): 生成图片数量,当前仅支持 1prompt_extend(bool): 是否开启prompt智能改写,默认 truewatermark(bool): 是否添加水印标识,默认 falsenegative_prompt(string): 反向提示词,描述不希望出现的内容
get_image_generation_result - 获取生成结果
根据任务ID查询图像生成进度和结果。
必需参数:
task_id(string): 图像生成任务ID
可选参数:
max_retries(int): 最大重试次数,默认 30retry_interval(int): 重试间隔秒数,默认 3
image_edit_generation - 编辑图像
基于现有图像和文本提示生成新的编辑版本。
必需参数:
prompt(string): 编辑指令提示词image(string): 输入图像的URL
可选参数:
negative_prompt(string): 反向提示词
安装
使用 uv (推荐)
使用 uv 时无需特定安装。我们将使用 uvx 直接运行 MCP 服务器。
使用 pip
或者,您可以通过 pip 安装:
bash
pip install -e .
安装后,可以作为脚本运行:
bash
python -m src.gen_images.bailian_mcpserver
配置
身份验证
您需要阿里云百炼平台的 API 密钥。有两种配置方式:
-
环境变量 (推荐):
bash
export DASHSCOPE_API_KEY="your_api_key_here" -
HTTP 模式下的 Authorization 头:
text
Authorization: Bearer your_api_key_here
为 Claude.app 配置
将以下内容添加到您的 Claude 设置:
json
{
"mcpServers": {
"bailian-image": {
"command": "uvx",
"args": [
"--from",
"my-mcp-servers",
"bailian-mcp-server"
],
"env": {
"DASHSCOPE_API_KEY": "sk-your-api-key"
}
}
}
}
为 VS Code 配置
在工作区中创建 .vscode/mcp.json 文件:
json
{
"mcp": {
"servers": {
"bailian-image": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"my-mcp-servers",
"bailian-mcp-server"
],
"env": {
"DASHSCOPE_API_KEY": "sk-your-api-key"
}
}
}
}
}
示例交互
1. 生成图像
json
{
"name": "generate_image",
"arguments": {
"prompt": "一只可爱的橙色小猫坐在阳光明媚的窗台上",
"size": "1328*1328",
"watermark": false
}
}
响应:
json
{
"task_id": "task_12345678",
"task_status": "PENDING",
"request_id": "req_87654321"
}
2. 查询生成结果
json
{
"name": "get_image_generation_result",
"arguments": {
"task_id": "task_12345678"
}
}响应:
json
{
"output": {
"task_id": "task_12345678",
"task_status": "SUCCEEDED",
"results": [
{
"url": "https://example.com/generated_image.jpg"
}
]
}
}
3. 编辑图像
json
{
"name": "image_edit_generation",
"arguments": {
"prompt": "将猫的颜色改为白色",
"image": "https://example.com/original_image.jpg"
}
}
响应:
json
{
"image_url": "https://example.com/edited_image.jpg",
"request_id": "req_11223344"
}
运行模式
该服务器支持两种运行模式:
Stdio 模式 (默认)
bash
python -m src.gen_images.bailian_mcpserver
HTTP 模式 (团队服务)
bash
python -m src.gen_images.bailian_mcpserver --http
调试
您可以使用 MCP 检查器来调试服务器:
bash
npx @modelcontextprotocol/inspector python -m src.gen_images.bailian_mcpserver
Claude 问题示例
- "生成一张1328x1328像素的猫咪图片"
- "创建一个日落海滩场景的图像,不要包含人物"
- "编辑这张图片,将天空改为蓝色"
- "生成一个16:9宽屏比例的城市夜景"
Docker 部署
项目包含 Docker 配置文件,可以使用 Docker 部署:
bash
cd src/gen_images
docker-compose up -d
贡献
我们鼓励贡献来帮助扩展和改进阿里云百炼生图 MCP 服务器。无论您想添加新的图像处理工具、增强现有功能,还是改进文档,您的贡献都是宝贵的。
欢迎提交 Pull Request!请随时贡献新想法、错误修复或增强功能,让这个 MCP 服务器更加强大和有用。
许可证
该项目采用 MIT 许可证。这意味着您可以自由使用、修改和分发软件,但需遵守 MIT 许可证的条款和条件。更多详情请参见项目仓库中的 LICENSE 文件。