io.github.Airta-Admin/davinc-resolve-local-bridge-mcp
Davinc-Resolve-Local-Bridge-MCP
Was ist das?
Davinc-Resolve-Local-Bridge-MCP ist ein Model Context Protocol (MCP)-Server, der KI-Assistenten die volle Kontrolle über DaVinci Resolve gibt. Er stellt 215 Tools bereit, die die gesamte Resolve-Scripting-API abdecken — Projekte, Timelines, Medien, Fusion, Farbkorrektur, Rendering und mehr.
So funktioniert es
Your AI Assistant (Claude, Cursor, Devin, etc.)
│
│ talks MCP (stdio)
▼
mcp_server/server.py ← runs on your machine
│
│ talks HTTP (localhost:8787)
▼
Bridge-Connection-Script.py ← runs INSIDE DaVinci Resolve
│ (Workspace > Scripts menu)
▼
DaVinci Resolve API ← full read + write accessDas Bridge-Skript läuft innerhalb des DaVinci-Resolve-Prozesses und erhält dadurch vollen Zugriff auf die Resolve-Scripting-API — sogar in der Free-Edition (die externes Scripting blockiert). Der MCP-Server läuft als separater Prozess und leitet Tool-Aufrufe über localhost-HTTP an die Bridge weiter.
Related MCP server: davinci-resolve-mcp
Schnellstart
Voraussetzungen
DaVinci Resolve 18.5+ (Free oder Studio)
Python 3.10+ auf Ihrem Rechner
Ein MCP-kompatibler KI-Assistent (Claude Desktop, Cursor, Devin usw.)
Schritt 1 — Bridge-Skript installieren
Führen Sie den Installer aus:
python install.pyOder kopieren Sie bridge/Bridge-Connection-Script.py manuell in den Skriptordner von Resolve:
Plattform | Pfad |
Windows |
|
macOS |
|
Linux |
|
Schritt 2 — MCP-Server-Abhängigkeiten installieren
pip install -r requirements.txtSchritt 3 — KI-Assistent konfigurieren
Fügen Sie den MCP-Server zur Konfigurationsdatei Ihres Assistenten hinzu. Der Serverpfad ist mcp_server/server.py in diesem Repository.
Claude Desktop
Bearbeiten Sie claude_desktop_config.json:
{
"mcpServers": {
"davinci-resolve-local-bridge": {
"command": "python",
"args": ["C:/path/to/Davinc-Resolve-Local-Bridge-MCP/mcp_server/server.py"]
}
}
}Cursor
Bearbeiten Sie .cursor/mcp.json:
{
"mcpServers": {
"davinci-resolve-local-bridge": {
"command": "python",
"args": ["C:/path/to/Davinc-Resolve-Local-Bridge-MCP/mcp_server/server.py"]
}
}
}Devin
Bearbeiten Sie mcp_config.json:
{
"mcpServers": {
"resolve-local-bridge": {
"command": "python",
"args": ["C:/path/to/Davinc-Resolve-Local-Bridge-MCP/mcp_server/server.py"]
}
}
}Claude Code
claude mcp add davinci-resolve-local-bridge -- python C:/path/to/Davinc-Resolve-Local-Bridge-MCP/mcp_server/server.pyBeliebiger MCP-Client (allgemein)
Der Server verwendet stdio-Transport. Starten Sie ihn mit:
python mcp_server/server.pySchritt 4 — Bridge in DaVinci Resolve starten
Öffnen Sie DaVinci Resolve
Gehen Sie zu Workspace → Scripts → Bridge-Connection-Script
Suchen Sie in der Konsole (Workspace → Console) nach:
[Resolve Bridge] Connected to Resolve 21.0.4.5
[Resolve Bridge] HTTP server running on http://127.0.0.1:8787
[Resolve Bridge] 215 actions availableSchritt 5 — Loslegen
Fragen Sie Ihren KI-Assistenten:
„Prüfen Sie, ob DaVinci Resolve verbunden ist"
Der Assistent ruft das Tool resolve_status auf und meldet das Ergebnis. Versuchen Sie dann:
„Erstellen Sie ein neues 1920x1080-30fps-Projekt namens ‚My Video' und fügen Sie eine Timeline hinzu"
Architektur
Bridge-Skript (bridge/Bridge-Connection-Script.py)
Ein Python-Skript, das innerhalb von DaVinci Resolve über das Menü Workspace > Scripts läuft. Es:
Ruft das Live-
resolve-Objekt aus den Fusion-Globals abStartet einen HTTP-Server auf
127.0.0.1:8787Stellt 3 Endpunkte bereit:
GET /health— prüft, ob die Bridge aktiv istGET /actions— listet alle verfügbaren Aktionsnamen aufPOST /action— führt eine Aktion anhand des Namens mit Parametern aus
Bleibt mit einem blockierenden
serve_forever()-Aufruf aktivBeendet vor dem Start jede vorherige Instanz auf demselben Port
MCP-Server (mcp_server/server.py)
Ein eigenständiger MCP-Server, der:
über HTTP auf localhost eine Verbindung zur Bridge herstellt
automatisch alle 215 Aktionen vom
/actions-Endpunkt der Bridge erkenntjede Aktion als MCP-Tool mit dem Präfix
resolve_bereitstelltTool-Aufrufe über
POST /actionan die Bridge weiterleitetmit der Bridge synchron bleibt — keine manuellen Tool-Definitionen erforderlich
Alle 215 Tools
Der MCP-Server erkennt Tools automatisch von der Bridge. Jedes Tool hat das Präfix resolve_ (z. B. wird aus status resolve_status). Übergeben Sie Parameter als params-Objekt.
Resolve-Anwendung (15 Tools)
Tool | Parameter | Beschreibung |
| — | Bridge-Verbindung prüfen und aktuelle Projekt-/Timeline-Informationen abrufen |
| — | Resolve-Versionsinformationen abrufen |
| — | Die aktive Seite abrufen (edit, cut, color usw.) |
|
| Zu einer Seite wechseln: edit, cut, fusion, color, fairlight, deliver, media |
| — | Verfügbare Layout-Voreinstellungen auflisten |
|
| Eine Layout-Voreinstellung anhand des Namens laden |
| — | Aktuellen Keyframe-Modus abrufen |
|
| Keyframe-Modus festlegen |
| — | Fairlight-Audio-Voreinstellungen auflisten |
| — | Burn-in-Voreinstellungen auflisten |
|
| Eine Render-Voreinstellung aus einer Datei importieren |
|
| Eine Render-Voreinstellung in eine Datei exportieren |
| — | Zur Fusion-Seite wechseln |
| — | Zur Edit-Seite wechseln |
| — | Zur Deliver-Seite wechseln |
Projektmanager (18 Tools)
Tool | Parameter | Beschreibung |
|
| Ein neues Projekt erstellen |
|
| Ein vorhandenes Projekt laden |
| — | Das aktuelle Projekt speichern |
| — | Das aktuelle Projekt schließen |
|
| Ein Projekt löschen |
|
| Einen Projektordner erstellen |
|
| Einen Projektordner löschen |
| — | Projekte im aktuellen Ordner auflisten |
| — | Unterordner im aktuellen Ordner auflisten |
| — | Aktuellen Ordnernamen abrufen |
|
| Einen Ordner öffnen |
| — | Zum Stammordner navigieren |
| — | Zum übergeordneten Ordner navigieren |
|
| Ein .drp-Projekt importieren |
|
| Ein Projekt als .drp exportieren |
|
| Ein Projekt archivieren |
| — | Aktuellen Datenbanknamen abrufen |
| — | Verfügbare Datenbanken auflisten |
Projekteinstellungen (7 Tools)
Tool | Parameter | Beschreibung |
| — | Aktuellen Projektnamen abrufen |
|
| Das aktuelle Projekt umbenennen |
|
| Eine Projekteinstellung anhand des Schlüssels abrufen |
|
| Eine Projekteinstellung festlegen |
| — | Alle Projekteinstellungen abrufen |
| — | Projekt-Voreinstellungen auflisten |
|
| Eine Projekt-Voreinstellung anwenden |
Medienspeicher (4 Tools)
Tool | Parameter | Beschreibung |
| — | Gemountete Speichervolumes auflisten |
|
| Unterordner in einem Pfad auflisten |
|
| Dateien in einem Ordner auflisten |
|
| Eine Datei im Dateibrowser des Betriebssystems anzeigen |
Medienpool (13 Tools)
Tool | Parameter | Beschreibung |
|
| Mediendateien in den Pool importieren |
| — | Alle Clips im Stammordner auflisten |
| — | Informationen zum Stammordner abrufen |
|
| Einen Unterordner erstellen |
|
| Den aktuellen Ordner festlegen |
|
| Clips aus dem Pool löschen |
|
| Clips in einen Ordner verschieben |
|
| Clips neu verknüpfen |
|
| Clips trennen |
|
| Metadaten-CSV exportieren |
| — | Ausgewählte Clips auflisten |
|
| Einen Clip auswählen |
|
| Matte-Dateien hinzufügen |
Timeline (21 Tools)
Tool | Parameter | Beschreibung |
|
| Neue leere Timeline erstellen |
|
| Timeline aus Clips erstellen |
| — | Alle Timelines auflisten |
| — | Aktuellen Timelinenamen abrufen |
|
| Aktuelle Timeline umbenennen |
|
| Zu Timeline per Index wechseln (1-basiert) |
| — | Aktuelle Timeline duplizieren |
|
| Timelines löschen |
| — | Startframe abrufen |
| — | Endframe abrufen |
| — | Start-Timecode abrufen |
|
| Start-Timecode festlegen |
| — | Aktuellen Timecode abrufen |
|
| Aktuellen Timecode festlegen |
| — | Schnitte erkennen |
|
| Untertitel automatisch generieren |
|
| Timeline exportieren |
|
| Timeline aus Datei importieren |
|
| Clips an Timeline anhängen |
|
| Timeline-Einstellung abrufen |
|
| Timeline-Einstellung festlegen |
Timeline-Spuren (11 Tools)
Tool | Parameter | Beschreibung |
|
| Spuren zählen (Video/Audio/Untertitel) |
|
| Spur hinzufügen |
|
| Spur löschen |
|
| Spur aktivieren/deaktivieren |
|
| Prüfen, ob Spur aktiviert ist |
|
| Spur sperren/entsperren |
|
| Prüfen, ob Spur gesperrt ist |
|
| Spurname abrufen |
|
| Spurname festlegen |
|
| Clips auf einer Spur auflisten |
| — | Ausgewählte Timeline-Clips auflisten |
Timeline-Elemente (66 Tools)
Alle Elementaktionen akzeptieren optionale trackType, trackIndex, itemIndex, um einen bestimmten Clip anzusteuern, oder arbeiten auf dem ersten ausgewählten Clip, wenn diese weggelassen werden.
Tool | Parameter | Beschreibung |
|
| Clipnamen abrufen |
|
| Clip umbenennen |
|
| Clipdauer abrufen |
|
| Startframe des Clips abrufen |
|
| Endframe des Clips abrufen |
|
| Eine Clipeigenschaft abrufen |
|
| Eine Clipeigenschaft festlegen |
|
| Prüfen, ob Clip aktiviert ist |
|
| Clip aktivieren/deaktivieren |
|
| Clipfarbe festlegen |
|
| Clipfarbe abrufen |
|
| Clipfarbe löschen |
|
| Flag hinzufügen |
|
| Flags abrufen |
|
| Flags löschen |
|
| Marker hinzufügen |
|
| Marker abrufen |
|
| Generator einfügen |
|
| Fusion-Generator einfügen |
| — | Fusion-Komposition einfügen |
|
| OFX-Generator einfügen |
|
| Titel einfügen |
|
| Fusion-Titel einfügen |
| — | Standbild vom aktuellen Frame aufnehmen |
| — | Standbilder von allen Clips aufnehmen |
|
| Verbundclip erstellen |
| — | Fusion-Clip erstellen |
|
| In Timeline importieren |
|
| Clip stabilisieren |
|
| Clip per Smart Reframe neu einrahmen |
|
| Magic Mask erstellen |
|
| Magic Mask neu generieren |
|
| Spurinformationen für einen Clip abrufen |
|
| Verknüpfte Elemente abrufen |
|
| CDL-Werte festlegen |
|
| Take hinzufügen |
|
| Takes zählen |
|
| Take auswählen |
|
| Aktuellen Take abschließen |
|
| Gradings auf andere Clips kopieren |
|
| LUT exportieren |
|
| Farbausgabe-Cache festlegen |
|
| Fusion-Ausgabe-Cache festlegen |
|
| Clip-Metadaten abrufen |
|
| Clip-Metadaten festlegen |
|
| Clipeigenschaft abrufen |
|
| Clipeigenschaft festlegen |
|
| Proxy-Medien verknüpfen |
| — | Proxy-Medien-Verknüpfung aufheben |
|
| Clip durch Datei ersetzen |
|
| Clip-Marker hinzufügen |
| — | Clip-Marker abrufen |
|
| Clipfarbe festlegen (Medienpool) |
|
| Clip-Flag hinzufügen |
|
| Audio transkribieren |
|
| Mark In/Out festlegen |
|
| Mark In/Out löschen |
|
| Timeline-Marker hinzufügen |
| — | Timeline-Marker abrufen |
|
| Marker nach Farbe löschen |
|
| Marker an Frame löschen |
|
| Aktuellen Frame als Standbild exportieren |
|
| Fairlight-Preset anwenden |
| — | Schnellexport-Presets auflisten |
Fusion-Kompositionen (14 Tools)
Tool | Parameter | Beschreibung |
|
| Fusion-Komposition erstellen |
|
| Fusion-Komposition zu einem Clip hinzufügen |
|
| .comp-Datei importieren |
|
| Fusion-Komposition exportieren |
|
| Komposition nach Namen laden |
|
| Komposition nach Namen löschen |
|
| Komposition umbenennen |
|
| Fusion-Kompositionen auf einem Clip zählen |
|
| Fusion-Kompositionsnamen auflisten |
| — | Aktuelle Fusion-Komposition abrufen |
| — | Alle offenen Kompositionen auflisten |
| — | Neue Fusion-Komposition erstellen |
|
| Aktuelle Komposition speichern |
|
| Kompositionsdatei laden |
| — | Aktuelle Komposition schließen |
| — | Aktuelle Komposition rendern |
Fusion-Tools (11 Tools)
Tool | Parameter | Beschreibung |
| — | Alle Tools/Node im aktuellen Comp auflisten |
|
| Ein Tool anhand des Namens finden |
|
| Ein Tool löschen |
|
| Tool-Attribute abrufen |
|
| Tool-Attribute festlegen |
|
| Einen Node hinzufügen (Background, Paint, Merge usw.) |
|
| Zwei Node verbinden |
|
| Einen Node-Input festlegen (kann keyframen) |
|
| Einen Node-Input-Wert abrufen |
|
| Den aktuellen Frame festlegen |
| — | Den aktuellen Frame abrufen |
Galerie (4 Tools)
Tool | Parameter | Beschreibung |
| — | Galerie-Still-Alben auflisten |
| — | PowerGrade-Alben auflisten |
| — | Ein Still-Album erstellen |
| — | Ein PowerGrade-Album erstellen |
Farbe / Node (7 Tools)
Tool | Parameter | Beschreibung |
| — | Node-Anzahl des aktuellen Clips abrufen |
|
| Ein Node-Label abrufen |
|
| Die LUT eines Node abrufen |
|
| Eine LUT auf einem Node festlegen |
|
| Einen Node aktivieren/deaktivieren |
| — | Alle Grade zurücksetzen |
| — | Die LUT-Liste aktualisieren |
Rendering (22 Tools)
Tool | Parameter | Beschreibung |
| — | Render-Formate auflisten |
|
| Codecs für ein Format auflisten |
| — | Aktuelles Format/Codec abrufen |
|
| Render-Format und Codec festlegen |
| — | Render-Modus abrufen |
|
| Render-Modus festlegen |
|
| Render-Auflösungen auflisten |
| — | Render-Presets auflisten |
|
| Ein Render-Preset laden |
|
| Ein neues Render-Preset speichern |
|
| Ein Render-Preset löschen |
|
| Render-Einstellungen festlegen (TargetDir, CustomName usw.) |
| — | Einen Render-Job hinzufügen |
|
| Einen Render-Job löschen |
| — | Alle Render-Jobs löschen |
| — | Render-Jobs auflisten |
|
| Rendering starten |
| — | Rendering stoppen |
| — | Prüfen, ob gerendert wird |
|
| Render-Job-Status abrufen |
|
| Schnellexport |
|
| Job hinzufügen und Rendering starten |
Sprache & Untertitel (1 Tool)
Tool | Parameter | Beschreibung |
|
| KI-Sprachaudio generieren |
Spezial (1 Tool)
Tool | Parameter | Beschreibung |
|
| Eine Handzeichnungs-Animation erstellen (Daniel-Batal-Technik) |
Fehlerbehebung
Bridge startet nicht
Stellen Sie sicher, dass DaVinci Resolve läuft und ein Projekt geöffnet ist
Prüfen Sie die Konsole (Workspace → Console) auf Fehlermeldungen
Starten Sie DaVinci Resolve neu — es scannt den Scripts-Ordner nur beim Start
„Could not connect to Resolve Bridge"
Stellen Sie sicher, dass Sie Workspace → Scripts → Bridge-Connection-Script in Resolve ausgeführt haben
Prüfen Sie, dass die Konsole
[Resolve Bridge] HTTP server running on http://127.0.0.1:8787anzeigtWenn der Port bereits belegt ist, schließen Sie Resolve und öffnen Sie es erneut (veraltete
fuscript.exe-Prozesse können den Port belegen)
Tools geben Fehler zurück
Rufen Sie zuerst
resolve_statusauf, um die Verbindung zu prüfenEinige Aktionen erfordern ein geöffnetes Projekt, eine vorhandene Timeline oder einen ausgewählten Clip
Fehlermeldungen der Bridge zeigen an, was fehlt
Technische Details
Bridge-Port: 127.0.0.1:8787 (nur localhost, kein externer Zugriff)
Transport: HTTP/1.0 mit Connection: close
MCP-Transport: stdio
Abhängigkeiten:
mcp,requests(nur MCP-Server; Bridge verwendet reine stdlib)Resolve-Version: 18.5+ (getestet auf 21.0.4.5)
Python: 3.10+ für den MCP-Server; Bridge verwendet das eingebettete Python von Resolve
Lizenz
MIT-Lizenz — siehe Datei LICENSE.
Danksagungen
Erstellt von The Geek Gods. Inspiriert von der DaVinci-Resolve-Scripting-Community.
Available Tools
1 toolresolve_healthA
Check if DaVinci Resolve bridge is running. The bridge script must be running inside Resolve via Workspace > Scripts > DaVinciResolveBridge. If this returns an error, the bridge is not running.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It explicitly states the error behavior: 'If this returns an error, the bridge is not running.' This is key behavioral information. However, it does not disclose what a successful response contains or whether the tool has any side effects, though 'check' implies a read-only operation. Still, the error semantics are clearly and usefully disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place. The first sentence states the purpose, the second gives the setup prerequisite, and the third explains error interpretation. It is front-loaded with the core function and contains no filler or redundant phrases.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with no parameters, no output schema, and no siblings. The description covers what the tool checks and how to interpret an error. A minor gap is that it does not explicitly describe the success response, but for a health-check tool, the error condition is the most critical information. The description is otherwise complete for an agent to select and invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
This tool has zero parameters, so there is nothing to document. According to the guidelines, a baseline of 4 is appropriate when no parameters exist. The description does not need to add parameter-level detail, and it doesn't waste space on it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states exactly what the tool does: 'Check if DaVinci Resolve bridge is running.' The verb 'check' and resource 'DaVinci Resolve bridge' are specific and unambiguous. Since there are no sibling tools, there is no need for differentiation, and the description is fully self-contained.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by explaining the prerequisite: the bridge script must be running inside Resolve via Workspace > Scripts > DaVinciResolveBridge. It also tells the agent how to interpret the result, which is effectively guidance for using the tool. There are no alternatives to contrast, so no exclusions are necessary, but it doesn't explicitly say 'use this when you need to verify connectivity.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.2.5- First observed
resolve_health
TDQS
Scored across 1 tool
Only one tool exists, so there is no possibility of confusion or overlapping purposes. The tool's purpose is unambiguous.
The single tool name follows a clear verb_noun pattern (resolve_health), which is consistent and descriptive. With only one tool, naming consistency is inherently strong.
A single health-check tool is far too few for a server presumably meant to bridge to DaVinci Resolve. Even as a minimal health-only server, one tool feels extremely thin and provides little value beyond a ping.
The server only provides a health check, with no ability to interact with DaVinci Resolve projects, timelines, renders, or any other meaningful operations. This is a severely incomplete surface for a bridge to a complex application.
Maintenance
Related MCP Connectors
AI video editor for agents and humans: timeline, captions, color, audio and generation as MCP tools.
Remote MCP for AI video, image, music and speech generation.
- CueFrameOAuthai.cueframe
Compose, edit and render video with your AI agent. Turn footage into finished edits with content-aware reframing, word-timed captions and motion graphics. Hosted MCP with OAuth sign-in; cloud processing uses credits.
Plan, compare, price, generate, and recover AI video from compatible MCP clients.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceComprehensive MCP server for DaVinci Resolve with 295+ tools to control projects, timelines, editing, color grading, rendering, and more via natural language.83 PyPI6MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that exposes the complete DaVinci Resolve scripting API, enabling AI assistants to control DaVinci Resolve programmatically with over 440 tools for project management, timeline editing, color grading, rendering, and more.13MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to control DaVinci Resolve (Free and Studio) through natural language, providing 162 tools for timeline editing, color grading, rendering, and more. Includes local AI replacements for Studio-only features like voice isolation, background removal, and transcription.MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to control DaVinci Resolve Studio via MCP, providing full scripting API coverage plus workflow helpers for editing, media organization, rendering, grading, and more.5,556 npmMIT