DaVinci Resolve MCP

DaVinci Resolve MCP

一个服务器,使LLM应用程序能够直接与达芬奇Resolve视频编辑软件交互,从而实现AI辅助功能,例如访问时间线信息和自动化编辑工作流程。

Category
访问服务器

README

DaVinci Resolve MCP 服务器

版本 DaVinci Resolve Python macOS Windows 许可证

一个模型上下文协议 (MCP) 服务器,用于将 AI 编码助手(Cursor、Claude Desktop)连接到 DaVinci Resolve,使它们能够通过自然语言查询和控制 DaVinci Resolve。

功能

有关已实现和计划功能的完整列表,请参阅 docs/FEATURES.md

要求

  • 安装了 DaVinci Resolve 的 macOSWindows
  • Python 3.6+
  • 在后台运行的 DaVinci Resolve
  • (可选)Node.js/npm 用于某些功能

安装指南

有关详细的安装说明,请参阅 INSTALL.md。本指南涵盖:

  • 先决条件和系统要求
  • 分步安装过程
  • 配置详情
  • 常见故障排除步骤

平台支持

平台 状态 一步安装 快速开始
macOS ✅ 稳定 ./install.sh ./run-now.sh
Windows ✅ 稳定 install.bat run-now.bat
Linux ❌ 不支持 N/A N/A

快速开始指南

全新的一步安装(推荐)

最简单的入门方法是使用我们新的统一安装脚本。此脚本会自动执行所有操作:

  • 克隆存储库:

    git clone https://github.com/samuelgursky/davinci-resolve-mcp.git
    cd davinci-resolve-mcp
    
  • 确保已安装并运行 DaVinci Resolve Studio

  • 运行安装脚本: macOS/Linux:

    ./install.sh
    

    Windows:

    install.bat
    

这将:

  1. 自动检测系统上的正确路径
  2. 创建 Python 虚拟环境
  3. 从官方存储库安装 MCP SDK
  4. 设置环境变量
  5. 配置 Cursor/Claude 集成
  6. 验证安装是否正确
  7. (可选)启动 MCP 服务器

备选快速开始

您还可以使用原始的快速启动脚本:

Windows 用户:

run-now.bat

macOS 用户:

chmod +x run-now.sh
./run-now.sh

配置

有关使用不同的 AI 助手客户端(如 Cursor 或 Claude)配置 DaVinci Resolve MCP,请参阅 config-templates 目录。

故障排除

有关详细的故障排除指导,请参阅 INSTALL.md 文件,其中包含常见问题的解决方案。

常见问题

路径解析

  • 安装脚本现在使用更强大的路径解析,修复了 run-now.sh 在错误位置查找文件的问题
  • 始终让脚本根据其位置确定正确的路径

DaVinci Resolve 检测

  • 我们改进了进程检测,可以可靠地找到 DaVinci Resolve,无论它在进程列表中如何显示
  • 确保在启动 MCP 服务器之前运行 DaVinci Resolve

环境变量

  • 确保所有必需的环境变量都已正确设置
  • 查看 scripts/cursor_resolve_server.log 中的日志文件进行故障排除

Windows

  • 确保在配置文件中使用正斜杠 (/)
  • 必须安装 Python 并在配置中配置路径
  • 必须先运行 DaVinci Resolve,然后才能启动服务器

macOS

  • 确保脚本具有执行权限
  • 检查 Console.app 中是否有任何与 Python 相关的错误
  • 验证环境变量是否已正确设置
  • 必须先运行 DaVinci Resolve,然后才能启动服务器

支持

如有问题和功能请求,请使用 GitHub 问题跟踪器。

启动选项

安装后,您可以通过多种方式启动服务器:

客户端特定的启动脚本

该存储库包含用于使用特定客户端启动的专用脚本:

# 用于 Cursor 集成 (macOS)
chmod +x scripts/mcp_resolve-cursor_start
./scripts/mcp_resolve-cursor_start

# 用于 Claude Desktop 集成 (macOS)
chmod +x scripts/mcp_resolve-claude_start
./scripts/mcp_resolve-claude_start

这些专用脚本:

  • 为每个客户端设置适当的环境
  • 验证 DaVinci Resolve 是否正在运行
  • 配置客户端特定的设置
  • 使用适当的参数启动 MCP 服务器

预启动检查

在连接 AI 助手之前,请验证您的环境是否已正确配置:

# 在 macOS 上
./scripts/check-resolve-ready.sh

# 在 Windows 上
./scripts/check-resolve-ready.bat

这些脚本将:

  • 验证 DaVinci Resolve 是否正在运行(并提供启动它的选项)
  • 检查环境变量是否已正确设置
  • 确保 Python 环境已正确配置
  • 验证 Cursor/Claude 配置
  • (可选)启动 Cursor

通用启动器

对于高级用户,我们的通用启动器提供对 Cursor 和 Claude Desktop 服务器的完全控制:

# 使脚本可执行(仅限 macOS)
chmod +x scripts/mcp_resolve_launcher.sh

# 在交互模式下运行
./scripts/mcp_resolve_launcher.sh

# 或使用命令行选项
./scripts/mcp_resolve_launcher.sh --start-cursor    # 启动 Cursor 服务器(使用 mcp_resolve-cursor_start)
./scripts/mcp_resolve_launcher.sh --start-claude    # 启动 Claude Desktop 服务器(使用 mcp_resolve-claude_start)
./scripts/mcp_resolve_launcher.sh --start-both      # 启动两个服务器
./scripts/mcp_resolve_launcher.sh --stop-all        # 停止所有正在运行的服务器
./scripts/mcp_resolve_launcher.sh --status          # 显示服务器状态

其他选项:

  • 强制模式(跳过 Resolve 运行检查):--force
  • 项目选择:--project "项目名称"

完整安装

对于完整的手动安装:

  1. 克隆此存储库:

    git clone https://github.com/samuelgursky/davinci-resolve-mcp.git
    cd davinci-resolve-mcp
    
  2. 创建 Python 虚拟环境:

    # 创建虚拟环境
    python -m venv venv
    
    # 激活它
    # 在 macOS/Linux 上:
    source venv/bin/activate
    # 在 Windows 上:
    venv\Scripts\activate
    
    # 从 requirements.txt 安装依赖项
    pip install -r requirements.txt
    
    # 或者,直接安装 MCP SDK
    pip install git+https://github.com/modelcontextprotocol/python-sdk.git
    
  3. 设置 DaVinci Resolve 脚本环境环境变量:

    对于 macOS

    export RESOLVE_SCRIPT_API="/Library/Application Support/Blackmagic Design/DaVinci Resolve/Developer/Scripting"
    export RESOLVE_SCRIPT_LIB="/Applications/DaVinci Resolve/DaVinci Resolve.app/Contents/Libraries/Fusion/fusionscript.so"
    export PYTHONPATH="$PYTHONPATH:$RESOLVE_SCRIPT_API/Modules/"
    

    对于 Windows

    set RESOLVE_SCRIPT_API=C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting
    set RESOLVE_SCRIPT_LIB=C:\Program Files\Blackmagic Design\DaVinci Resolve\fusionscript.dll
    set PYTHONPATH=%PYTHONPATH%;%RESOLVE_SCRIPT_API%\Modules
    

    或者,运行预启动检查脚本,它将为您设置这些:

    # 在 macOS 上
    ./scripts/check-resolve-ready.sh
    
    # 在 Windows 上
    ./scripts/check-resolve-ready.bat
    
  4. 配置 Cursor 以通过创建配置文件来使用服务器:

    对于 macOS (~/.cursor/mcp.json):

    {
      "mcpServers": {
        "davinci-resolve": {
          "name": "DaVinci Resolve MCP",
          "command": "/path/to/your/venv/bin/python",
          "args": [
            "/path/to/your/davinci-resolve-mcp/src/main.py"
          ]
        }
      }
    }
    

    对于 Windows (%APPDATA%\Cursor\mcp.json):

    {
      "mcpServers": {
        "davinci-resolve": {
          "name": "DaVinci Resolve MCP",
          "command": "C:\\path\\to\\venv\\Scripts\\python.exe",
          "args": ["C:\\path\\to\\davinci-resolve-mcp\\src\\main.py"]
        }
      }
    }
    
  5. 使用客户端特定的脚本之一启动服务器:

    # 对于 Cursor
    ./scripts/mcp_resolve-cursor_start
    
    # 对于 Claude Desktop
    ./scripts/mcp_resolve-claude_start
    

与 AI 助手一起使用

与 Cursor 一起使用

  1. 使用专用脚本启动 Cursor 服务器:

    ./scripts/mcp_resolve-cursor_start
    

    或者使用通用启动器:

    ./scripts/mcp_resolve_launcher.sh --start-cursor
    
  2. 启动 Cursor 并打开一个项目。

  3. 在 Cursor 的 AI 聊天中,您现在可以与 DaVinci Resolve 交互。尝试以下命令:

    • "正在运行的 DaVinci Resolve 的版本是什么?"
    • "列出 DaVinci Resolve 中的所有项目"
    • "创建一个名为 'My Sequence' 的新时间线"
    • "在当前位置添加一个标记"

与 Claude Desktop 一起使用

  1. 使用 config-templates 目录中的模板在 Claude Desktop 配置目录中创建一个 claude_desktop_config.json 文件。

  2. 使用专用脚本运行 Claude Desktop 服务器:

    ./scripts/mcp_resolve-claude_start
    

    或者使用通用启动器:

    ./scripts/mcp_resolve_launcher.sh --start-claude
    
  3. 在 Claude Desktop 中,您现在可以使用与 Cursor 相同的命令与 DaVinci Resolve 交互。

可用功能

常规

  • 获取 DaVinci Resolve 版本
  • 获取/切换当前页面(编辑、颜色、Fusion 等)

项目管理

  • 列出可用项目
  • 获取当前项目名称
  • 按名称打开项目
  • 创建新项目
  • 保存当前项目

时间线操作

  • 列出所有时间线
  • 获取当前时间线信息
  • 创建新时间线
  • 按名称切换到时间线
  • 向时间线添加标记

媒体池操作

  • 列出媒体池剪辑
  • 导入媒体文件
  • 创建媒体箱
  • 将剪辑添加到时间线

Windows 支持说明

Windows 支持在 v1.3.3 中是稳定的,不应需要额外的故障排除:

  • 确保 DaVinci Resolve 安装在默认位置
  • 环境变量已按照上述说明正确设置
  • Windows 路径可能需要根据您的安装进行调整
  • 如有问题,请检查 logs/ 目录中的日志

故障排除

DaVinci Resolve 连接

确保在启动服务器之前运行 DaVinci Resolve。如果服务器无法连接到 Resolve,请检查:

  1. 您的环境变量已正确设置
  2. 您具有 DaVinci Resolve 安装的正确路径
  3. 设置环境变量后,您已重新启动终端

项目结构

davinci-resolve-mcp/
├── README.md               # 此文件
├── docs/                   # 文档
│   ├── FEATURES.md         # 功能列表和状态
│   ├── CHANGELOG.md        # 版本历史
│   ├── VERSION.md          # 版本信息
│   ├── TOOLS_README.md     # 工具文档
│   ├── PROJECT_MCP_SETUP.md # 项目设置指南
│   └── COMMIT_MESSAGE.txt  # 最新提交信息
├── config-templates/       # 配置模板
│   ├── sample_config.json  # 示例配置
│   ├── cursor-mcp-example.json # Cursor 配置示例
│   └── mcp-project-template.json # MCP 项目模板
├── scripts/                # 实用程序脚本
│   ├── tests/              # 测试脚本
│   │   ├── benchmark_server.py # 性能测试
│   │   ├── test_improvements.py # 测试脚本
│   │   ├── test_custom_timeline.py # 时间线测试
│   │   ├── create_test_timeline.py # 创建测试时间线
│   │   ├── test-after-restart.sh # 重启后测试 (Unix)
│   │   └── test-after-restart.bat # 重启后测试 (Windows)
│   ├── batch_automation.py # 批量自动化脚本
│   ├── restart-server.sh   # 服务器重启脚本 (Unix)
│   ├── restart-server.bat  # 服务器重启脚本 (Windows)
│   ├── run-now.sh          # 快速启动脚本 (Unix)
│   └── run-now.bat         # 快速启动脚本 (Windows)
├── resolve_mcp_server.py   # 主服务器实现
├── src/                    # 源代码
│   ├── api/                # API 实现
│   ├── features/           # 功能模块
│   └── utils/              # 实用程序函数
├── logs/                   # 日志文件
├── tools/                  # 开发工具
├── assets/                 # 项目资产
└── examples/               # 示例代码

许可证

MIT

致谢

  • Blackmagic Design 提供的 DaVinci Resolve 及其 API
  • MCP 协议团队提供的 AI 助手集成

作者

Samuel Gursky (samgursky@gmail.com)

未来计划

  • Windows 和 Linux 支持
  • 额外的 DaVinci Resolve 功能
  • 支持 Claude Desktop

开发

如果您想贡献,请查看存储库中的功能清单,并选择一个未实现的功能进行开发。 代码结构清晰,针对不同的功能区域有明确的部分。

许可证

MIT

致谢

  • Blackmagic Design 提供的 DaVinci Resolve 及其 API
  • MCP 协议团队提供的 AI 助手集成

项目结构

清理后,项目具有以下结构:

  • resolve_mcp_server.py - 主要 MCP 服务器实现
  • run-now.sh - 快速启动脚本,处理设置并运行服务器
  • setup.sh - 用于安装的完整设置脚本
  • check-resolve-ready.sh - 预启动检查,用于验证 DaVinci Resolve 是否已准备好
  • start-server.sh - 用于启动服务器的脚本
  • run-server.sh - 用于直接运行服务器的简化脚本

主要目录:

  • src/ - 源代码和模块
  • assets/ - 项目资产和资源
  • logs/ - 日志文件目录
  • scripts/ - 辅助脚本

在开发时,建议使用 ./run-now.sh,它一步设置环境并启动服务器。

更新日志

有关更改的详细历史记录,请参阅 docs/CHANGELOG.md

Cursor 特定设置

与 Cursor 集成时,请按照以下特定步骤操作:

  1. 确保在启动 Cursor 之前运行 DaVinci Resolve

  2. 安装所需的依赖项:

    # 从 davinci-resolve-mcp 目录:
    pip install -r requirements.txt
    

    注意:这将自动安装 MCP 包和其他依赖项。

  3. 在 Cursor 中设置 MCP 服务器配置:

    在 macOS 上创建或编辑 ~/.cursor/mcp.json(或在 Windows 上创建或编辑 %USERPROFILE%\.cursor\mcp.json):

    {
      "mcpServers": {
        "davinci-resolve": {
          "name": "DaVinci Resolve MCP",
          "command": "/path/to/your/venv/bin/python",
          "args": [
            "/path/to/your/davinci-resolve-mcp/src/main.py"
          ]
        }
      }
    }
    

    重要说明:

    • 使用 main.py 作为入口点(而不是 resolve_mcp_server.py
    • 在配置中使用绝对路径
  4. 常见问题:

    • "Client closed" 错误:检查 mcp.json 中的路径是否正确以及是否已安装依赖项
    • 连接问题:确保在启动 Cursor 之前运行 DaVinci Resolve
    • 环境变量:main.py 脚本将处理设置环境变量

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选