A Model Context Protocol server that enables AI assistants like Claude to interact with DaVinci Resolve Studio, providing advanced control over editing, color grading, audio, and other video production tasks.
Here’s an updated version of the README with enhancements reflecting the expanded functionality of the ResolveAPI
class, improved clarity, and additional details for setup and usage. The structure remains consistent with your original README, but I’ve incorporated the new features (e.g., gallery management, track control, audio adjustments, playback, etc.) and refined the instructions for uv
installation and Claude integration.
A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with DaVinci Resolve Studio, providing advanced control over editing, color grading, audio, and more.
This server implements the MCP protocol to create a bridge between AI assistants and DaVinci Resolve. It allows AI assistants to:
uv is a fast, modern Python package installer and resolver that outperforms pip. Follow these steps to install and set up the DaVinci Resolve MCP server using uv
:
If uv
is not installed:
# Using pip (ensure pip is for Python 3.10+) pip install uv # Using Homebrew (macOS) brew install uv # Using Conda conda install -c conda-forge uv
Verify installation:
uv --version
Create and activate a virtual environment to isolate dependencies:
uv venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
Install the server and its dependencies from the project directory:
# From the project directory (editable install for development) uv install -e . # Or directly from GitHub (replace with your repo URL) uv install git+https://github.com/yourusername/davinci-resolve-mcp.git
Ensure requirements.txt
includes:
mcp
pydantic
Install them:
uv install -r requirements.txt
Before running the server, ensure:
ResolveAPI
in most cases).The ResolveAPI
class dynamically locates the scripting API, but you may need to configure it manually in some cases:
The API is typically available at:
/Library/Application Support/Blackmagic Design/DaVinci Resolve/Developer/Scripting/Modules
~/Library/Application Support/Blackmagic Design/DaVinci Resolve/Developer/Scripting/Modules
No additional setup is usually required.
Add the API path if not detected:
import sys sys.path.append("C:\\ProgramData\\Blackmagic Design\\DaVinci Resolve\\Support\\Developer\\Scripting\\Modules")
Set the environment variable:
export PYTHONPATH=$PYTHONPATH:/opt/resolve/Developer/Scripting/Modules
Alternatively, set a custom path via an environment variable:
export RESOLVE_SCRIPT_PATH="/custom/path/to/scripting/modules"
Start the MCP server:
# Run directly with Python python -m resolve_mcp.server # Or with uv uv run resolve_mcp/server.py
The server will launch and connect to DaVinci Resolve, logging output like:
2025-03-19 ... - resolve_mcp - INFO - Successfully connected to DaVinci Resolve.
To integrate with Claude Desktop, update your claude_desktop_config.json
(e.g., ~/Library/Application Support/Claude/claude_desktop_config.json
on macOS):
{ "mcpServers": { "davinci-resolve": { "command": "/path/to/uv", "args": [ "run", "--directory", "/path/to/davinci-resolve-mcp", "resolve_mcp/server.py" ] } } }
/path/to/uv
with the path to your uv
executable (e.g., /usr/local/bin/uv
or C:\Users\username\.cargo\bin\uv.exe
)./path/to/davinci-resolve-mcp
with the absolute path to your project directory.Restart Claude Desktop to enable the server. Look for a hammer icon in the input box to confirm integration.
If the server fails to connect:
python --version
~/Library/Logs/Claude/mcp*.log
on macOS or %userprofile%\AppData\Roaming\Claude\Logs\
on Windows).If modules like mcp
or pydantic
are missing:
uv install mcp pydantic
Switch to a compatible version with pyenv
if needed:
pyenv install 3.10.12 pyenv shell 3.10.12 uv install -r requirements.txt
The MCP server provides extensive functionality through the ResolveAPI
class:
create_project
)load_project
)save_project
)export_project
, import_project
)get_project_settings
, set_project_setting
)create_timeline
)set_current_timeline
, get_current_timeline
)add_track
, set_track_name
, enable_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
)create_fusion_node
)create_fusion_node
)get_current_comp
)get_color_page_nodes
, add_color_node
)save_still
, apply_still
)get_gallery_albums
)get_audio_volume
, set_audio_volume
)set_track_volume
)play
, stop
)get_current_timecode
, set_playhead_position
)start_render
)get_render_status
)open_page
: Media, Edit, Fusion, Color, Fairlight, Deliver)execute_python
)execute_lua
)To contribute:
https://github.com/yourusername/davinci-resolve-mcp
git checkout -b feature-name
uv install -e .
uv run resolve_mcp/server.py
uv
instructions with verification steps and explicit paths for Claude integration.ResolveAPI
.This README now fully aligns with the enhanced ResolveAPI
class, providing a comprehensive guide for users and developers. Let me know if you’d like further adjustments!
Discover shared experiences
Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!