项目简介

DaVinci Resolve MCP Server 是一个桥梁,它使得大型语言模型(LLM)能够与 Blackmagic Design 的专业视频编辑软件 DaVinci Resolve 进行交互。通过实现 Model Context Protocol (MCP),该服务器允许 LLM 应用以标准化的方式访问 DaVinci Resolve 的项目、时间线、媒体等资源,并执行编辑操作,从而实现智能化的视频编辑流程。

主要功能点

  • 项目和时间线访问: 允许 LLM 获取 DaVinci Resolve 项目和时间线的详细信息,例如项目名称、帧率、分辨率、时间线列表、当前时间线等。
  • 媒体池管理: 提供访问媒体池中素材列表的能力,让 LLM 了解项目中的媒体资源。
  • 时间线剪辑操作: 支持 LLM 查询时间线上的剪辑片段,并具备基于名称选择剪辑片段的能力,为自动化编辑和内容分析奠定基础。
  • 项目管理: 支持创建和打开 DaVinci Resolve 项目,方便 LLM 进行项目级的操作。
  • 可扩展操作: 服务器设计为可扩展的,未来可以添加更多 DaVinci Resolve 的功能支持,例如渲染导出、颜色分级、LUT 应用等。
  • 安全认证: 采用 API 密钥认证,保障服务器安全。
  • WebSocket 通信: 使用 WebSocket 协议进行实时通信,保证 LLM 客户端和服务器之间的稳定连接。

安装步骤

  1. 克隆仓库: 使用 Git 克隆 'davinci-resolve-mcp' 仓库到本地:

    git clone https://github.com/samuelgursky/davinci-resolve-mcp.git
    cd davinci-resolve-mcp
  2. 安装依赖: 安装项目所需的 Python 依赖包:

    pip install -r requirements.txt
  3. 配置环境变量: 复制 '.env.example' 文件并重命名为 '.env',根据你的操作系统取消注释相应的环境变量配置,并设置一个安全的 API 密钥 'MCP_API_KEY'。例如:

    cp .env.example .env

    编辑 '.env' 文件,设置 API 密钥:

    MCP_API_KEY="your_secret_api_key"

服务器配置

MCP 客户端需要以下配置信息来连接 DaVinci Resolve MCP 服务器。请将以下 JSON 配置添加到你的 MCP 客户端配置中。

{
  "server name": "DaVinci Resolve MCP",
  "command": "python",
  "args": [
    "scripts/run_server.py"
  ],
  "host": "ws://localhost:8765/mcp",
  "api_key": "your_secret_api_key"
}

配置参数说明:

  • '"server name"': 服务器的显示名称,可以自定义。
  • '"command"': 启动服务器的命令,这里使用 'python'。
  • '"args"': 启动命令的参数,指定运行 'scripts/run_server.py' 脚本。
  • '"host"': MCP 服务器的 WebSocket 地址,默认为 'ws://localhost:8765/mcp'。
  • '"api_key"': 用于身份验证的 API 密钥,需要与 '.env' 文件中 'MCP_API_KEY' 的设置保持一致。 请务必替换 '"your_secret_api_key"' 为你在 '.env' 文件中设置的真实 API 密钥。

基本使用方法

  1. 启动 DaVinci Resolve: 确保 DaVinci Resolve 软件已启动并打开一个项目。
  2. 启动 MCP 服务器: 在仓库根目录下运行 'scripts/run_server.py' 脚本来启动 MCP 服务器:
    python scripts/run_server.py
    服务器默认运行在 'ws://localhost:8765/mcp'。
  3. 配置 MCP 客户端: 在支持 MCP 协议的 LLM 客户端(例如 Claude)中,配置 MCP 连接,填入上述 服务器配置 JSON 信息,并使用你在 '.env' 文件中设置的 API 密钥。
  4. 通过 LLM 交互: 现在你可以通过 LLM 客户端向 DaVinci Resolve MCP 服务器发送指令,例如查询项目信息、分析时间线、选择剪辑片段等,实现 AI 辅助的视频编辑功能。

示例任务:

  • 询问 LLM 当前 DaVinci Resolve 中打开了哪些项目。
  • 让 LLM 分析当前时间线的结构并提供统计信息。
  • 指示 LLM 打开指定名称的项目。
  • 要求 LLM 选择时间线上名称包含特定关键词的剪辑片段。

信息

分类

桌面与硬件