关于 StudioMeyer Video
StudioMeyer Video 是供 Agent 使用的 MCP 服务,可录制网站并制作剪辑视频。工具涵盖捕获、后期处理、字幕、语音生成和元素识别截图,基于 ffmpeg 与 Playwright。
主要功能
- 01使用 Playwright 以 60fps 录制网站
- 02剪辑视频和调色
- 03混音及语音效果
- 04生成字幕和文字动画
- 05TTS 与旁白视频制作
- 06元素识别截图
适用场景
- 01制作带字幕和配乐的产品演示
- 02准备适配社交媒体格式的短片
- 03生成网站旁白讲解视频
- 04录制用户流程用于自动化 QA
MCP 相关
该服务向 MCP 客户端提供八种视频制作工具。默认使用 stdio,也支持可选的 HTTP 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
StudioMeyer MCP Stack 的一部分 — 于马略卡岛打造 🌴 · 如果你在使用,欢迎点 ⭐
mcp-video
8 个 MCP 工具,用于录制、编辑、添加特效、字幕、TTS 和智能截图。
基于 ffmpeg 和 Playwright 构建。适用于任何 MCP 客户端。
我们想说的话
过去两年里,我们一直在为自己构建工具和系统。这个仓库规模小、星标少,并不是因为它刚刚创建,而是因为我们最近才决定分享自己的成果。这不是一场新鲜的实验,而是一段漫长历程,只是最近才提交代码。
我们热爱构建和分享,不喜欢社交媒体套路、增长黑客,也不热衷于追逐星标和关注者。所以这个仓库规模不大。代码真实可靠,我们一直在使用,也会回复问题。请自行评判。
如果它对你有帮助,分享、测试和反馈都能帮到我们。如果你觉得它还有改进空间,提交 issue 会更有用。如果你用它做出了什么,欢迎发邮件告诉我们:[email protected]。这真的会让我们开心一整天。
来自马略卡岛帕尔马的一间小工作室。
功能
| 工具 | 操作 | 说明 |
|---|---|---|
video_record | cinema, scroll, multi-device | 以 60fps 录制网站,逐帧捕获 |
video_edit | speed, crop, reverse, keyframe, pip | 编辑片段,支持缩放/平移、画中画和慢动作 |
video_color | grade, effect, lut, chroma | 色彩分级、22 种 LUT 预设、绿幕 |
video_audio | extract, music, ducking, mix, voice | 音频提取、混音、9 种语音效果 |
video_text | subtitles, caption, overlay, animate | 烧录 SRT 字幕、Whisper 自动字幕、15 种文字动画 |
video_compose | concat, intro, social, beat-sync, templates | 合并片段、转换社交媒体格式、节拍同步 |
video_speech | generate, voices, narrated | ElevenLabs/OpenAI TTS、完整配音视频 |
video_screenshot | capture, detect | 感知页面元素的截图、页面特征检测 |
亮点
- 60fps 逐帧采集 — Playwright 每帧截图,ffmpeg 负责编码。零丢帧。
- 电影级缓动曲线 — 提供 16 种缓动选项,包括
cinematic和showcase,让滚动流畅顺滑。 - 智能截图 — 自动检测 15 种以上 UI 元素(聊天组件、定价版块、预约表单等)。
- 配音视频 — 提供 URL 和脚本,即可生成配有同步 AI 配音的专业视频。
- 22 种 LUT 预设 — 电影级调色(青橙色调、黑色电影、复古、赛博朋克等)。
- 社交媒体格式导出 — 一键转换为 Instagram Reel、TikTok、YouTube Short、LinkedIn 格式。
- 双传输模式 — Stdio(默认)或 HTTP 模式,适用于持久化微服务部署。
前置条件
- Node.js >= 18
- ffmpeg 和 ffprobe(启动时验证,支持跨平台)
- Playwright 浏览器(
npx playwright install chromium) - 可选:用于 ElevenLabs TTS 的
ELEVENLABS_API_KEY - 可选:用于 Whisper 字幕和 OpenAI TTS 的
OPENAI_API_KEY
如果 ffmpeg 不在 PATH 中,请将 FFMPEG_PATH 和 FFPROBE_PATH 设置为二进制文件的
绝对路径。这两个环境变量会在启动时及每次运行时调用时生效。
快速开始
使用 Claude Code(stdio)
{
"mcpServers": {
"video": {
"command": "npx",
"args": ["-y", "@studiomeyer/mcp-video"]
}
}
}
使用 npx
npx @studiomeyer/mcp-video
从源码开始
git clone https://github.com/studiomeyer-io/mcp-video.git
cd mcp-video
npm install
npx playwright install chromium
npm run build
npm start
HTTP 模式
# Start as HTTP microservice
npx @studiomeyer/mcp-video --http --port=9847
# Or via environment variables
MCP_HTTP=1 MCP_PORT=9847 npx @studiomeyer/mcp-video
配置
| 环境变量 | 默认值 | 说明 |
|---|---|---|
VIDEO_OUTPUT_DIR | ./output | 生成文件的目录 |
FFMPEG_PATH | — | ffmpeg 二进制文件不在 PATH 中时使用的绝对路径 |
FFPROBE_PATH | — | ffprobe 二进制文件不在 PATH 中时使用的绝对路径 |
ELEVENLABS_API_KEY | — | ElevenLabs TTS API 密钥 |
OPENAI_API_KEY | — | OpenAI API 密钥(Whisper + TTS) |
MCP_HTTP | false | 启用 HTTP 传输 |
MCP_PORT | 9847 | HTTP 端口 |
MCP_HOST | 127.0.0.1 | HTTP 绑定地址 |
MCP_VIDEO_DEBUG | false | 启用调试日志 |
MCP_VIDEO_ALLOW_INTERNAL | false | 设置为 1,以允许解析到 localhost / 私有 / 元数据 IP 的 URL。仅限本地开发 — 生产环境中请勿设置(SSRF 防护)。 |
可以构建什么
| 使用场景 | 使用的工具 | 输出 |
|---|---|---|
| 产品演示视频 | video_record → video_text → video_audio | 60fps 网站录制 + 自动字幕 + 背景音乐 |
| 社交媒体短片 | video_record → video_compose | 录制一次 → 导出为 Instagram Reel、TikTok、YouTube Short |
| 配音解说视频 | video_speech → video_color | AI 配音 + 电影级调色 |
| 前后对比 | video_screenshot → video_edit | 智能元素截图 + 画中画合成 |
| 自动化 QA | video_record + video_screenshot | 录制用户流程 + 截取指定元素 |
使用示例
录制网站
Use video_record with type "cinema" to record https://example.com
with a smooth scroll and hover over the navbar.
创建配音解说视频
Use video_speech with type "narrated" to create a narrated video of
https://example.com with these segments:
1. "Welcome to our homepage" — pause on hero section
2. "Check out our features" — scroll to features
3. "Get started today" — hover over CTA button
为视频自动添加字幕
Use video_text with type "caption" to add auto-generated captions
to /path/to/video.mp4
导出为社交媒体格式
Use video_compose with type "social-all" to convert
/path/to/video.mp4 to all social media formats.
智能截图
Use video_screenshot with type "capture" to screenshot the chat widget
and pricing section on https://example.com
架构
src/
server.ts Entry point, 8 consolidated MCP tools
lib/ Logger, types, dual transport
handlers/ Tool handlers (video, editing, post-production, tts, screenshots)
schemas/ JSON Schema definitions for legacy tool format
tools/
engine/ Core engines
capture.ts Frame-by-frame recording (Playwright → PNG → ffmpeg)
encoder.ts ffmpeg encoding pipeline
scenes.ts Scene execution (scroll, hover, click, type, wait)
cursor.ts Visible cursor simulation
smart-screenshot.ts Element-aware screenshot engine
tts.ts ElevenLabs + OpenAI TTS with fallback
narrated-video.ts Full narration pipeline
social-format.ts Social media format conversion
concat.ts Video concatenation with transitions
lut-presets.ts 22 cinema LUT presets
...and more
开发
npm run dev # Start with tsx (hot reload)
npm run typecheck # Type check
npm test # Run tests
npm run check # Verify ffmpeg/ffprobe installed
关于 StudioMeyer
StudioMeyer 是一家位于马略卡岛帕尔马的 AI 与设计工作室,为全球客户提供服务。我们为中小型企业构建定制网站和 AI 基础设施。生产技术栈基于 Claude Agent SDK、MCP 和 n8n,并使用 Sentry、Langfuse 和 LangGraph 进行可观测性管理,另配有自研防护层。
许可证
MIT
致谢
由 StudioMeyer 构建,是我们用于 AI 驱动内容创作的开源工具集的一部分。
- ai-shield — TypeScript 的 LLM 安全中间件
- agent-fleet — Claude Code 的多 Agent 编排工具
- darwin-agents — 自进化 Agent 框架
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。