Video Editor (FFMpeg)

Video Editor (FFMpeg)

🚀 视频编辑 MCP 服务器

这是一个功能强大的视频编辑 MCP 服务器,它借助 FFmpeg 实现通过自然语言命令执行各类视频编辑操作,极大地提升了视频编辑的便捷性和效率。

✨ 主要特性

工具

服务器实现了一个核心工具:

  • execute_ffmpeg:可执行带有进度跟踪的 FFmpeg 命令。
    • 接收命令字符串作为输入。
    • 对 FFmpeg 操作进行验证并执行。
    • 实时报告处理进度。
    • 处理错误并提供详细反馈。
    • 支持所有 FFmpeg 操作,涵盖:
      • 裁剪/剪辑
      • 合并视频
      • 转换格式
      • 调整速度
      • 添加音频轨道
      • 提取音频
      • 添加字幕
      • 基本滤镜(亮度、对比度等)

📦 安装指南

先决条件

  1. 系统中必须已安装 FFmpeg,且其可在系统 PATH 中被访问。
  2. 需安装 Python 3.9 或更高版本。
  3. 安装所需的 Python 包:
    mcp
    httpx
    

安装步骤

  1. 若尚未安装 FFmpeg,可按以下方式进行安装:

    # 在 macOS 上使用 Homebrew
    brew install ffmpeg
    
    # 在 Windows 上使用 Chocolatey
    choco install ffmpeg
    
    # 在 Ubuntu/Debian 上
    sudo apt install ffmpeg
    
  2. 安装视频编辑包:

    uv add video-editor
    

Claude 桌面集成

在您的 Claude Desktop 配置文件中进行如下配置:

  • 在 MacOS 上:~/Library/Application Support/Claude/claude_desktop_config.json
  • 在 Windows 上:%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"video-editor": {
"command": "uv",
"args": ["run", "video-editor"]
}
}
}

💻 使用示例

基础用法

一旦连接到 Claude Desktop,您可以发出如下自然语言请求:

  1. "将 video.mp4 从 1:30 到 2:45 裁剪"
  2. "将 input.mp4 转换为 WebM 格式"
  3. "将 video.mp4 的速度加快 2 倍"
  4. "合并 video1.mp4 和 video2.mp4"
  5. "从 video.mp4 中提取音频"
  6. "将 subtitles.srt 添加到 video.mp4"

服务器将执行以下操作:

  1. 解析您的请求。
  2. 生成合适的 FFmpeg 命令。
  3. 执行命令并进行进度跟踪。
  4. 在完成时提供反馈。

📚 详细文档

开发

构建和发布

  1. 同步依赖项:

    uv sync
    
  2. 构建包:

    uv build
    
  3. 发布到 PyPI:

    uv publish
    

注意:通过以下方式设置 PyPI 凭据:

  • 令牌:--tokenUV_PUBLISH_TOKEN
  • 或用户名/密码:--username/UV_PUBLISH_USERNAME--password/UV_PUBLISH_PASSWORD

调试

为了获得最佳调试体验,请使用 MCP 检查器:

npx @modelcontextprotocol/inspector uv --directory /path/to/video_editor run video-editor

错误处理

服务器具备强大的错误处理功能,可处理以下情况:

  • 无效的输入文件
  • 格式错误的 FFmpeg 命令
  • 运行时执行错误
  • 进度跟踪问题

所有错误都会详细报告给客户端,方便进行调试。

安全注意事项

  • 仅处理显式允许目录中的文件。
  • 在执行 FFmpeg 命令前验证其有效性。
  • 对所有输入参数进行清理。
  • 报告与安全相关的详细错误消息。

贡献

欢迎贡献代码!请按以下步骤操作:

  1. Fork 这个仓库。
  2. 创建一个新的分支用于您的功能:git checkout -b feature/your-feature
  3. 提交您的更改:git commit -m '描述您的修改'
  4. 推送到远程仓库:git push origin feature/your-feature
  5. 创建一个 Pull Request。

请确保在提交之前检查代码格式和文档是否符合要求。

  • 0 关注
  • 0 收藏,22 浏览
  • system 提出于 2025-09-27 18:36

相似服务问题

相关AI产品