davinci-resolve-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| resolve_infoA | Resolve product name, version, current page. Call first to confirm the bridge is connected. |
| open_pageA | Switch the active page: media, cut, edit, fusion, color, fairlight, deliver. |
| list_projectsA | List project names in the current project-manager folder. |
| current_projectA | Current project's name and timeline count. |
| open_projectB | Open an existing project by name. |
| create_projectC | Create and open a new project. |
| save_projectA | Save the current project. |
| close_projectA | Close the current project (prompts to save in Resolve if needed). |
| get_project_settingA | Read a project setting (empty key returns all settings). |
| set_project_settingB | Set a project setting, e.g. timelineFrameRate, timelineResolutionWidth. |
| import_mediaA | Import media files (absolute paths on the Resolve machine) into the current media pool folder. |
| list_mediaA | List clips in the media pool root (name, type, fps, duration, resolution). |
| list_binsB | List sub-folder (bin) names in the media pool root. |
| create_binB | Create a new bin (sub-folder) in the media pool root. |
| get_clip_propertyB | Get a media pool clip's property by clip name (empty property = all). |
| delete_clipsB | Delete media pool clips (root folder) by name. |
| list_timelinesB | List timeline names in the current project. |
| current_timelineB | Current timeline name, frame range and track counts. |
| set_current_timelineC | Make the named timeline the current one. |
| create_timelineC | Create a new empty timeline. |
| create_timeline_from_clipsB | Create a timeline pre-filled with the named media pool clips. |
| duplicate_timelineC | Duplicate a timeline under a new name. |
| delete_timelineC | Delete a timeline by name. |
| append_clipsA | Append media pool clips to the current timeline (all clips if names omitted). |
| get_track_countB | Number of tracks of a type: video, audio, or subtitle. |
| add_trackA | Add a track of the given type (video, audio, subtitle). |
| delete_trackB | Delete the track at index (1-based) of the given type. |
| set_track_nameD | Rename a track. |
| set_track_enableC | Enable or disable a track. |
| get_timeline_itemsB | List clips on a track (name, start, end, duration). |
| set_item_propertyB | Set a timeline item property (Pan, Tilt, ZoomX, ZoomY, Opacity, CompositeMode, RetimeProcess, CropLeft, ...). Items are 1-based per track. |
| add_markerC | Add a marker to the current timeline at a frame. |
| get_markersA | All markers on the current timeline, keyed by frame. |
| delete_markerC | Delete the marker at a frame. |
| delete_markers_by_colorA | Delete all markers of a color ('All' deletes every marker). |
| get_num_nodesC | Number of color nodes on the current video item. |
| set_lutC | Apply a LUT to a node (1-based) on the current video item. |
| set_cdlC | Apply CDL (slope/offset/power as 'R G B' strings) to a node on the current item. |
| add_color_versionB | Add a color version to the current video item (0=local, 1=remote). |
| list_render_presetsB | List available render presets. |
| get_render_formatsA | Map of available render formats to file extensions. |
| get_render_codecsC | Available codecs for a render format. |
| set_render_format_and_codecC | Set the current render format and codec. |
| load_render_presetC | Load a render preset by name. |
| set_render_settingsB | Set render settings, e.g. {"TargetDir": "/out", "CustomName": "v1", "FormatWidth": 1920, "FormatHeight": 1080, "MarkIn": 0, "MarkOut": 240}. |
| add_render_jobA | Add the current render settings to the render queue; returns the job id. |
| get_render_job_listB | List queued render jobs. |
| delete_render_jobC | Remove a render job from the queue. |
| start_renderB | Start rendering the queue. |
| stop_renderC | Stop rendering. |
| is_renderingB | Whether a render is in progress. |
| get_render_job_statusC | Status/progress of a render job. |
| import_timelineC | Import a timeline from AAF/EDL/XML/FCPXML/DRT/OTIO. Returns the new timeline name. |
| export_timelineC | Export a timeline. export_type is a Resolve constant name, e.g. EXPORT_EDL, EXPORT_FCPXML_1_10, EXPORT_OTIO, EXPORT_AAF, EXPORT_DRT. |
| place_clipB | Place a media pool clip onto the current timeline with precise framing. start_frame/end_frame = in/out within the source; record_frame = where it lands on the timeline; media_type 1=video only, 2=audio only. |
| add_titleB | Insert a title generator (e.g. 'Text', 'Text+') at the playhead of the current timeline. |
| add_generatorA | Insert a generator (e.g. 'Solid Color', 'Grey Scale') at the playhead. |
| add_fusion_titleA | Insert a Fusion title (e.g. 'Text+') at the playhead of the current timeline. |
| add_fusion_generatorC | Insert a Fusion generator at the playhead of the current timeline. |
| set_clip_colorC | Set the clip color label of a timeline item (Orange, Apricot, Yellow, Lime, Olive, Green, Teal, Navy, Blue, Purple, Violet, Pink, Tan, Beige, Brown, Chocolate). |
| get_timeline_settingB | Read a current-timeline setting (empty key = all). |
| set_timeline_settingC | Set a current-timeline setting. |
| bridge_statusA | Check whether the in-Resolve bridge is running and reachable. Use this when other tools report 'bridge_not_running'. |
| assemble_rough_cutB | One-shot rough cut: (optionally create+select a bin) import the media files, create a timeline, and append every imported clip to it. |
| render_to_fileA | Queue and start rendering the current timeline to target_dir/custom_name. Optionally load a render preset first (e.g. 'YouTube - 1080p', 'H.264 Master'). Free-edition limits apply: 8-bit, <= UHD 3840x2160, <= 60fps. |
| free_render_checkA | Advisory: flag render settings that exceed DaVinci Resolve Free limits (8-bit, <= UHD 3840x2160, <= 60fps). Does not change anything. |
| resolve_evalA | Run arbitrary Lua inside Resolve against the live |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/mateo-khalil/davinci-resolve-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server