Skip to content
MCP Shelf

DaVinci Resolve MCP

View on GitHub

Drives DaVinci Resolve through its scripting API: timelines, media, markers and renders.

  • Needs your setup first
  • ★ 3.8K GitHub stars
  • 4K downloads a week
  • Last commit 23 Oct 2026

At a glance

This community server connects an assistant to a running copy of DaVinci Resolve through Blackmagic's official scripting API. It can organise the media pool, build and edit timelines, add markers, work with colour and Fusion, manage projects and queue renders. The default mode groups related actions behind about 37 tools to keep context small; a full mode exposes one tool per API method, nearly 400 of them.

External scripting is a Studio feature. On the free edition it works only through a small bridge script started inside Resolve, and only up to Resolve 21.0. An installer writes the client configs for you, and a separate Node server can edit .drp project files with Resolve closed.

Made by
Samuel Gursky and contributors, independent of Blackmagic Design
Licence
MIT
Latest version
4.15.3 (23 Oct 2026)
GitHub stars
3.8K
Downloads
4K a week
Last commit
23 Oct 2026
Tools
37
Runs on
Your computer

Our check: It needs something our Linux test machine does not have (an account, a desktop app, a Mac or a running service), so on 27 Oct 2026 we read its tools from the source code instead of running this config. davinci-resolve-mcp on npm is a launcher by the same author. It installs the Python server; the MCP config then points at that environment, not at npx.

What's in the pod: its tools

We found 37 tools in its source code on 27 Oct 2026. 1 only read. The rest can change things, so keep your app's "ask before each tool call" setting on for them.

How we tested it: Read from src/server.py in version 4.15.3, the default compound mode. The full mode (--full) has about 390 tools, one per Resolve API method. The server needs DaVinci Resolve running, which our test machine does not have.

Runs commands1 tool · Can start programs or run code.

ToolWhat it is for
script_pluginWrites and installs scripts for Resolve's Workspace → Scripts menu.

Changes things35 tools · Can create, edit, send or delete.

ToolWhat it is for
color_groupCreates colour groups and works on their pre- and post-clip node graphs.
dctlWrites and installs DCTL colour shaders.
edit_enginePlans assemblies, tightening passes and clip swaps from the analysis, shows the plan, then carries it out once confirmed.
folderWorks on one Media Pool bin, addressed by its path.
fuse_pluginWrites and installs Fusion Fuse plugins.
fusion_compBuilds and edits the node graph inside a Fusion composition.
galleryManages Gallery albums and PowerGrade albums.
gallery_stillsGrabs, labels, imports and exports stills.
graphReads and changes colour node graphs: node LUTs, labels and enabled state.
knowledgeEditing, colour and audio guidance the model should read before a creative or destructive step.
layout_presetsSaves, loads, imports and exports Resolve's UI layout presets.
lutLists, installs and removes LUT files.
media_analysisAnalyses footage (shots, faces, speech, audio levels) and writes the results back as clip metadata after you approve them.
media_poolCreates bins and timelines, moves and imports clips, and exports metadata.
media_pool_itemReads and sets a clip's name, metadata, properties and proxy links.
media_pool_item_markersAdds, reads and removes markers and flags on Media Pool clips.
media_storageBrowses drives and folders and imports files into the Media Pool.
project_managerLists, creates, opens, saves and archives projects.
project_manager_cloudCreates, loads and restores Blackmagic Cloud projects.
project_manager_databaseShows and switches the project database.
project_manager_foldersMoves around and manages folders in the Project Manager.
project_settingsReads and changes project settings, the project name and colour groups.
renderBuilds render jobs from presets, formats and codecs, starts rendering and checks progress.
render_presetsImports and exports render and burn-in presets.
setupReads and sets the server's own defaults, such as dry runs and how careful to be with destructive actions.
timelineAdds and removes tracks and clips, imports and exports timelines, and inserts generators and titles.
timeline_aiStarts Resolve's AI jobs on the timeline, such as auto subtitles and scene cut detection.
timeline_frameGrabs the current frame as an image so the model can check framing, titles or a grade.
timeline_itemChanges a clip's transform, speed, keyframes and properties on the timeline.
timeline_item_colorGrades a clip: versions, LUTs, CDL values, node caches and matching tools.
timeline_item_fusionAdds, loads, exports and removes Fusion compositions on a clip.
timeline_item_markersMarkers, flags and clip colour on timeline clips.
timeline_item_takesAdds and switches takes on a timeline clip.
timeline_markersAdds and reads markers on the timeline and moves the playhead.
timeline_versioningKeeps automatic backups of a timeline before risky edits and rolls back to them.

Only reads1 tool · Looks things up and changes nothing.

ToolWhat it is for
resolve_controlApp-level jobs: check for Studio, launch Resolve, switch pages, follow long background jobs.

Grouped and described by us. The README on GitHub lists the inputs each tool takes.

Set it up

  1. Open Resolve and set Preferences → General → External scripting using to Local.
  2. Run npx davinci-resolve-mcp setup. It installs a managed copy, creates its Python environment and writes the config for the clients it finds, including Claude Desktop, Claude Code and Cursor.
  3. Restart your client with Resolve open. If it cannot connect, run python3 scripts/doctor.py from the installed copy for a list of fixes.

New to this? See the setup guides for Claude Code, Cursor, Claude Desktop and ChatGPT.

Settings

Names are exactly as the project spells them. Required ones are marked.

SettingWhat it does
External scripting usingConfig · requiredResolve's own preference, under Preferences → General. Set it to Local so the server can connect.
--fullCommand line flagStarts the granular mode, about 390 tools with one per scripting API method, instead of the 37 grouped tools.
DAVINCI_RESOLVE_MCP_PYTHONEnvironment variablePoints the launcher at a specific Python, for Resolve builds that reject newer Python versions./usr/local/bin/python3.12
DAVINCI_RESOLVE_BRIDGEEnvironment variableSet to 1 to always use the in-app bridge, the route for the free edition.
RESOLVE_SCRIPT_HOSTEnvironment variableThe address of the machine running Resolve, when external scripting is set to Network.127.0.0.1

What it can touch

It can read

  • The open project: timelines, Media Pool, metadata, grades and settings
  • Media files on drives Resolve can see
  • Frames rendered from the timeline

It can change

  • Projects, timelines, bins, clips, markers and grades
  • Render queues and the files they write
  • LUTs, DCTLs, Fuses and scripts it installs into Resolve's folders

Safer setup: Its timeline tools save a backup before destructive edits, and many actions have dry-run or checked versions. Still keep a project backup before a long session.

Before you start

  • DaVinci Resolve Studio 18.5 or newer (the free edition only through the in-app bridge)
  • Python 3.10 or newer, 64-bit
  • Node.js 20.9 or newer for the npx installer

If it does not work

It cannot connect to Resolve
Resolve must be open with External scripting set to Local. On the free edition external scripting is blocked; use the in-app bridge instead.
scriptapp returns None on an older Resolve
Some Resolve builds reject Python 3.13 and newer. Install Python 3.10 to 3.12 and set DAVINCI_RESOLVE_MCP_PYTHON to it.
The bridge script does not appear in Workspace → Scripts on a Mac
Resolve only finds Python through PYTHON3HOME or /usr/local/bin/python3. Set PYTHON3HOME with launchctl setenv and restart Resolve.
Not sure what is wrong
Run python3 scripts/doctor.py from the installed copy. Each problem comes with the exact command to fix it.

Peas in a pod: similar servers

How DaVinci Resolve MCP lines up against other design, 3d and games servers on the shelf.

ServerToolsRuns onLicenceStars
DaVinci Resolve MCP37Your computerMIT3.8K
FreeCAD MCP17Your computerMIT3.1K
Excalidraw MCP26Your computerMIT2.6K
Blender MCP9Your computerMIT32.4K
Framelink Figma MCP2Your computerMIT16.1K

Questions

Does it work with the free version of Resolve?

Partly. Blackmagic limits external scripting to Studio. On the free edition up to 21.0 an in-app bridge script works; Resolve 21.1 moved Python scripting to Studio, so the bridge may not run there.

Is it made by Blackmagic?

No. It is an independent open source project that uses Resolve's official scripting API.

Which mode should I use?

The default grouped mode, unless you need a particular API call. Its 37 tools cost far less context than the 390 in full mode.

Is it free?

Yes, MIT licensed. The optional analysis features use other open source libraries such as Whisper.

Full docs on GitHubsamuelgursky/davinci-resolve-mcp

Something wrong on this page? Tell us.

More in Design, 3D and games