
MCP FFmpeg Helper
一个轻量级服务器,通过模型上下文协议(MCP)将 FFmpeg 的视频处理能力暴露给 AI 助手,支持视频格式转换、音频提取和添加水印等操作。
README
MCP FFmpeg 助手
一个基于 Model Context Protocol (MCP) 的 FFmpeg 辅助工具,提供视频处理功能。
功能概述
MCP FFmpeg 助手是一个轻量级服务器,它通过 MCP 协议将 FFmpeg 的强大功能暴露给 AI 助手。它支持以下视频处理操作:
- 获取视频文件详细信息
- 转换视频格式
- 从视频中提取音频
- 从图像序列创建视频
- 裁剪视频
- 为视频添加水印
安装与配置
前提条件
- Node.js (v14+)
- FFmpeg (需要安装在系统中并可通过命令行访问)
FFmpeg 官方下载页面 获取
可以使用
检查是否安装成功ffmpeg -version
安装步骤
- 克隆或下载此仓库
- 安装依赖:
npm install
- 构建项目:
npm run build
配置 MCP
要在 Windsurf 或其他支持 MCP 的应用程序中使用此工具,请将以下配置添加到 MCP 配置文件中:
1.本地配置node服务器
windows:
{
"mcp-ffmpeg-helper": {
"command": "cmd",
"args": [
"/c",
"node",
"path/to/mcp-ffmpeg-helper/build/index.js"
]
}
}
对于 Windows 用户,配置文件通常位于:%APPDATA%/.codeium/windsurf/mcp_config.json
macos:
{
"mcp-ffmpeg-helper": {
"command": "node",
"args": [
"path/to/mcp-ffmpeg-helper/build/index.js"
]
}
}
2.使用npm包的方式配置mcp服务器(推荐使用,不需要手动构建node服务器,不用克隆仓库到本地)
windows:
{
"mcp-ffmpeg-helper": {
"command": "cmd",
"args": [
"/c",
"npx",
"@sworddut/mcp-ffmpeg-helper"
]
}
}
macos:
{
"mcp-ffmpeg-helper": {
"command": "npx",
"args": [
"@sworddut/mcp-ffmpeg-helper"
]
}
}
使用示例
获取视频信息
直接在windsurf控制台输入: 请帮我查看"path/to/video.mp4"视频信息
转换视频
直接在windsurf控制台输入: 请帮我将"path/to/input.avi"转换为"path/to/output.mp4"
提取音频
直接在windsurf控制台输入: 请帮我从"path/to/video.mp4"提取音频到"path/to/audio.mp3"
从图像创建视频
直接在windsurf控制台输入: 请帮我从"path/to/images/%05d.jpg"创建视频到"path/to/output.mp4"
裁剪视频
直接在windsurf控制台输入: 请帮我裁剪"path/to/input.mp4"到"path/to/output.mp4",从00:00:00开始,到00:01:00结束
添加水印
直接在windsurf控制台输入: 请帮我为"path/to/input.mp4"添加水印到"path/to/output.mp4",使用"path/to/watermark.png"作为水印,位置在[右下角/左上角/中心等],透明度[0-1之间的值]
可用工具
1. 获取视频信息 (get_video_info)
获取视频文件的详细信息,包括格式、编解码器、分辨率、帧率等。
参数:
filePath
: 视频文件路径
示例:
get_video_info({
filePath: "path/to/video.mp4"
})
2. 转换视频 (convert_video)
将视频转换为不同格式或应用特定编码选项。
参数:
inputPath
: 输入视频文件路径outputPath
: 输出视频文件路径options
: 附加的 FFmpeg 选项(可选)
示例:
convert_video({
inputPath: "path/to/input.avi",
outputPath: "path/to/output.mp4",
options: "-c:v libx264 -crf 23 -preset medium"
})
3. 提取音频 (extract_audio)
从视频文件中提取音频轨道。
参数:
inputPath
: 输入视频文件路径outputPath
: 输出音频文件路径format
: 音频格式(如 mp3, aac 等)
示例:
extract_audio({
inputPath: "path/to/video.mp4",
outputPath: "path/to/audio.mp3",
format: "mp3"
})
4. 从图像创建视频 (create_video_from_images)
从图像序列创建视频文件。
参数:
inputPattern
: 输入图像模式(如 'img%03d.jpg' 或 'folder/*.png')outputPath
: 输出视频文件路径framerate
: 帧率(默认:25)codec
: 视频编解码器(默认:libx264)pixelFormat
: 像素格式(默认:yuv420p)extraOptions
: 附加的 FFmpeg 选项(可选)
示例:
create_video_from_images({
inputPattern: "images/%05d.jpg",
outputPath: "output.mp4",
framerate: 30,
codec: "libx264",
pixelFormat: "yuv420p"
})
5. 裁剪视频 (trim_video)
将视频裁剪到指定的时间段。
参数:
inputPath
: 输入视频文件路径outputPath
: 输出视频文件路径startTime
: 开始时间(格式:HH:MM:SS.mmm 或秒数)duration
: 持续时间(可选,格式同上)endTime
: 结束时间(可选,格式同上)
示例:
trim_video({
inputPath: "path/to/video.mp4",
outputPath: "path/to/trimmed.mp4",
startTime: "00:00:10",
duration: "00:00:30"
})
6. 添加水印 (add_watermark)
为视频添加图像水印。
参数:
inputPath
: 输入视频文件路径watermarkPath
: 水印图像路径outputPath
: 输出视频文件路径position
: 水印位置(topleft, topright, bottomleft, bottomright, center)opacity
: 水印不透明度(0.0-1.0)
示例:
add_watermark({
inputPath: "path/to/video.mp4",
watermarkPath: "path/to/logo.png",
outputPath: "path/to/watermarked.mp4",
position: "bottomright",
opacity: 0.7
})
实际使用案例
从图像序列创建 30fps 的 H.264 视频
create_video_from_images({
inputPattern: "C:/Users/username/images/bear/%05d.jpg",
outputPath: "C:/Users/username/videos/bear.mp4",
framerate: 30,
codec: "libx264",
pixelFormat: "yuv420p"
})
将视频的前 10 秒裁剪出来
trim_video({
inputPath: "C:/Users/username/videos/long_video.mp4",
outputPath: "C:/Users/username/videos/clip.mp4",
startTime: "0",
duration: "10"
})
故障排除
- 确保 FFmpeg 已正确安装并添加到系统 PATH 中
- 检查文件路径是否正确,特别是在 Windows 系统中使用反斜杠(\)时
- 如果遇到权限问题,请确保应用程序有权访问指定的文件和目录
- 对于复杂的 FFmpeg 命令,可以使用
options
或extraOptions
参数传递额外的命令行选项
开发
调试
由于 MCP 服务器通过标准输入/输出进行通信,调试可能比较困难。建议使用控制台日志进行调试:
console.log("调试信息");
扩展功能
要添加新的 FFmpeg 功能,请修改以下文件:
- 在
ListToolsRequestSchema
处理程序中添加新工具的定义 - 在
CallToolRequestSchema
处理程序中添加相应的实现
许可证
推荐服务器

Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。