返回市场
达芬奇调色-mcp

达芬奇调色-mcp

作者:apvlv37 星标更新:2025-03-18

项目介绍

DaVinci Resolve MCP Server

这是一个用于与DaVinci Resolve和Fusion交互的Model Context Protocol (MCP)服务器。此服务器允许像Claude这样的AI助手通过模型上下文协议直接与DaVinci Resolve进行交互和控制。

特性

  • 双向通信:通过MCP协议连接Claude AI与DaVinci Resolve
  • 项目管理:创建、打开和管理DaVinci Resolve项目
  • 时间线操作:创建、修改和导航时间线
  • 媒体管理:导入、组织和管理媒体池中的媒体
  • Fusion集成:创建和修改Fusion合成
  • 场景检查:获取当前DaVinci Resolve项目的详细信息
  • 代码执行:从Claude在DaVinci Resolve中运行任意Python代码

安装

先决条件

  • DaVinci Resolve Studio(推荐版本17或更高)
  • Python 3.8或更高版本
  • Claude Desktop(用于AI集成)

设置

  1. 克隆此仓库:

    git clone https://github.com/apvlv/davinci-resolve-mcp.git
    cd davinci-resolve-mcp
    
  2. 安装所需依赖项:

    pip install -r requirements.txt
    
  3. 在Claude Desktop中安装MCP服务器:

    mcp install src/resolve_mcp/server.py
    

    或者,您可以使用可编辑标志进行开发安装:

    mcp install src/resolve_mcp/server.py --with-editable .
    

使用方法

使用Claude Desktop

  1. 启动DaVinci Resolve
  2. 在Claude Desktop中,连接到“DaVinci Resolve MCP”服务器
  3. 现在可以通过Claude与DaVinci Resolve进行交互

使用5ire

5ire是一个开源跨平台桌面AI助手和MCP客户端,兼容此服务器。

  1. GitHub安装5ire,或者在macOS上使用Homebrew安装:
    brew tap brewforge/extras
    brew install --cask 5ire
    
  2. 启动DaVinci Resolve
  3. 在5ire中添加DaVinci Resolve MCP服务器
  4. 使用您偏好的AI模型(如OpenAI、Claude等)连接到服务器
  5. 现在可以通过5ire与DaVinci Resolve进行交互

可用命令

资源(信息检索)

  • project://current - 获取当前项目的相关信息
  • project://timelines - 获取当前项目中的时间线列表
  • timeline://current - 获取当前时间线的信息
  • mediapool://folders - 获取媒体池中的文件夹列表
  • mediapool://current - 获取当前媒体池文件夹的信息
  • storage://volumes - 获取已挂载卷的列表
  • system://status - 获取DaVinci Resolve连接的当前状态

项目管理

  • create_project(name) - 创建一个新的DaVinci Resolve项目
  • load_project(name) - 加载现有的DaVinci Resolve项目
  • save_project() - 保存当前的DaVinci Resolve项目

时间线管理

  • create_timeline(name) - 在当前项目中创建新的时间线
  • set_current_timeline(index) - 通过索引设置当前时间线(基于1)

媒体管理

  • import_media(file_paths) - 将媒体文件导入当前媒体池文件夹
  • create_folder(name) - 在当前媒体池文件夹中创建新文件夹
  • create_timeline_from_clips(name, clip_indices) - 从当前媒体池文件夹中的剪辑创建新的时间线

Fusion集成

  • add_fusion_comp_to_clip(timeline_index, track_type, track_index, item_index) - 将Fusion合成添加到时间线中的剪辑
  • create_fusion_node(node_type, parameters) - 在当前合成中创建特定的Fusion节点
  • create_fusion_node_chain(node_chain) - 在当前合成中创建一系列连接的Fusion节点

页面导航

  • open_page(page_name) - 打开DaVinci Resolve中的特定页面(媒体、编辑、融合、色彩、音频、交付)

高级操作

  • execute_python(code) - 在DaVinci Resolve中执行任意Python代码
  • execute_lua(script) - 在DaVinci Resolve的Fusion中执行Lua脚本

示例

  • “创建一个名为'My Documentary'的新项目”
  • “从下载文件夹导入所有视频文件”
  • “使用所选剪辑创建新的时间线”
  • “对选定的剪辑应用Fusion效果”
  • “获取当前项目的相关信息”
  • “切换到色彩页面”
  • “保存当前项目”
  • “在媒体池中创建名为'Raw Footage'的文件夹”
  • “在当前Fusion合成中创建模糊节点”
  • “创建带有内容'Hello World'的文本节点”
  • “创建一系列节点:MediaIn -> Blur -> ColorCorrector -> MediaOut”

技术细节

该服务器使用模型上下文协议在Claude和DaVinci Resolve之间进行通信。它利用了DaVinci Resolve的Python API来控制应用程序。

许可证

MIT