Skip to main content
Glama

DaVinci Resolve MCP

@echo off REM install.bat - One-step installation for DaVinci Resolve MCP Integration REM This script handles the entire installation process with improved error detection setlocal EnableDelayedExpansion REM Colors for terminal output set GREEN=[92m set YELLOW=[93m set BLUE=[94m set RED=[91m set BOLD=[1m set NC=[0m REM Get the absolute path of this script's location set "INSTALL_DIR=%~dp0" set "INSTALL_DIR=%INSTALL_DIR:~0,-1%" set "VENV_DIR=%INSTALL_DIR%\venv" set "CURSOR_CONFIG_DIR=%APPDATA%\Cursor\mcp" set "CURSOR_CONFIG_FILE=%CURSOR_CONFIG_DIR%\config.json" set "PROJECT_CURSOR_DIR=%INSTALL_DIR%\.cursor" set "PROJECT_CONFIG_FILE=%PROJECT_CURSOR_DIR%\mcp.json" set "LOG_FILE=%INSTALL_DIR%\install.log" REM Banner echo %BLUE%%BOLD%=================================================%NC% echo %BLUE%%BOLD% DaVinci Resolve MCP Integration Installer %NC% echo %BLUE%%BOLD%=================================================%NC% echo %YELLOW%Installation directory: %INSTALL_DIR%%NC% echo Installation log: %LOG_FILE% echo. REM Initialize log echo === DaVinci Resolve MCP Installation Log === > "%LOG_FILE%" echo Date: %date% %time% >> "%LOG_FILE%" echo Install directory: %INSTALL_DIR% >> "%LOG_FILE%" echo User: %USERNAME% >> "%LOG_FILE%" echo System: %OS% Windows %PROCESSOR_ARCHITECTURE% >> "%LOG_FILE%" echo. >> "%LOG_FILE%" REM Function to log messages (call :log "Message") :log echo [%time%] %~1 >> "%LOG_FILE%" exit /b 0 REM Check if DaVinci Resolve is running :check_resolve_running call :log "Checking if DaVinci Resolve is running" echo %YELLOW%Checking if DaVinci Resolve is running... %NC% tasklist /FI "IMAGENAME eq Resolve.exe" 2>NUL | find /I /N "Resolve.exe">NUL if %ERRORLEVEL% == 0 ( echo %GREEN%OK%NC% call :log "DaVinci Resolve is running" set RESOLVE_RUNNING=1 ) else ( echo %RED%NOT RUNNING%NC% echo %YELLOW%DaVinci Resolve must be running to complete the installation.%NC% echo %YELLOW%Please start DaVinci Resolve and try again.%NC% call :log "DaVinci Resolve is not running - installation cannot proceed" set RESOLVE_RUNNING=0 ) exit /b %RESOLVE_RUNNING% REM Create Python virtual environment :create_venv call :log "Creating/checking Python virtual environment" echo %YELLOW%Setting up Python virtual environment... %NC% if exist "%VENV_DIR%\Scripts\python.exe" ( echo %GREEN%ALREADY EXISTS%NC% call :log "Virtual environment already exists" set VENV_STATUS=1 ) else ( echo %YELLOW%CREATING%NC% python -m venv "%VENV_DIR%" >> "%LOG_FILE%" 2>&1 if %ERRORLEVEL% == 0 ( echo %GREEN%OK%NC% call :log "Virtual environment created successfully" set VENV_STATUS=1 ) else ( echo %RED%FAILED%NC% echo %RED%Failed to create Python virtual environment.%NC% echo %YELLOW%Check that Python 3.9+ is installed.%NC% call :log "Failed to create virtual environment" set VENV_STATUS=0 ) ) exit /b %VENV_STATUS% REM Install MCP SDK :install_mcp call :log "Installing MCP SDK" echo %YELLOW%Installing MCP SDK... %NC% "%VENV_DIR%\Scripts\pip" install "mcp[cli]" >> "%LOG_FILE%" 2>&1 if %ERRORLEVEL% == 0 ( echo %GREEN%OK%NC% call :log "MCP SDK installed successfully" set MCP_STATUS=1 ) else ( echo %RED%FAILED%NC% echo %RED%Failed to install MCP SDK.%NC% echo %YELLOW%Check the log file for details: %LOG_FILE%%NC% call :log "Failed to install MCP SDK" set MCP_STATUS=0 ) exit /b %MCP_STATUS% REM Set environment variables :setup_env_vars call :log "Setting up environment variables" echo %YELLOW%Setting up environment variables... %NC% REM Generate environment variables file set "ENV_FILE=%INSTALL_DIR%\.env.bat" ( echo @echo off echo set "RESOLVE_SCRIPT_API=C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting" echo set "RESOLVE_SCRIPT_LIB=C:\Program Files\Blackmagic Design\DaVinci Resolve\fusionscript.dll" echo set "PYTHONPATH=%%PYTHONPATH%%;%%RESOLVE_SCRIPT_API%%\Modules" ) > "%ENV_FILE%" REM Source the environment variables call "%ENV_FILE%" echo %GREEN%OK%NC% call :log "Environment variables set:" call :log "RESOLVE_SCRIPT_API=%RESOLVE_SCRIPT_API%" call :log "RESOLVE_SCRIPT_LIB=%RESOLVE_SCRIPT_LIB%" REM Suggest adding to system variables echo %YELLOW%Consider adding these environment variables to your system:%NC% echo %BLUE% RESOLVE_SCRIPT_API = C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting%NC% echo %BLUE% RESOLVE_SCRIPT_LIB = C:\Program Files\Blackmagic Design\DaVinci Resolve\fusionscript.dll%NC% echo %BLUE% Add to PYTHONPATH: %%RESOLVE_SCRIPT_API%%\Modules%NC% exit /b 1 REM Setup Cursor MCP configuration :setup_cursor_config call :log "Setting up Cursor MCP configuration" echo %YELLOW%Setting up Cursor MCP configuration... %NC% REM Create system-level directory if it doesn't exist if not exist "%CURSOR_CONFIG_DIR%" mkdir "%CURSOR_CONFIG_DIR%" REM Create system-level config file with the absolute paths ( echo { echo "mcpServers": { echo "davinci-resolve": { echo "name": "DaVinci Resolve MCP", echo "command": "%INSTALL_DIR:\=\\%\\venv\\Scripts\\python.exe", echo "args": ["%INSTALL_DIR:\=\\%\\resolve_mcp_server.py"] echo } echo } echo } ) > "%CURSOR_CONFIG_FILE%" REM Create project-level directory if it doesn't exist if not exist "%PROJECT_CURSOR_DIR%" mkdir "%PROJECT_CURSOR_DIR%" REM Create project-level config with absolute paths (same as system-level config) ( echo { echo "mcpServers": { echo "davinci-resolve": { echo "name": "DaVinci Resolve MCP", echo "command": "%INSTALL_DIR:\=\\%\\venv\\Scripts\\python.exe", echo "args": ["%INSTALL_DIR:\=\\%\\resolve_mcp_server.py"] echo } echo } echo } ) > "%PROJECT_CONFIG_FILE%" if exist "%CURSOR_CONFIG_FILE%" if exist "%PROJECT_CONFIG_FILE%" ( echo %GREEN%OK%NC% echo %GREEN%Cursor MCP config created at: %CURSOR_CONFIG_FILE%%NC% echo %GREEN%Project MCP config created at: %PROJECT_CONFIG_FILE%%NC% call :log "Cursor MCP configuration created successfully" call :log "System config file: %CURSOR_CONFIG_FILE%" call :log "Project config file: %PROJECT_CONFIG_FILE%" REM Show the paths that were set echo %YELLOW%Paths configured:%NC% echo %BLUE% Python: %INSTALL_DIR%\venv\Scripts\python.exe%NC% echo %BLUE% Script: %INSTALL_DIR%\resolve_mcp_server.py%NC% set CONFIG_STATUS=1 ) else ( echo %RED%FAILED%NC% echo %RED%Failed to create Cursor MCP configuration.%NC% call :log "Failed to create Cursor MCP configuration" set CONFIG_STATUS=0 ) exit /b %CONFIG_STATUS% REM Verify installation :verify_installation call :log "Verifying installation" echo %BLUE%%BOLD%=================================================%NC% echo %YELLOW%%BOLD%Verifying installation...%NC% REM Run the verification script call "%INSTALL_DIR%\scripts\verify-installation.bat" set VERIFY_RESULT=%ERRORLEVEL% call :log "Verification completed with result: %VERIFY_RESULT%" exit /b %VERIFY_RESULT% REM Run server if verification succeeds :run_server call :log "Starting server" echo %BLUE%%BOLD%=================================================%NC% echo %GREEN%%BOLD%Starting DaVinci Resolve MCP Server...%NC% echo. REM Run the server using the virtual environment "%VENV_DIR%\Scripts\python.exe" "%INSTALL_DIR%\resolve_mcp_server.py" set SERVER_EXIT=%ERRORLEVEL% call :log "Server exited with code: %SERVER_EXIT%" exit /b %SERVER_EXIT% REM Main installation process :main call :log "Starting installation process" REM Check if DaVinci Resolve is running call :check_resolve_running if %RESOLVE_RUNNING% == 0 ( echo %YELLOW%Waiting 10 seconds for DaVinci Resolve to start...%NC% timeout /t 10 /nobreak > nul call :check_resolve_running if %RESOLVE_RUNNING% == 0 ( call :log "Installation aborted - DaVinci Resolve not running" echo %RED%Installation aborted.%NC% exit /b 1 ) ) REM Create virtual environment call :create_venv if %VENV_STATUS% == 0 ( call :log "Installation aborted - virtual environment setup failed" echo %RED%Installation aborted.%NC% exit /b 1 ) REM Install MCP SDK call :install_mcp if %MCP_STATUS% == 0 ( call :log "Installation aborted - MCP SDK installation failed" echo %RED%Installation aborted.%NC% exit /b 1 ) REM Set up environment variables call :setup_env_vars REM Set up Cursor configuration call :setup_cursor_config if %CONFIG_STATUS% == 0 ( call :log "Installation aborted - Cursor configuration failed" echo %RED%Installation aborted.%NC% exit /b 1 ) REM Verify installation call :verify_installation set VERIFY_RESULT=%ERRORLEVEL% if %VERIFY_RESULT% NEQ 0 ( call :log "Installation completed with verification warnings" echo %YELLOW%Installation completed with warnings.%NC% echo %YELLOW%Please fix any issues before starting the server.%NC% echo %YELLOW%You can run the verification script again:%NC% echo %BLUE% scripts\verify-installation.bat%NC% exit /b 1 ) REM Installation successful call :log "Installation completed successfully" echo %GREEN%%BOLD%Installation completed successfully!%NC% echo %YELLOW%You can now start the server with:%NC% echo %BLUE% run-now.bat%NC% REM Ask if the user wants to start the server now echo. set /p START_SERVER="Do you want to start the server now? (y/n) " if /i "%START_SERVER%" == "y" ( call :run_server ) else ( call :log "User chose not to start the server" echo %YELLOW%You can start the server later with:%NC% echo %BLUE% run-now.bat%NC% ) exit /b 0 REM Call the main process call :main

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/samuelgursky/davinci-resolve-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server