Skip to content

pyroqbit/davinci-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

31 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DaVinci Resolve MCP Server (Rust)

A high-performance Model Context Protocol (MCP) server for DaVinci Resolve automation, written in Rust.

πŸŽ‰ Latest Updates (May 2025)

  • βœ… All Tests Passing: 100% test coverage with 43 comprehensive tests
  • πŸš€ 120+ Professional Tools: Complete automation suite for DaVinci Resolve
  • πŸ”§ Phase 3 API Complete: All missing API methods implemented
  • ⚑ Enhanced Performance: Optimized bridge implementation with simulation mode
  • πŸ› οΈ Code Quality: Formatted, linted, and production-ready

Features

  • 120+ Professional Tools: Complete automation suite for DaVinci Resolve
  • Pure Rust Implementation: Fast, memory-safe, and reliable
  • Complete DaVinci Resolve API Coverage: All major operations supported
  • Keyframe Animation System: Professional-grade animation control
  • Timeline Item Manipulation: Comprehensive timeline item property control
  • Color Grading Operations: Advanced color correction and grading tools
  • Async/Await Support: Non-blocking operations for better performance
  • Type Safety: Compile-time guarantees for API correctness
  • Comprehensive Error Handling: Detailed error reporting and recovery
  • Dual Mode Operation: Real DaVinci Resolve connection + Simulation mode for testing

Tool Categories (120+ Total)

🎬 Project & Timeline Management (15 tools)

  • Project creation, opening, and page switching
  • Timeline creation, deletion, and management
  • Marker addition and timeline track operations
  • Project properties and timeline format control

πŸ“ Media Pool Operations (15 tools)

  • Media import and bin management
  • Audio sync and clip operations
  • Proxy media and subclip creation
  • Advanced media pool folder operations

🎨 Color Grading Operations (12 tools)

  • LUT application and export
  • Color wheel parameter control
  • Node management and grade copying
  • Color preset save/apply/delete operations
  • PowerGrade LUT batch export

⚑ Timeline Item Manipulation (10 tools)

  • Transform properties (Pan, Tilt, Zoom, Rotation, etc.)
  • Crop settings (Left, Right, Top, Bottom)
  • Composite modes and opacity control
  • Retiming and stabilization settings
  • Audio properties (Volume, Pan, EQ)

🎞️ Keyframe Animation System (8 tools)

  • Add, modify, and delete keyframes
  • Interpolation control (Linear, Bezier, Ease-In/Out)
  • Keyframe mode activation (All, Color, Sizing)
  • Comprehensive keyframe inspection and management

πŸš€ Rendering & Delivery Operations (8 tools)

  • Render queue management (add, start, clear)
  • Real-time render status monitoring
  • Project export with media packaging
  • Custom render preset creation
  • Professional delivery workflows

☁️ Cloud Operations (8 tools)

  • Cloud project creation and management
  • Project import/export to cloud
  • User permission management
  • Collaborative workflow support

πŸŽ›οΈ Cache & Optimization Operations (8 tools)

  • Cache mode control (auto/on/off)
  • Optimized media generation and deletion
  • Proxy mode and quality settings
  • Cache path configuration (local/network)

πŸ–₯️ Layout & Interface Management (6 tools)

  • UI layout preset save/load/export/import
  • Interface customization and automation
  • Workspace management

πŸ”§ Application Control (5 tools)

  • Application quit and restart
  • Settings and preferences dialogs
  • System-level DaVinci Resolve control

πŸ” Object Inspection & API Tools (4 tools)

  • DaVinci Resolve API object help
  • Custom object path inspection
  • Advanced API debugging tools

🎡 Audio Operations (8 tools)

  • Audio track management and naming
  • Audio transcription and clearing
  • Advanced audio workflow automation

🎭 Fusion Operations (4 tools)

  • Fusion tool management
  • Advanced compositing operations

πŸ“Š Gallery Operations (3 tools)

  • Gallery still album management
  • Advanced gallery workflow automation

πŸ”— Advanced Project Operations (15 tools)

  • Project timeline management by index
  • Current timeline operations
  • Project naming and unique ID management
  • Render job list and rendering control
  • Project preset management
  • Render format and codec control
  • Render mode management
  • Color groups management

Performance & Quality

  • Tests: 43 comprehensive tests (100% passing)
    • 12 Phase 3 API coverage tests
    • 17 integration tests
    • 6 unit tests
    • 8 additional specialized tests
  • Performance: O(log n) keyframe operations with binary search optimization
  • Memory: Optimized bridge implementation with efficient state management
  • Architecture: Professional-grade Rust implementation with Arc concurrency
  • Code Quality: Formatted with rustfmt, linted with clippy, production-ready

Test Coverage Summary

βœ… test_phase3_api_coverage_summary
βœ… test_phase3_gallery_api_coverage  
βœ… test_phase3_mediapool_api_coverage
βœ… test_phase3_comprehensive_performance
βœ… test_phase3_fairlight_api_coverage
βœ… test_phase3_mediapoolitem_api_coverage
βœ… test_phase3_fusion_api_coverage
βœ… test_tool_validation
βœ… test_phase3_project_api_coverage
βœ… test_single_tool_debug
βœ… test_performance_benchmark
βœ… test_comprehensive_tool_coverage

Project Structure

davinci-mcp-rs/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ lib.rs              # Library entry point
β”‚   β”œβ”€β”€ server.rs           # Main MCP server implementation
β”‚   β”œβ”€β”€ error.rs            # Error types and handling
β”‚   β”œβ”€β”€ tools/              # MCP tool implementations
β”‚   β”‚   └── mod.rs          # Tool definitions and handlers
β”‚   β”œβ”€β”€ bridge/             # DaVinci Resolve API bridge
β”‚   β”œβ”€β”€ config/             # Configuration management
β”‚   └── bin/                # Binary executables
β”œβ”€β”€ tests/                  # Test suites
β”‚   β”œβ”€β”€ integration_test.rs # Integration tests
β”‚   └── unit_test.rs        # Unit tests
β”œβ”€β”€ docs/                   # Documentation
β”‚   β”œβ”€β”€ development/        # Development docs
β”‚   β”œβ”€β”€ phases/             # Project phase documentation
β”‚   β”œβ”€β”€ FEATURES.md         # Feature documentation
β”‚   └── USAGE_GUIDE.md      # Usage guide
β”œβ”€β”€ Cargo.toml              # Project configuration
└── README.md               # This file

Installation

Prerequisites

  • Rust 1.70+
  • DaVinci Resolve installed and running
  • Python 3.8+ (for DaVinci Resolve's scripting API)

Building

# Clone the repository
git clone https://github.com/modelcontextprotocol/davinci-mcp-rs
cd davinci-mcp-rs

# Build the project
cargo build --release

# Run tests
cargo test

Usage

Starting the Server

# Development mode
cargo run

# Production mode
cargo run --release

Configuration

The server can be configured through environment variables or a configuration file. See docs/USAGE_GUIDE.md for detailed configuration options.

Development

Running Tests

# Run all tests
cargo test

# Run specific test suite
cargo test integration_test
cargo test unit_test

# Run with output
cargo test -- --nocapture

Code Quality

# Format code
cargo fmt

# Run linter
cargo clippy

# Check for security vulnerabilities
cargo audit

Documentation

πŸ“š Complete Documentation - Comprehensive documentation index

Quick Links

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Run the test suite
  6. Submit a pull request

License

Non-Commercial License - Free for non-commercial use only.

This software is licensed under a custom non-commercial license that permits:

  • βœ… Personal use
  • βœ… Educational use
  • βœ… Research projects
  • βœ… Open-source development
  • ❌ Commercial use (requires separate commercial license)

See the LICENSE file for complete terms and conditions.

For commercial licensing inquiries, please contact the project maintainers.

Architecture

This server implements the Model Context Protocol to provide seamless integration between AI assistants and DaVinci Resolve. The Rust implementation ensures:

  • Performance: Native code execution with minimal overhead
  • Safety: Memory safety and thread safety guaranteed by Rust
  • Reliability: Comprehensive error handling and recovery
  • Maintainability: Clean architecture with clear separation of concerns

The server communicates with DaVinci Resolve through its Python scripting API via a carefully designed bridge layer, providing type-safe access to all DaVinci Resolve functionality.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published