返回市场
达芬奇Resolve-MCP服务器

达芬奇Resolve-MCP服务器

作者:Tooflex8 星标更新:2025-03-20

项目介绍

DaVinci Resolve MCP 服务器

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

概述

此服务器实现了MCP协议,创建了AI助手与DaVinci Resolve之间的桥梁。它允许AI助手执行以下操作:

  • 创建、加载和管理DaVinci Resolve项目
  • 操作时间线、轨道和片段
  • 导入和组织媒体文件
  • 访问和修改Fusion合成
  • 进行调色并管理画廊中的静帧
  • 调整音频设置并控制播放
  • 在Resolve页面之间导航(媒体、编辑、Fusion、调色、Fairlight、交付)
  • 执行自定义Python和Lua脚本
  • 导出和导入项目

需求

  • DaVinci Resolve Studio 18.0或更新版本
  • Python 3.10或更新版本
  • 对DaVinci Resolve脚本API的访问权限

使用uv安装

uv是一个快速、现代的Python包安装器和解析器,其性能优于pip。按照以下步骤使用uv安装和设置DaVinci Resolve MCP服务器:

1. 安装uv

如果未安装uv

# 使用pip(确保pip是针对Python 3.10+的)
pip install uv

# 使用Homebrew(macOS)
brew install uv

# 使用Conda
conda install -c conda-forge uv

验证安装:

uv --version

2. 创建虚拟环境

创建并激活虚拟环境以隔离依赖项:

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

3. 安装DaVinci Resolve MCP服务器

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

# 从项目目录(可编辑安装用于开发)
uv install -e .

# 或直接从GitHub(替换为您的仓库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

通常不需要额外设置。

Windows

如果未检测到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服务器:

# 直接使用Python运行
python -m resolve_mcp.server

# 或使用uv
uv run resolve_mcp/server.py

服务器将启动并与DaVinci Resolve连接,日志输出如下:

22025-03-19 ... - resolve_mcp - INFO - 成功连接到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集成

  • 向剪辑添加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:媒体、编辑、Fusion、调色、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类,为用户提供全面的指南。如果您需要进一步调整,请告知我!