
今天拆的是 DaVinci Resolve MCP:一个把达芬奇的 361 个脚本接口包成 MCP 工具的本地服务端,让编码 Agent 直接动你的时间线、调色和渲染队列;文章给全它在链条上的位置、两条安装入口、六处已知阻塞,以及 295 美元那道门槛值不值得迈。
samuelgursky/davinci-resolve-mcp 是一个跑在本机的 MCP 服务端,把 DaVinci Resolve 的官方脚本 API 包成 Agent 能直接调的工具:读工程、理媒体池、动时间线、改调色、排队渲染。仓库用 MIT 许可,2025 年 3 月建仓,到今天有 3,016 star、347 fork、992 次提交、437 个 tag,最近一次提交在北京时间 9 月 20 日凌晨 0:54;同名 npm 包上周被下载 18,570 次。12
.drp / .drt / .drx 和项目数据库。_operation 块:状态分成成功、部分成功、被拦下和失败,验证结果里把「Resolve 说成功、读回来却不一致」单独列成一类,另外附上这次改动了什么、有哪些警告和本次执行的编号。3连着几步的操作会被串成一条执行轨迹,可以导出成 Markdown 或 JSON 的审计文件;动手前的预检会按工具、动作和参数给出四档风险,以及影响范围是单个素材、整条轨道、整条时间线还是整个工程。src/utils/api_truth.py,记的是对着真实 Resolve 版本量出来的行为:那些返回 True 却什么也没做的调用、被静默丢掉的设置项、签名里有而运行时根本没有的方法。其中一条会被直接拒绝——TimelineItem.CopyGrades 会把目标片段的调色整体覆盖,覆盖时照样返回 True,并且不留可回退的版本;调用方必须写 acknowledge_trap: true 才放行。3
docs/images/control-panel/01-overview.png):面板底部写明源素材只读、输出留在当前工程的分析目录;界面里的版本号是项目自己上传这张图时的版本,不是当前版本。3RESOLVE_SCRIPT_HOST 指向 Resolve 那台机器)docs/SKILL.md,以及可以直接通过 MCP 读的剪辑、调色、音频和流程文本文档npx davinci-resolve-mcp setuppython install.py。验收方式也不绕:开着 Resolve,对 Agent 说一句「列出所有工程,打开名叫 My Film 的那个」。Workspace ▸ Scripts 里始终不出现那几个 .py,而同一目录下的 Lua 探针正常列出。
触发条件:用免费版 DaVinci Resolve 21.1 跑内嵌桥。
现状:Resolve 21.1 于 2026-09-08 发布。8Blackmagic 在 21.1 的更新说明里写的是,把用 Python 写脚本的能力移到了 Studio 版,理由是免费版有人拿 Python API 去解锁 Studio 功能。79项目方的处理是把桥的适用范围改成只覆盖免费 21.0.x,并在文档里写明免费 21.1 不再在 Scripts 菜单列出 .py。3报告这件事的用户在免费 21.1 的 Console 里也没找到任何 Python 面板,只剩一个统一控制台;109 月 16 日又有人在 Windows 上确认,Console 里能拿到的是一个 Lua 5.1 环境和一个注入好的 resolve 对象。10
你能怎么办:买 Studio;或者把免费版留在 21.0.x 走内嵌桥;或者等一条基于 Lua 的桥——第三条目前只是报告者在 Console 里验证到的可能性,还没有实现。-nogui 两种会话下,导入、拼剪和往返的结果逐字节一致,但前提是无头实例先能连上外部脚本。文档还记录了一种现场配置,-nogui 启动出来的实例永远不回应 scriptapp('Resolve'),而它占着每台机器一个的单例,界面版也跟着起不来。这份测量是在 Resolve Studio 19.1.3 上做的。11网络传输此前在非回环地址上会被一律拒绝(HTTP 421),这条已于 2026-09-16 关闭。12
你能怎么办:动手之前先花 30 秒跑一遍仓库里的预检(python scripts/resolve_headless.py run -- python -c "print('ok')"),拿到 ok 再排无头流程。11include_linked="false" 被当成字符串集合的问题:调用方传字符串 "false" 时,重链标志落到了默认打开的那一侧,正好是它想要的反面。13
Project.SetSettings 和 Timeline.SetSettings 在批量参数里遇到一个非法键时会部分生效并返回 false;UpdateRenderPreset 返回 True,但要退出重开 Resolve 才生效;GetProjectLastModifiedTime 在已保存的工程上返回 None;SetHighPriority 的无参调用在 21.1 上什么也不做;ImportOptions.sourceClipsFolders 在官方和社区两个界面上都到不了。14
你能怎么办:先决定你要的是官方那条还是社区这条,再把 21.1 的新能力按 release note 的类别逐条验证,别按方法名判断有没有被覆盖。14

TimelineItem.CopyGrades)。
现状:项目把这条行为记进了 src/utils/api_truth.py,做法是把每种状态烘焙成 33 点 LUT 再逐字节比对,结论是它覆盖目标、返回 True、且不生成任何版本。现在这条动作会被服务端拒绝,除非调用方显式传 acknowledge_trap: true,或者用环境变量关掉整道护栏。3
你能怎么办:把这道护栏留着。真要执行这条操作,先给目标片段存一个版本或静帧,再显式确认。Workspace ▸ Scripts 里却一个脚本都不出现。
触发条件:Mac 上只有 Homebrew、pyenv、uv 或 conda 装的 Python。
现状:Resolve 找 Python 3 只认两处——先看 PYTHON3HOME 环境变量,再看 /usr/local/bin/python3,两处都没有,脚本就静默不列出。3更细的一条是:前缀里必须同时有 lib/libpython3.X.dylib 和名字不带版本号的 bin/python3,Homebrew 的 framework 构建常常只有 bin/python3.13,而安装器的预检当时只看 dylib,于是给出「可用」的结论。15launchctl setenv 设的环境变量重启之后就不在了,几周后脚本突然不再列出,原因往往在这里。3
你能怎么办:用 launchctl setenv 指好解释器并在重启后重设,或者把解释器软链到 /usr/local/bin/python3——这一步要 sudo,链之前先确认它没排在你平时用的 Python 前面。3| 方案 | 你给它什么 | 它给你什么 | 它在这一层 | 许可与公开体量 |
|---|---|---|---|---|
| 本期:DaVinci Resolve MCP | 一台装着 Resolve 的机器、Python 3.10+、开着的 Resolve 界面 | 37 个(默认)或 389 个 MCP 工具,覆盖 361 个脚本 API 方法 | 给已装好的专业 NLE 装 Agent 接口 | MIT,3,016 star,992 次提交1 |
| kinocut | FFmpeg 和 Python 环境 | 196 个 MCP 工具与一张渲染回执 | FFmpeg 的执行与验证层 | Apache-2.0,160 star17 |
| FableCut | 一个浏览器 | 一条 JSON 时间线和 MCP / REST 入口 | 自带编辑器的浏览器端 | MIT,675 star18 |
| FireRed-OpenStoryline | 一份 config.toml 和几个模型 key | 18 个工具节点串起的成片产线 | 自带 Agent 的成片流水线 | Apache-2.0,3,427 star19 |
| video-use | 一堆原始素材和转写额度 | 读着词级转写稿剪出的 final.mp4 | 装进编码 Agent 的剪辑技能包 | MIT,25,224 star20 |
| video-shotcraft | 一条模板指令 | 157 张镜头配方卡排出的宣传片 | 镜头与素材资产库 | Apache-2.0,9,103 star21 |
| OpenMontage | 一个编码 Agent | 12 条视频管线跑到 final.mp4 | 编排层 | AGPL-3.0,60,430 star22 |
| HyperFrames | HTML 和组件代码 | 浏览器里的渲染底座 | 渲染底座 | Apache-2.0,51,947 star23 |
| hypit | 一份需求描述 | 一条从脚本到成片的流程 | 编排层 | 自订许可,11,859 star24 |
github.com
npmjs.com
raw.githubusercontent.com
blackmagicdesign.com
raw.githubusercontent.com
raw.githubusercontent.com
blackmagicdesign.com
blackmagicdesign.com
raw.githubusercontent.com
bradfordoperations.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
github.com
This story was produced automatically by a channel. One sentence is all it takes for Neodrop to keep producing for you.