视频编辑服务器

一个基于FFmpeg的强大视频编辑服务器,支持通过自然语言命令执行视频编辑操作。

  • by Kush36Agrawal
  • Python
  • 本地部署
  • 51 星标
  • 更新于
在 GitHub 查看 Kush36Agrawal/Video_Editor_MCP

使用说明

视频编辑器MCP服务器

一个功能强大的视频编辑MCP服务器,利用FFmpeg通过自然语言命令执行视频编辑操作。

组件

工具

服务器实现了一个主要工具:

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

配置

先决条件

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

安装

  1. 如果尚未安装FFmpeg,请安装:

    # On macOS with Homebrew
    brew install ffmpeg
    
    # On Windows with Chocolatey
    choco install ffmpeg
    
    # On 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"]
    }
  }
}

发展

建筑与出版

  1. 同步依赖关系:

    uv sync
    
  2. 构建包:

    uv build
    
  3. 发布到PyPI:

    uv publish
    

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

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

调试

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

npx @modelcontextprotocol/inspector uv --directory /path/to/video_editor 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. “从视频中提取音频.mp4”
  6. “将字幕.srt添加到video.mp4”

服务器将:

  1. 解析您的请求
  2. 生成相应的FFmpeg命令
  3. 执行它并跟踪进度
  4. 完成后提供反馈

错误处理

该服务器包括强大的错误处理功能,用于:

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

所有错误都会报告给客户端,并附上详细的调试消息。

安全考虑

  • 仅处理明确允许的目录中的文件
  • 执行前验证FFmpeg命令
  • 对所有输入参数进行消毒
  • 报告安全相关问题的详细错误消息

贡献

欢迎投稿!请按照以下步骤操作:

  1. 分叉存储库
  2. 创建功能分支
  3. 进行更改
  4. 提交拉取请求