DaVinci Resolve MCP Server

这是 README 的更新版本,其中的增强功能反映了ResolveAPI类的扩展功能、更高的清晰度以及更多设置和使用细节。其结构与原始 README 保持一致,但我整合了新功能(例如图库管理、轨道控制、音频调整、播放等),并优化了uv安装和 Claude 集成的说明。


DaVinci Resolve MCP 服务器

模型上下文协议 (MCP) 服务器使 Claude 等 AI 助手能够与 DaVinci Resolve Studio 进行交互,从而提供对编辑、调色、音频等的高级控制。

概述

该服务器实现了 MCP 协议,在 AI 助手和 DaVinci Resolve 之间架起了一座桥梁。它允许 AI 助手:

  • 创建、加载和管理 DaVinci Resolve 项目
  • 操控时间线、轨道和剪辑
  • 导入和组织媒体文件
  • 访问和修改 Fusion 作品
  • 在图库中执行颜色分级并管理静态图像
  • 调整音频设置并控制播放
  • 在 Resolve 页面(媒体、编辑、融合、颜色、Fairlight、交付)之间导航
  • 执行自定义 Python 和 Lua 脚本
  • 导出和导入项目

要求

  • DaVinci Resolve Studio 18.0 或更高版本
  • Python 3.10 或更高版本
  • 访问 DaVinci Resolve 脚本 API

紫外线安装

uv是一款快速、现代的 Python 软件包安装程序和解析器,性能远超 pip。请按照以下步骤使用uv安装并设置 DaVinci Resolve MCP 服务器:

1.安装uv

如果未安装uv

# Using pip (ensure pip is for Python 3.10+) pip install uv # Using Homebrew (macOS) brew install uv # Using Conda conda install -c conda-forge uv

验证安装:

uv --version

2.创建虚拟环境

创建并激活虚拟环境来隔离依赖关系:

uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate

3. 安装 DaVinci Resolve MCP 服务器

从项目目录安装服务器及其依赖项:

# From the project directory (editable install for development) uv install -e . # Or directly from GitHub (replace with your repo URL) uv install git+https://github.com/yourusername/davinci-resolve-mcp.git

4.安装依赖项

确保requirements.txt包含:

mcp pydantic

安装它们:

uv install -r requirements.txt

配置

运行服务器之前,请确保:

  1. DaVinci Resolve Studio 正在运行。
  2. Python 可以访问 DaVinci Resolve 脚本 API(大多数情况下由ResolveAPI自动处理)。

API访问配置

ResolveAPI类动态定位脚本 API,但在某些情况下可能需要手动配置它:

macOS

API 通常位于:

  • /Library/Application Support/Blackmagic Design/DaVinci Resolve/Developer/Scripting/Modules
  • 或者用户特定的: ~/Library/Application Support/Blackmagic Design/DaVinci Resolve/Developer/Scripting/Modules

通常不需要额外的设置。

视窗

如果未检测到,请添加 API 路径:

import sys sys.path.append("C:\\ProgramData\\Blackmagic Design\\DaVinci Resolve\\Support\\Developer\\Scripting\\Modules")

Linux

设置环境变量:

export PYTHONPATH=$PYTHONPATH:/opt/resolve/Developer/Scripting/Modules

或者,通过环境变量设置自定义路径:

export RESOLVE_SCRIPT_PATH="/custom/path/to/scripting/modules"

运行服务器

启动 MCP 服务器:

# Run directly with Python python -m resolve_mcp.server # Or with uv uv run resolve_mcp/server.py

服务器将启动并连接到 DaVinci Resolve,记录如下输出:

2025-03-19 ... - resolve_mcp - INFO - Successfully connected to DaVinci Resolve.

Claude 集成配置

要与 Claude Desktop 集成,请更新您的claude_desktop_config.json (例如,macOS 上的~/Library/Application Support/Claude/claude_desktop_config.json ):

{ "mcpServers": { "davinci-resolve": { "command": "/path/to/uv", "args": [ "run", "--directory", "/path/to/davinci-resolve-mcp", "resolve_mcp/server.py" ] } } }
  • /path/to/uv替换为您的uv可执行文件的路径(例如, /usr/local/bin/uvC:\Users\username\.cargo\bin\uv.exe )。
  • /path/to/davinci-resolve-mcp替换为项目目录的绝对路径。

重启 Claude Desktop 以启用服务器。在输入框中查找锤子图标以确认集成。

故障排除

连接问题

如果服务器连接失败:

  1. 确保 DaVinci Resolve Studio 正在运行。
  2. 检查 Resolve 的首选项以确认脚本已启用。
  3. 验证 Python 版本兼容性(建议 3.10+):
    python --version
  4. 确认 API 路径可访问(请参阅 macOS 上的~/Library/Logs/Claude/mcp*.log或 Windows 上的%userprofile%\AppData\Roaming\Claude\Logs\中的日志)。

依赖问题

如果缺少mcppydantic等模块:

uv install mcp pydantic

Python 版本兼容性

如果需要,请切换到与pyenv兼容的版本:

pyenv install 3.10.12 pyenv shell 3.10.12 uv install -r requirements.txt

可用的工具和资源

MCP 服务器通过ResolveAPI类提供了广泛的功能:

项目管理

  • 创建新项目( create_project
  • 加载现有项目( load_project
  • 保存当前项目( save_project
  • 导出/导入项目( export_projectimport_project
  • 获取/设置项目设置( get_project_settingsset_project_setting

时间轴操作

  • 创建新的时间线( create_timeline
  • 设置/获取当前时间线( set_current_timelineget_current_timeline
  • 添加/管理曲目( add_trackset_track_nameenable_track
  • 获取时间线项目( get_timeline_items
  • 设置剪辑属性( set_clip_property
  • 添加标记( add_timeline_marker

媒体管理

  • 导入媒体文件( add_items_to_media_pool
  • 创建媒体池文件夹( add_sub_folder
  • 从剪辑创建时间线( create_timeline_from_clips
  • 获取剪辑元数据( get_clip_metadata

融合集成

  • 将 Fusion 合成添加到剪辑( create_fusion_node
  • 创建/管理 Fusion 节点( create_fusion_node
  • 访问当前合成( get_current_comp

色彩分级

  • 获取/添加颜色节点( get_color_page_nodesadd_color_node
  • 保存/应用静止图像( save_stillapply_still
  • 管理画廊相册( get_gallery_albums

音频控制

  • 获取/设置剪辑音频音量( get_audio_volumeset_audio_volume
  • 设置轨道音量( set_track_volume

播放控制

  • 播放/停止播放( playstop
  • 获取/设置播放头位置( get_current_timecodeset_playhead_position

渲染

  • 开始渲染( start_render
  • 获取渲染状态( get_render_status

导航

  • 打开特定页面( open_page :媒体、编辑、融合、颜色、Fairlight、交付)

高级操作

  • 执行自定义 Python 代码( execute_python
  • 在 Fusion 中执行 Lua 脚本( execute_lua

发展

贡献:

  1. 分叉存储库: https://github.com/yourusername/davinci-resolve-mcp
  2. 创建功能分支: git checkout -b feature-name
  3. 安装依赖项: uv install -e .
  4. 进行修改并测试: uv run resolve_mcp/server.py
  5. 提交拉取请求。

执照

MIT 许可证


重要更新

  • 扩展功能:在“可用工具和资源”部分添加了图库管理、轨道控制、音频调整、播放和项目导出/导入等新功能。
  • 安装清晰度:改进的uv指令,带有验证步骤和 Claude 集成的明确路径。
  • 故障排除:通过特定的命令和日志位置进行增强,以便进行调试。
  • 配置:更新了 API 访问说明,以反映ResolveAPI中的动态路径处理。

此 README 现已与增强版ResolveAPI类完全兼容,为用户和开发者提供全面的指南。如果您需要进一步调整,请告知我!

ID: isq3datog6