OpenClip:将长视频批量转为短视频内容
这是一个端到端工作流技能。输入一部完整的视频,输出一组可直接发布的竖屏片段,每条片段均包含字幕和文案。它整合了 OpenClip 剪辑流水线、字幕生成以及免费的媒体处理工具。
剪辑流水线是 付费 功能(需要活跃订阅和积分)。转制和修剪工具免费。
一次性设置
OpenClip 是一个远程 MCP 服务器,地址为 https://openclip.app/mcp。出现 OAuth 提示时,请使用你的 OpenClip 账户登录,无需复制 API 密钥。
- Claude Code:
claude mcp add --transport http openclip https://openclip.app/mcp,然后执行/mcp授权。 - Claude Desktop / Web 版: 设置 → 连接器 → “添加自定义连接器”,粘贴 URL 并登录。
- Cursor(
.cursor/mcp.json):{ "mcpServers": { "openclip": { "url": "https://openclip.app/mcp" } } } - 仅使用标头的客户端: 在
openclip.app/settings/connect生成 MCP 令牌,然后连接至https://openclip.app/mcp/key,并设置请求头Authorization: Bearer <令牌>。
运行检查:调用 get_account 并确认 credits_remaining > 0。
工作流
开始前,先与用户确认两件事:需要多少个片段,以及针对哪些平台。这两个答案将决定后续所有决策。不要擅自替用户做决定。
- 提交视频源。
submit_video(url)。返回一个job_id,状态为queued。 如果是本地文件:先调用create_upload,PUT 上传字节,再调用complete_upload。 - 轮询直到完成。 反复调用
get_video_status(job_id)直到状态变为completed。如果很快返回failed,则表示没有活跃订阅。如果返回pending_credits,则表示积分不足。请直接告知用户并停止,不要继续轮询一个终态。 - 拉取亮点片段。 调用
list_clips(job_id)。按virality_score(0 到 10)排序,取用户所需的数量。在渲染之前,向用户展示片段标题、钩子、时长和评分,以便用户否决。渲染会消耗积分。 - 为每个选中的片段添加字幕。 调用
list_caption_presets,然后为每个批准的片段调用render_clip(moment_id, caption_preset)。持续轮询list_clips,直到每个片段都有rendered_clip字段。 - 根据需要调整画面比例。 流水线的输出默认已是短视频格式。如果用户需要针对特定平台调整不同宽高比,请使用免费的
edit_video(video, operation="crop", aspect="9:16" | "1:1" | "4:5")对渲染后的片段进行处理。 - 交付批量结果。 为每个片段提供:
rendered_clip链接、title、hook、social_copy、duration_ms、virality_score以及建议的platforms字段。
平台适配比例
- TikTok、Reels、Shorts - 9:16 竖屏。这是默认比例,流水线会以此为核心输出。
- Instagram 信息流 - 4:5 或 1:1。使用
edit_video对渲染后的片段进行裁剪。 - X 和 LinkedIn - 16:9 或 1:1 均可。字幕比宽高比更重要,因为这些平台通常默认静音自动播放。
每个片段都包含一个来自流水线的 platforms 字段。将其视为初始建议而非硬性规则,并根据用户实际发布平台进行调整。
执行顺序与成本控制
- 批量轮询。 只提交一次,然后循环调用
get_video_status轮询,不要重复提交。 - 只渲染用户批准的片段。 每次
render_clip都会消耗资源,用户只要三个片段,就不要渲染全部十个。 - 对于重复性工作流(相同的字幕、相同的构图、相同的 Logo 水印), 请使用
create_agent保存一个处理代理,并在submit_video时传入该代理 ID。这样未来的每次批量处理都能保持一致,无需重新指定。describe_agent_settings可列出所有字段。 - 在开始大规模批量处理前, 调用
get_usage查看积分余额(积分以分钟处理时长计)。当用户要求大量片段时,请先检查积分。
规则
- 始终轮询,每个步骤都是异步的。
- 按
virality_score排序,分数越高越好。使用viral_score_details解释评分依据(钩子强度、可分享性、重看价值、惊喜感、情感冲击力)。 - 时间单位为毫秒。
- 剪辑链接是永久 CDN 链接,不签名,不过期。
- 不支持项目和文件夹。 不要向用户承诺提供文件夹结构。
- 除非用户要求,否则不要将
social_copy改写为影响者风格。文案已根据片段内容生成,过度重写通常效果更差。
提示示例与对应操作
- “把这个播客变成 10 个 TikTok 视频” - 提交、轮询、
list_clips、展示前 10 个片段列表、获取批准、为每个片段添加字幕并渲染、轮询、交付结果。 - “从这场网络研讨会里给我一周的素材” - 同上,数量控制在 5 到 7 个片段,使用每个片段的
category按主题分组。 - “只要最好的那个,用 MrBeast 风格的字幕” - 提交、轮询、取
virality_score最高的片段、调用render_clip(moment_id, caption_preset="beast")、轮询。 - “和上次一样的风格” - 在
submit_video中复用保存的代理 ID。
相关技能
关于流水线机制和状态处理的详细说明,请参见 openclip-clipping。字幕预设和自定义字幕样式,请参见 openclip-captions。免费的裁剪、修剪和压缩功能,请参见 openclip-video-editing。