DaVinci Resolve
About
Enables Claude to directly interact with and control DaVinci Resolve through its Python API, providing tools for project management, timeline manipulation, media organization, and Fusion integration.
Details
- Author
- apvlv
- Repository
- apvlv/davinci-resolve-mcp
- GitHub stars
- 12
- License
- MIT License
- Categories
- AI, Design, Developer Tools, Media, Frontend, Project Management, Infrastructure
Jump to
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
DaVinci ResolveCommand (node, npx, python, etc.)uvArguments-
Argument 1
run -
Argument 2
davinci-resolve-mcp
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
git clone https://github.com/apvlv/davinci-resolve-mcp.git
cd davinci-resolve-mcp
uv sync --all-extras --dev
Configure your MCP client to launch the server command:
{
"mcpServers": {
"davinci-resolve": {
"command": "uv",
"args": ["run", "davinci-resolve-mcp"]
}
}
}
- "Create a project named My Documentary"
- "List timelines in the current project"
- "Import these files into the media pool"
- "Open the Color page"
- "Create a Fusion node chain Blur -> ColorCorrector"
create_project
Create a new project with the specified name. Parameters: name (string)
load_project
Load an existing project by its name. Parameters: name (string)
save_project
Save the currently loaded project.
create_timeline
Create a new timeline with the specified name. Parameters: name (string)
set_current_timeline
Set the current timeline to the specified index. Parameters: index (integer)
import_media
Import media files into the media pool. Parameters: file_paths (array of strings)
create_folder
Create a new folder in the media pool with the specified name. Parameters: name (string)
create_timeline_from_clips
Create a new timeline from specified clips. Parameters: name (string), clip_indices (array of integers)
add_fusion_comp_to_clip
Add a Fusion composition to a clip in the timeline. Parameters: timeline_index (integer), track_type (string), track_index (integer), item_index (integer)
create_fusion_node
Create a Fusion node of a specified type with parameters. Parameters: node_type (string), parameters (object)
create_fusion_node_chain
Create a chain of Fusion nodes. Parameters: node_chain (array of nodes)
open_page
Open a specific page in the Resolve UI. Parameters: page_name (string) where page name can be 'media', 'edit', 'fusion', 'color', 'fairlight', or 'deliver'.
execute_python
Execute a Python script. Parameters: code (string)
execute_lua
Execute a Lua script. Parameters: script (string)
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"davinci resolve": {
"cwd": "",
"env": {},
"args": [
"run",
"davinci-resolve-mcp"
],
"shell": false,
"command": "uv"
}
}
}
Linux
{
"cwd": "",
"env": [],
"args": [
"run",
"davinci-resolve-mcp"
],
"shell": false,
"command": "uv"
}
Macos
{
"cwd": "",
"env": [],
"args": [
"run",
"davinci-resolve-mcp"
],
"shell": false,
"command": "uv"
}
Windows
{
"cwd": "",
"env": [],
"args": [
"/c",
"uv",
"run",
"davinci-resolve-mcp"
],
"shell": false,
"command": "cmd"
}
DaVinci Resolve MCP Server
Model Context Protocol (MCP) server that lets MCP clients control and inspect DaVinci Resolve (including Fusion) through tools and resources.
What it provides
- Project management (create, load, save)
- Timeline operations (create timeline, switch timeline, build from clips)
- Media pool operations (import media, create folders, inspect folders)
- Fusion helpers (add comp to clip, create nodes, create node chains)
- Resolve page navigation
- Advanced scripting (execute_python, execute_lua)
Requirements
- Python 3.10+
- DaVinci Resolve with scripting API available
- An MCP-compatible client (for example Claude Desktop)
Install
git clone https://github.com/apvlv/davinci-resolve-mcp.git
cd davinci-resolve-mcp
uv sync --all-extras --dev
Run the server
uv run davinci-resolve-mcp
The server will try to connect to Resolve on startup. Make sure DaVinci Resolve is running.
MCP client setup
Configure your MCP client to launch the server command:
{
"mcpServers": {
"davinci-resolve": {
"command": "uv",
"args": ["run", "davinci-resolve-mcp"]
}
}
}
Resources
- system://status
- project://current
- project://timelines
- timeline://current
- mediapool://folders
- mediapool://current
- storage://volumes
Tools
Project
- create_project(name)
- load_project(name)
- save_project()
Timeline
- create_timeline(name)
- set_current_timeline(index)
Media
- 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)
- create_fusion_node(node_type, parameters)
- create_fusion_node_chain(node_chain)
Resolve UI
- open_page(page_name) where page name is one of:
- media, edit, fusion, color, fairlight, deliver
Advanced
- execute_python(code)
- execute_lua(script)
Development
make install # install deps and pre-commit hooks
make lint-check # ruff check
make format-check # ruff format check
make test # pytest with coverage
make check # lint + format + tests
Example usage ideas
- "Create a project named My Documentary"
- "List timelines in the current project"
- "Import these files into the media pool"
- "Open the Color page"
- "Create a Fusion node chain Blur -> ColorCorrector"
License
MIT (see LICENSE)
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




