引子:修图师的困境

一个资深修图师每天大概要做的操作:抠图、磨皮、调色、批量导出、对接不同客户的交付格式、把修好的图同步到网盘/图库/项目管理系统……这些动作里,真正"修图"的只占一半,另一半是工具之间来回搬运

AI 修图(Cutout、Stable Diffusion、通义万相等)把"修"这件事变得简单了,但"工作流"反而更碎:你要调模型、调参数、处理素材、接 API、写脚本、对格式……每个环节都是一座孤岛。

MCP(Model Context Protocol) 就是来打通这些孤岛的。它像给 AI 修图师装上一个"万能插头"——任何支持 MCP 的客户端(Claude、Cursor、自研应用)都能通过统一协议,直接调用你本地的修图工具、滤镜库、素材库、存储服务。

本文用大量可运行代码,讲清楚这套东西怎么落地。


一、MCP 到底是个啥?

MCP 是 Anthropic 提出的开放协议,核心思想一句话:

让 AI 应用和外部工具用一套标准协议对话,而不是每个工具都自己发明一套对接方式。

类比:USB-C。以前每个设备接口都不一样,现在统一了,一个口通吃。

在 MCP 里,有几个关键角色:

角色 作用 类比
MCP Host 发起请求的 AI 应用(Claude Desktop / 你的服务) 电脑主机
MCP Server 暴露工具给 Host 的程序(比如"修图服务") USB 设备
Tool Server 暴露的具体能力(remove_bgenhance…) 设备功能

于是,一个 AI 修图工作流的架构变成:

用户 ──> AI 助手 (Host)
            │  MCP 协议
            ▼
      修图 MCP Server (暴露出:抠图 / 磨皮 / 调色 / 导出 / 存库)

AI 助手不再是"只会聊天",而是能理解和执行真实修图操作的修图师。


二、最小可跑的 MCP 修图 Server

我们用 Python 的 mcp SDK + FastMCP 快速搭一个。假设你本地已经装好了 rembg(抠图)和 Pillow(图像处理)。

# photo_mcp_server.py
import io
from mcp.server.fastmcp import FastMCP
from PIL import Image, ImageFilter

mcp = FastMCP("PhotoEditor")

# 工具1:抠图(换白底/透明底)
@mcp.tool()
def remove_background(image_bytes: bytes, transparent: bool = True) -> bytes:
    """Remove background from an image. Returns processed image bytes."""
    from rembg import remove  # 懒加载,避免启动慢
    img = Image.open(io.BytesIO(image_bytes))
    out = remove(img)
    if not transparent:
        # 换成白底
        background = Image.new("RGB", out.size, (255, 255, 255))
        background.paste(out, mask=out.split()[-1])
        out = background
    buf = io.BytesIO()
    out.convert("RGB").save(buf, format="PNG")
    return buf.getvalue()

# 工具2:一键调色(提亮 + 增强对比)
@mcp.tool()
def auto_enhance(image_bytes: bytes, brightness: float = 1.1, contrast: float = 1.2) -> bytes:
    """Auto enhance brightness and contrast."""
    img = Image.open(io.BytesIO(image_bytes))
    from PIL import ImageEnhance
    img = ImageEnhance.Brightness(img).enhance(brightness)
    img = ImageEnhance.Contrast(img).enhance(contrast)
    buf = io.BytesIO()
    img.convert("RGB").save(buf, format="JPEG", quality=92)
    return buf.getvalue()

# 工具3:磨皮(高斯模糊 + 混合,简化版)
@mcp.tool()
def smooth_skin(image_bytes: bytes, radius: float = 5.0) -> bytes:
    """Simplified skin smoothing via surface blur."""
    img = Image.open(io.BytesIO(image_bytes)).convert("RGB")
    blurred = img.filter(ImageFilter.GaussianBlur(radius))
    out = Image.blend(img, blurred, alpha=0.4)  # 半透明叠加
    buf = io.BytesIO()
    out.save(buf, format="JPEG", quality=92)
    return buf.getvalue()

if __name__ == "__main__":
    mcp.run(transport="stdio")  # 标准输入输出传输

跑起来:

pip install mcp rembg pillow
python photo_mcp_server.py

等等——stdio 模式是给 Claude Desktop 这类本机客户端用的。如果你要对接自己的 Web 服务,用 HTTP/SSE 传输:

# 改一行即可
if __name__ == "__main__":
    mcp.run(transport="sse", host="127.0.0.1", port=8000)

三、配置 Host:让 Claude Desktop 认识你的修图师

claude_desktop_config.json 里注册你的 server:

{
  "mcpServers": {
    "photo-editor": {
      "command": "python",
      "args": ["/path/to/photo_mcp_server.py"],
      "env": {
        "PYTHONPATH": "/path/to/venv/lib/python3.11/site-packages"
      }
    }
  }
}

重启后,你直接对 Claude 说:

“把这张图的白底去掉,然后提亮一点、磨个皮,最后导出成 PNG。”

Claude 会自己决定调用哪个工具、传什么参数,一步步执行。这就是"AI 修图师"的本体——它不再只是建议你用什么软件,而是亲手把图修好。


四、不依赖重型客户端:自己写 MCP Client

如果你不想用现成的 Claude Desktop,用 Python SDK 自己当 Host 也只要几十行:

# photo_mcp_client.py
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

async def main():
    server = StdioServerParameters(
        command="python",
        args=["photo_mcp_server.py"]
    )

    async with stdio_client(server) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()

            # 列出可用的修图工具
            tools = await session.list_tools()
            print("可用工具:", [t.name for t in tools.tools])
            # => ['remove_background', 'auto_enhance', 'smooth_skin']

            # 读取一张图片
            with open("portrait.jpg", "rb") as f:
                img_bytes = f.read()

            # 调用抠图工具
            result = await session.call_tool(
                "remove_background",
                {"image_bytes": img_bytes, "transparent": True}
            )

            out_bytes = result.content[0].data  # 拿到 PNG 字节
            with open("portrait_cutout.png", "wb") as f:
                f.write(out_bytes)
            print("已生成 portrait_cutout.png")

asyncio.run(main())

五、进阶:把"AI 生成"也接进来(Stable Diffusion 工具)

修图不只是"改图",还有"生成"。给 server 加一个文生图/图生图工具,用 diffusers

# 追加到 photo_mcp_server.py
@mcp.tool()
def txt2img(prompt: str, negative: str = "", steps: int = 25) -> bytes:
    """Generate an image from a text prompt."""
    from diffusers import StableDiffusionPipeline
    import torch

    pipe = StableDiffusionPipeline.from_pretrained(
        "runwayml/stable-diffusion-v1-5",
        torch_dtype=torch.float16
    ).to("cuda")

    img = pipe(
        prompt, negative_prompt=negative,
        num_inference_steps=steps
    ).images[0]

    buf = io.BytesIO()
    img.save(buf, format="PNG")
    return buf.getvalue()

现在你的 AI 修图师不仅能"去背景、调色",还能"凭空画出背景再合成"。整条链路都在同一个 MCP 协议下,客户端无需关心是本地模型还是云端 API。


六、把 Workflow 串起来:多工具组合

真正的价值在于组合。写一个编排函数,让一次指令完成整套流程:

@mcp.tool()
def retouch_combo(image_bytes: bytes) -> bytes:
    """T-shirt photo workflow: cutout -> white bg -> enhance."""
    cut = remove_background(image_bytes, transparent=True)
    enhanced = auto_enhance(cut, brightness=1.1, contrast=1.25)
    return enhanced

客户端侧,AI 助手也能自主编排。下面是用官方 SDK 让模型"自己决定调用顺序"的示意(以 Claude 工具调用为例):

// 用 @modelcontextprotocol/sdk
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "python",
  args: ["photo_mcp_server.py"],
});
const client = new Client({ name: "my-host", version: "1.0.0" });
await client.connect(transport);

// 拿到工具清单,交给 LLM 做 function-calling
const { tools } = await client.listTools();
// tools = [remove_background, auto_enhance, smooth_skin, ...]

// 然后你就可以把这些工具定义喂给你任意的 LLM,
// 让模型输出 JSON 调用序列,你逐个执行:
const plan = [
  { name: "remove_background", args: { transparent: false } },
  { name: "auto_enhance", args: { brightness: 1.15, contrast: 1.2 } },
];
for (const step of plan) {
  const res = await client.callTool({ name: step.name, arguments: step.args });
  // 把结果字节保存或继续传递
}

七、生产落地的几个坑

  1. 图片用字节传输有大小限制。 大图建议走"先存文件/对象存储,工具里传路径/URL",而不是直接传 bytes:

    @mcp.tool()
    def remove_background_s3(src_url: str, dest_key: str) -> dict:
        # 从 S3 拉图 → 处理 → 传回 S3 → 返回 URL
        ...
    
  2. 模型懒加载。 diffusersrembg 首次加载很慢,别在 import 时加载,放进函数内部(如上例),或用单例缓存。

  3. 并发与重试。 GPU 服务要控制并发,给 @mcp.tool() 加超时与重试封装。

  4. 权限边界。 修图工具会写文件和网络,MCP Host 要严格限制 server 能碰的路径/域名,避免 AI 误操作删库跑路。


八、为什么这对"AI 修图师"是转折点

过去,"AI 修图"往往是一个封闭产品的功能:你只能在某个 App 里用它的模型。而 MCP 把修图能力拆成可插拔的工具

  • 需要抠图 → 插一个抠图 server
  • 需要炼丹背景 → 插一个 SD server
  • 需要批量导出 → 插一个导出 server
  • 需要同步素材库 → 插一个云盘 server

组合即产品。 修图不再是"软件",而是一套可以被任意 AI 助手调用的能力集。对开发者和设计师来说,这意味着你可以在自己的工具链里,用标准化协议拼出真正的"私人 AI 修图师"。


总结

MCP 给 AI 修图带来的不是某个更牛的模型,而是一套标准化的指挥系统。修图师(AI)第一次能以"原住民"的身份,直接操作你的素材、工具和服务,而不是隔着一层界面对话。

从今天开始,用几十行代码搭一个你自己的修图 MCP Server,然后让 Claude(或你自己写的 Host)当那个修图师——你会发现,"让 AI 帮你修图"这件事,终于可以从"聊"变成"做"了。


《AI修图师手册:人像美化+摄影调色+电商修图+自媒体配图+广告创意》

在这里插入图片描述

全场景AI精修+场景生成+人像美化+摄影调色+电商产品修图+自媒体配图+广告创意,从工具指令到提示词写法,再到广告创意设计,108个实战案例,一分钟快速出片,一人就是一支美工设计团队。

一分钟快速出片 一分钟快速出片 一分钟快速出片

亮点

  1. 全场景覆盖:一本书搞定人像美化、摄影调色、电商修图、自媒体配图、广告创意五大核心场景。
  2. 实战为王:108个实战案例,涵盖路人消除、妆容迁移、风格滤镜、产品包装设计、电影分镜生成等具体操作,学完即用。
  3. 工具落地:深度讲解豆包、即梦AI等主流AI修图工具,手把手教学核心修图技巧,拒绝空谈理论,只教能上手的方法。
  4. 效率至上:践行“一句话修图,一分钟出片”的理念,帮助读者实现“一人就是一支美工团队”的创作效率跃迁。

内容简介

本书以“一句话生成大片” 为核心理念,通过 108 个真实场景案例与海量配套资源,助力读者告别烦琐操作,快速掌握 AI 修图与视觉创作全流程。

全书围绕“技能 + 案例”双主线展开:技能线涵盖 AI 修图工具简介、提示词写作技巧、人像精修、摄影调色、电商设计、自媒体配图、广告创意等内容创作技法,由浅入深构建完整知识体系;案例线覆盖人像、风光、电商、自媒体、广告等 108 个实用场景,学完即用。随书附赠 124 分钟教学视频、
121 组提示词及数百个素材与效果文件,即学即练。

本书适合摄影爱好者、电商运营、自媒体创作者、设计初学者、广告从业者及对 AI 视觉技术感兴趣的读者,也可作为院校与培训机构教材。

作者简介

柏松,笔名木白,长沙市飞龙文化传播有限公司创始人,中国摄影家协会会员、中国人像摄影家协会会员、湖南省摄影家协会会员,擅长数字艺术与新媒体领域的拍摄、制作、剪辑;"龙飞摄影"公众号创始人,关注者超10万。

在这里插入图片描述

《图解MCP:从协议解析、Agent协同到商业实践》

在这里插入图片描述
从入门到企业级的MCP实战宝典:70+张图解掌握MCP核心协议,贯通全栈开发与多领域实战,实现Agent智能协同

从入门到企业级的 M C P 实战宝典 从入门到企业级的MCP实战宝典 从入门到企业级的MCP实战宝典

亮点

  • 破局之钥:读懂MCP核心协议,吃透AI交互底层逻辑。
  • 全栈贯通:从基础架构、协议规范到实战编码,贯通客户端与服务端开发。
  • 多域赋能:精通多传输通信方案,覆盖办公、运维、金融、视觉多领域。
  • 实战指南:覆盖全场景,贯通Agent协同。

内容简介

本书系统讲解MCP的原理、协议设计与商业落地,构建了从“零基础”到“可扩展企业级系统”的完整知识体系。

全书共10章,依次为MCP的基础知识、MCP架构详解、MCP规范、实战体验:第一个MCP程序、多场景MCP服务器实战演练、MCP服务开发实践、MCP与AI Agent、多模型的集成与协同、商业项目:智能编程助手(IDA Pro+VS Code+MCP)和商业项目:基于MCP实现的多智能体协同系统(Agent+Git+tmux+SQLite)。

本书内容兼具理论深度与落地指导性,不仅为AI研究者提供MCP的系统性知识,还为开发者在实际业务中快速构建安全、可扩展、多模型协同的AI系统提供详尽的操作指南,助力读者一步到位地掌握MCP核心技术与商业实战。

作者简介

张学建,哈尔滨工业大学博士,百度智能云研发工程师、百度大模型工程师,在大规模机器学习、深度学习、数据搜索、行业垂直应用、研发管理等领域拥有丰富经验。在企业智能化转型、业务线上化经营领域拥有丰富的大规模搜索架构搭建、个性化推荐架构搭建、机器学习系统架构搭建经验和技术团队管理经验。现从事城市大数据中心的开发和建设工作,将深度学习运用到数字经济领域。

在这里插入图片描述

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐