vectcut-api
Provides a cloud-based API to automate video editing tasks in CapCut and JianYing.
Install
mkdir -p .claude/skills/vectcut-api && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/3354" && unzip -o skill.zip -d .claude/skills/vectcut-api && rm skill.zipInstalls to .claude/skills/vectcut-api
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
VectCutAPI is a powerful cloud-based video editing API tool that provides programmatic control over CapCut/JianYing (剪映) for professional video editing. Use this skill when users need to: (1) Create video draft projects programmatically, (2) Add video/audio/image materials with precise control, (3) Add text, subtitles, and captions, (4) Apply effects, transitions, and animations, (5) Add keyframe animations, (6) Process videos in batch, (7) Generate AI-powered videos, (8) Integrate with n8n workflows, (9) Build MCP video editing agents. The API supports HTTP REST and MCP protocols, works with both CapCut (international) and JianYing (China), and provides web preview without downloading.Key capabilities
- →Create video draft projects programmatically
- →Add video, audio, and image materials to tracks
- →Insert text, subtitles, and captions
- →Apply keyframe animations and visual effects
- →Process videos in batch using Excel data
How it works
The API provides programmatic control over CapCut/JianYing project files, allowing users to manipulate tracks, effects, and animations via HTTP or MCP protocols.
Inputs & outputs
When to use vectcut-api
- →Automating video draft creation
- →Batch processing video content
- →Integrating video editing into workflows
About this skill
VectCutAPI 视频剪辑 API
概述
VectCutAPI 是一款强大的云端视频剪辑 API 工具,通过编程方式控制剪映/CapCut 进行专业视频编辑。它填补了 AI 生成素材与专业视频编辑之间的空白,提供精确的编辑控制能力。
核心优势
- 双协议支持 - HTTP REST API 和 MCP 协议
- 实时预览 - 网页预览无需下载
- 可二次编辑 - 导入剪映/CapCut 精修
- 云端处理 - 全云端操作生成视频
系统要求
- Python 3.10+
- 剪映 或 CapCut 国际版
- FFmpeg (可选,用于某些视频处理)
快速启动
# 安装依赖
pip install -r requirements.txt # HTTP API 基础依赖
pip install -r requirements-mcp.txt # MCP 协议支持 (可选)
# 配置文件
cp config.json.example config.json
# 启动服务
python capcut_server.py # HTTP API 服务器 (端口: 9001)
python mcp_server.py # MCP 协议服务器
工作流程
标准视频制作流程
1. 创建草稿 (create_draft)
- 设置分辨率: 1080x1920 (竖屏) / 1920x1080 (横屏) / 1080x1080 (方形)
- 获取 draft_id
2. 添加素材轨道
- add_video: 添加视频轨道
- add_audio: 添加音频轨道
- add_image: 添加图片素材
3. 添加文字元素
- add_text: 添加标题、说明文字
- add_subtitle: 导入 SRT 字幕文件
4. 应用特效
- add_effect: 添加视频特效
- add_sticker: 添加贴纸素材
- add_video_keyframe: 添加关键帧动画
5. 保存草稿
- save_draft: 生成可导入剪映的草稿文件
AI 视频生成工作流
AI 文案生成
↓
TTS 文字转语音 → audio_url
↓
图生视频 → video_url
↓
VectCutAPI 组合草稿
↓
导出或二次编辑
批量视频处理
使用 auto_video_editor.py 处理 Excel 表格驱动的批量视频制作。
API 接口
核心操作
| 接口 | 方法 | 功能 |
|---|---|---|
/create_draft | POST | 创建新草稿项目 |
/save_draft | POST | 保存草稿并生成 URL |
/query_draft_status | POST | 查询草稿状态 |
/query_script | POST | 查询草稿脚本内容 |
/generate_draft_url | POST | 生成草稿预览 URL |
素材添加
| 接口 | 方法 | 功能 |
|---|---|---|
/add_video | POST | 添加视频轨道 |
/add_audio | POST | 添加音频轨道 |
/add_image | POST | 添加图片素材 |
/add_text | POST | 添加文字元素 |
/add_subtitle | POST | 添加 SRT 字幕 |
/add_sticker | POST | 添加贴纸 |
/add_effect | POST | 添加视频特效 |
/add_video_keyframe | POST | 添加关键帧动画 |
查询接口 (GET)
| 接口 | 功能 |
|---|---|
/get_intro_animation_types | 获取入场动画类型 |
/get_outro_animation_types | 获取出场动画类型 |
/get_transition_types | 获取转场效果类型 |
/get_mask_types | 获取蒙版类型列表 |
/get_audio_effect_types | 获取音频特效类型 |
/get_font_types | 获取字体类型列表 |
/get_video_scene_effect_types | 获取场景特效类型 |
使用示例
创建竖屏视频草稿
import requests
# 1. 创建草稿
response = requests.post("http://localhost:9001/create_draft", json={
"width": 1080,
"height": 1920
})
draft_id = response.json()["output"]["draft_id"]
# 2. 添加背景视频
requests.post("http://localhost:9001/add_video", json={
"draft_id": draft_id,
"video_url": "https://example.com/background.mp4",
"start": 0,
"end": 10,
"volume": 0.6
})
# 3. 添加标题文字
requests.post("http://localhost:9001/add_text", json={
"draft_id": draft_id,
"text": "欢迎使用 VectCutAPI",
"start": 1,
"end": 5,
"font_size": 56,
"font_color": "#FFD700",
"shadow_enabled": True,
"background_color": "#000000"
})
# 4. 保存草稿
response = requests.post("http://localhost:9001/save_draft", json={
"draft_id": draft_id
})
draft_url = response.json()["output"]["draft_url"]
print(f"草稿已保存: {draft_url}")
添加转场效果
requests.post("http://localhost:9001/add_video", json={
"draft_id": draft_id,
"video_url": "https://example.com/video2.mp4",
"transition": "fade_in", # 转场类型
"transition_duration": 0.5, # 转场时长(秒)
"target_start": 10 # 在时间轴 10 秒处开始
})
添加关键帧动画
requests.post("http://localhost:9001/add_video_keyframe", json={
"draft_id": draft_id,
"track_name": "video_main",
"property_types": ["scale_x", "scale_y", "alpha"],
"times": [0, 2, 4], # 关键帧时间点
"values": ["1.0", "1.2", "0.8"] # 对应属性值
})
添加 SRT 字幕
requests.post("http://localhost:9001/add_subtitle", json={
"draft_id": draft_id,
"srt_url": "https://example.com/subtitles.srt",
"font_size": 32,
"font_color": "#FFFFFF",
"background_alpha": 0.7
})
MCP 协议集成
VectCutAPI 支持 MCP (Model Context Protocol) 协议,可直接由 AI Agent 调用。
MCP 工具列表
| 工具名称 | 功能描述 |
|---|---|
create_draft | 创建新的视频草稿项目 |
add_video | 添加视频到草稿 |
add_audio | 添加音频到草稿 |
add_image | 添加图片素材 |
add_text | 添加文字元素 |
add_subtitle | 添加字幕文件 |
add_effect | 添加视觉特效 |
add_sticker | 添加贴纸元素 |
add_video_keyframe | 添加关键帧动画 |
get_video_duration | 获取视频时长 |
save_draft | 保存草稿项目 |
MCP 客户端配置
创建 mcp_config.json:
{
"mcpServers": {
"vectcut-api": {
"command": "python",
"args": ["mcp_server.py"],
"cwd": "H:/ComfyUI/web/VectCutAPI",
"env": {
"PYTHONPATH": "H:/ComfyUI/web/VectCutAPI",
"DEBUG": "0"
}
}
}
}
参数说明
视频参数 (add_video)
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
draft_id | string | 必需 | 草稿 ID |
video_url | string | 必需 | 视频 URL |
start | float | 0 | 视频开始时间(秒) |
end | float | 0 | 视频结束时间(秒) |
target_start | float | 0 | 在时间轴上的开始时间 |
speed | float | 1.0 | 播放速度 |
volume | float | 1.0 | 音量 (0-1) |
scale_x/scale_y | float | 1.0 | 缩放比例 |
transform_x/transform_y | float | 0 | 位置偏移 |
transition | string | - | 转场类型 |
transition_duration | float | 0.5 | 转场时长(秒) |
mask_type | string | - | 蒙版类型 |
background_blur | int | - | 背景模糊级别(1-4) |
文字参数 (add_text)
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
text | string | 必需 | 文字内容 |
start | float | 必需 | 开始时间 |
end | float | 必需 | 结束时间 |
font | string | "思源黑体" | 字体名称 |
font_size | int | 32 | 字体大小 |
font_color | string | "#FFFFFF" | 字体颜色 (HEX) |
stroke_enabled | bool | False | 是否启用描边 |
stroke_color | string | "#FFFFFF" | 描边颜色 |
stroke_width | float | 2.0 | 描边宽度 |
shadow_enabled | bool | False | 是否启用阴影 |
shadow_color | string | "#000000" | 阴影颜色 |
background_color | string | - | 背景颜色 |
background_alpha | float | 1.0 | 背景透明度 |
text_styles | array | - | 多样式文字 (见下方) |
多样式文字 (text_styles)
"text_styles": [
{"start": 0, "end": 2, "font_color": "#FF6B6B"},
{"start": 2, "end": 4, "font_color": "#4ECDC4"},
{"start": 4, "end": 6, "font_color": "#45B7D1"}
]
配置文件
config.json 结构
{
"is_capcut_env": true,
"draft_domain": "https://www.capcutapi.top",
"port": 9001,
"preview_router": "/draft/downloader",
"is_upload_draft": false,
"oss_config": {
"bucket_name": "your-bucket",
"access_key_id": "your-key-id",
"access_key_secret": "your-secret",
"endpoint": "https://your-endpoint.aliyuncs.com"
}
}
高级功能
批量视频处理
使用 auto_video_editor.py 进行 Excel 驱动的批量处理:
python auto_video_editor.py input.xlsx
Excel 表格格式:
| 视频标题 | 二段文案 | 开头素材 | 结尾素材 | 封面素材 |
|---|---|---|---|---|
| 产品介绍 | ... | video1.mp4 | video2.mp4 | image.png |
n8n 工作流集成
项目包含多个预配置的 n8n 工作流:
text-to-video-with-animation.json- 文字转视频工作流auto-video-mixing.json- 自动视频混剪form-upload-processing.json- 表单上传处理
资源
scripts/
可执行脚本,用于 VectCutAPI 操作。
- vectcut_client.py - Python 客户端封装库
references/
参考文档和指南。
- api_reference.md - 完整 API 接口参考
- workflows.md - 工作流示例和最佳实践
- animation_types.md - 动画类型参考
- transition_types.md - 转场效果类型参考
assets/examples/
示例代码和模板。
- basic_video.py - 基础视频制作示例
- text_animation.py - 文字动画示例
- subtitle_import.py - 字幕导入示例
- batch_processing.py - 批量处理示例
常见问题
草稿文件位置
调用 save_draft 后会在当前目录生成 dfd_ 开头的文件夹,将其复制到剪映/CapCut 草稿目录即可。
支持的视频格式
- MP4 (推荐)
- MOV
- AVI
- MKV
支持的图片格式
- PNG (推荐,支持透明)
- JPG/JPEG
- WebP
支持的音频格式
- MP3 (推荐)
- AAC
- WAV
- M4A
项目信息
- GitHub: https://github.com/sun-guannan/VectCutAPI
- 在线体验: https://www.vectcut.com
- 开源协议: Apache License 2.0
- Star 数量: 800+
When not to use it
- →When the user requires manual frame-by-frame editing in a GUI
Prerequisites
Limitations
- →Requires CapCut or JianYing desktop software
- →Drafts must be opened in the desktop app for final export
How it compares
It allows for automated, batch-processed video creation that can be integrated into code workflows, unlike manual editing in the desktop application.
Compared to similar skills
vectcut-api side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| vectcut-api (this skill) | 11 | 6mo | Review | Advanced |
| jianying-editor | 38 | 2mo | Review | Advanced |
| klingai-batch-processing | 0 | 27d | Caution | Intermediate |
| video-downloader | 101 | 7mo | Review | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
jianying-editor
luoluoluo22
剪映 (JianYing) AI自动化剪辑的高级封装 API (JyWrapper)。提供开箱即用的 Python 接口,支持录屏、素材导入、字幕生成、Web 动效合成及项目导出。
klingai-batch-processing
jeremylongshore
Process multiple video generation requests efficiently with Kling AI. Use when generating multiple videos or building content pipelines. Trigger with phrases like 'klingai batch', 'kling ai bulk', 'multiple videos klingai', 'klingai parallel generation'.
video-downloader
ComposioHQ
Downloads videos from YouTube and other platforms for offline viewing, editing, or archival. Handles various formats and quality options.
video-processor
basher83
Process video files with audio extraction, format conversion (mp4, webm), and Whisper
sora
davila7
Use when the user asks to generate, remix, poll, list, download, or delete Sora videos via OpenAI’s video API using the bundled CLI (`scripts/sora.py`), including requests like “generate AI video,” “Sora,” “video remix,” “download video/thumbnail/spritesheet,” and batch video generation; requires `OPENAI_API_KEY` and Sora API access.
audio-tts
second-state
Generate speech audio from text using Qwen3 TTS, or clone a voice from reference audio. Triggered when the user wants to convert text to speech, generate audio, read text aloud, or clone/mimic a voice. Supports multiple speakers, English and Chinese, and emotion/style control.