从零到一:搭建剪映 MCP 服务器,让 AI 帮你自动剪辑视频

前言

你是否想过,能否通过 AI 对话的方式自动制作视频?现在,通过 Model Context Protocol (MCP) 和剪映,这个想法已经可以实现了!

本文将带你从零开始,搭建一个完整的剪映 MCP 服务器,让 AI 助手能够通过自然语言指令自动创建剪映项目、添加素材、应用特效,最终导出为剪映可编辑的项目文件。

项目简介

jianying-mcp 是一个基于 Model Context Protocol (MCP) 的剪映视频制作自动化工具。它让 AI 助手能够:

  • 🎬 自动创建剪映草稿项目
  • 🎵 智能添加音频、视频、文本素材
  • ✨ 应用各种特效、滤镜、动画
  • 🎨 自动化视频编辑流程
  • 📤 导出为剪映可编辑的项目文件

项目地址:https://github.com/hey-jian-wei/jianying-mcp

前置要求

在开始之前,确保你的系统满足以下要求:

  1. Python 3.13+
  2. uv - 现代 Python 包管理器(推荐使用,也可以使用 pip)
  3. 剪映 - 用于打开和编辑导出的项目文件

第一步:克隆项目

git clone https://github.com/hey-jian-wei/jianying-mcp.git
cd jianying-mcp

第二步:安装 uv(如果尚未安装)

Windows PowerShell:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

macOS/Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

安装完成后,将 uv 添加到系统 PATH,或重启终端。

第三步:安装项目依赖

在项目根目录执行:

uv sync

这个命令会:

  • 自动创建虚拟环境
  • 安装所有必需的依赖包(包括 mcp、python-dotenv、pymediainfo 等)
  • 使用 Python 3.13(如果系统中有的话)

第四步:创建必要的目录

创建两个目录用于存储草稿数据和导出文件:

# Windows PowerShell
New-Item -ItemType Directory -Path "draft" -Force
New-Item -ItemType Directory -Path "output" -Force

或者使用命令行:

mkdir draft output

第五步:配置环境变量

使用 .env 文件(推荐)

在项目根目录创建 .env 文件:

SAVE_PATH=I:\项目\my\jianying-mcp\draft
OUTPUT_PATH=I:\项目\my\jianying-mcp\output

重要提示:

  • 使用绝对路径
  • 确保路径中的目录已存在
  • 保存文件时使用 UTF-8 无 BOM 编码(避免解析错误)

第六步:配置 MCP 客户端

配置内容:

{
  "mcpServers": {
    "jianying-mcp": {
      "command": "uv",
      "args": [
        "--directory",
        "你的项目路径\\jianying-mcp\\jianyingdraft",
        "run",
        "server.py"
      ],
      "env": {
        "SAVE_PATH": "你的项目路径\\jianying-mcp\\draft",
        "OUTPUT_PATH": "你的项目路径\\jianying-mcp\\output"
      }
    }
  }
}

配置说明:

  • command: 使用 uv 命令
  • args:
    • --directory: 指定工作目录为 jianyingdraft 文件夹
    • run: 运行命令
    • server.py: 服务器入口文件
  • env: 环境变量配置
    • SAVE_PATH: 草稿数据存储路径
    • OUTPUT_PATH: 导出文件存放路径

注意: Windows 路径中的反斜杠需要转义为 \\,或者使用正斜杠 /(Windows 也支持)。

第七步:验证配置

  1. 重启 Cursor(如果已打开)
  2. 在 Cursor 的 MCP 设置中,你应该能看到 jianying-mcp 服务器
  3. 确保服务器状态为 已连接(绿色开关打开,没有红色错误提示)

如果看到红色错误提示,检查:

  • 路径是否正确
  • 环境变量是否设置
  • uv 是否在 PATH 中
  • 依赖是否已安装

使用示例

配置完成后,你就可以通过 AI 对话来制作视频了!

示例 1:创建简单视频

你:帮我创建一个简单的测试视频,使用 video1.mp4

AI:好的,我来帮你制作视频。
    1. 解析素材信息...
    2. 创建草稿...
    3. 创建轨道...
    4. 添加视频素材...
    5. 导出草稿...
    
    完成!你可以在 你的项目路径\jianying-mcp\output\简单测试视频 找到导出的项目文件。

示例 2:制作带特效的视频

你:创建一个视频,使用 video1.mp4 和 video2.mp4,在它们之间添加转场效果,并添加标题文字

AI:好的,我来制作这个视频...
    [执行相应的 MCP 工具调用]

核心功能

草稿管理

  • create_draft - 创建新的视频草稿项目
  • export_draft - 导出为剪映项目文件
  • rules - 查看制作视频的规范

轨道管理

  • create_track - 创建视频/音频/文本轨道

视频处理

  • add_video_segment - 添加视频片段(支持本地文件和 URL)
  • add_video_animation - 添加入场/出场动画
  • add_video_transition - 添加转场效果
  • add_video_filter - 应用滤镜效果
  • add_video_mask - 添加蒙版效果
  • add_video_keyframe - 关键帧动画

音频处理

  • add_audio_segment - 添加音频片段
  • add_audio_effect - 音频特效(电音、混响等)
  • add_audio_fade - 淡入淡出效果
  • add_audio_keyframe - 音频关键帧

文本处理

  • add_text_segment - 添加文本片段
  • add_text_animation - 文字动画效果

实用工具

  • parse_media_info - 解析媒体文件信息(时长、分辨率等)
  • find_effects_by_type - 查找可用特效资源

工作流程

按照规范,制作视频的标准流程是:

  1. 询问用户需求 - 了解用户想要制作的视频内容
  2. 解析素材信息 - 使用 parse_media_info 了解素材时长等信息
  3. 创建草稿 - 使用 create_draft 创建新项目
  4. 创建轨道 - 使用 create_track 创建视频/音频/文本轨道
  5. 添加素材 - 使用 add_*_segment 添加视频、音频、文本片段
  6. 查询特效 - 使用 find_effects_by_type 查找可用特效
  7. 应用特效 - 使用 add_*_effect/animation 添加各种特效和动画
  8. 导出草稿 - 使用 export_draft 导出为剪映项目文件

重要提示

ID 管理

  • draft_id:创建草稿后获得,用于所有后续操作
  • track_id:创建轨道后获得,用于添加对应类型的素材
  • segment_id:添加素材后获得,用于添加特效和动画

严格保存和传递这些 ID,它们是工具链的关键纽带。

时长规则

  • 必须从素材本身时长出发,不能超出素材本身时长
  • target_start_end 参数描述的是轨道上的时间范围,同一轨道中不可有重复时间段
  • source_start_end 参数描述的是素材本身取的时长,默认取全部时长

文本位置

  • add_text_segmentclip_settings.transform_y 建议设置为 -0.7,这样字幕在正下方,不影响视频观感

常见问题

Q: MCP 服务器显示红色错误提示

A: 检查以下几点:

  • 路径是否正确(注意反斜杠转义)
  • 环境变量是否设置
  • uv 是否已安装并在 PATH 中
  • 依赖是否已安装(运行 uv sync

Q: 导出失败

A: 检查 OUTPUT_PATH 环境变量是否正确设置,且目录有写入权限。

Q: 找不到模块

A: 确保已运行 uv sync 安装所有依赖。

Q: 路径编码问题

A: 如果路径包含中文,确保:

  • .env 文件使用 UTF-8 无 BOM 编码
  • MCP 配置中的路径使用正确的转义

项目结构

jianying-mcp/
├── jianyingdraft/          # MCP 服务器核心代码
│   ├── server.py          # 服务器入口
│   ├── tool/              # MCP 工具定义
│   ├── services/          # 服务层
│   ├── jianying/          # 剪映项目处理
│   └── utils/             # 工具函数
├── pyJianYingDraft/        # 剪映项目文件处理库
├── material/              # 素材文件夹
├── draft/                 # 草稿数据存储
├── output/                # 导出文件存放
├── pyproject.toml         # 项目配置
└── README.md              # 项目说明

技术栈

  • Python 3.13+ - 编程语言
  • MCP (Model Context Protocol) - AI 工具协议
  • FastMCP - MCP 服务器框架
  • pyJianYingDraft - 剪映项目文件处理库
  • uv - 现代 Python 包管理器

参考资源