# Video Edit MCP Server π¬ A powerful **Model Context Protocol (MCP)** server designed for advanced video and audio editing operations. This server enables MCP clientsβsuch as Claude Desktop, Cursor, and othersβto perform comprehensive multimedia editing tasks through a standardized and unified interface.    https://github.com/user-attachments/assets/134b8b82-80b1-4678-8930-ab53121b121f ## β¨ Key Features ### π₯ Video Operations - **Basic Editing**: Trim, merge, resize, crop, rotate videos - **Effects**: Speed control, fade in/out, grayscale, mirror - **Overlays**: Add text, images, or video overlays with transparency - **Format Conversion**: Convert between formats with codec control - **Frame Operations**: Extract frames, create videos from images ### π΅ Audio Operations - **Audio Processing**: Extract, trim, loop, concatenate audio - **Volume Control**: Adjust levels, fade in/out effects - **Audio Mixing**: Mix multiple tracks together - **Integration**: Add audio to videos, replace soundtracks ### π₯ Download & Utilities - **Video Download**: Download from YouTube and other platforms - **File Management**: Directory operations, file listing - **Path Suggestions**: Get recommended download locations ### π§Ή Memory & Cleanup - **Smart Memory**: Chain operations without saving intermediate files - **Resource Management**: Clear memory, check stored objects - **Efficient Processing**: Keep objects in memory for complex workflows ### π Operation Chaining Seamlessly chain multiple operations together without creating intermediate files. Process your video through multiple steps (trim β add audio β apply effects β add text) while keeping everything in memory for optimal performance. ## π Requirements - **Python 3.10 or higher** - **moviepy==1.0.3** - **yt-dlp>=2023.1.6** - **mcp>=1.12.2** - **typing-extensions>=4.0.0** ## βοΈ Installation & Setup ### For Claude Desktop / Cursor MCP Integration **Ensure that `uv` is installed.** If not, install it using the following PowerShell command: ```powershell powershell -ExecutionPolicy Bypass -Command "irm https://astral.sh/uv/install.ps1 | iex" ``` Add this configuration to your MCP configuration file: ```json { "mcpServers": { "video_editing": { "command": "uvx", "args": [ "--python", "3.11", "video-edit-mcp" ] } } } ``` **Configuration file locations:** - **Claude Desktop (Windows)**: `%APPDATA%/Claude/claude_desktop_config.json` - **Claude Desktop (macOS)**: `~/Library/Application Support/Claude/claude_desktop_config.json` - **Cursor**: `.cursor/mcp.json` in your project root ### Manual Installation ```bash git clone https://github.com/Aditya2755/video-edit-mcp.git cd video-edit-mcp pip install -r requirements.txt pip install -e . ``` ## ποΈ Project Structure ``` video_edit_mcp/ βββ src/ β βββ video_edit_mcp/ β βββ __init__.py β βββ main.py # MCP server implementation β βββ video_operations.py # Video editing tools β βββ audio_operations.py # Audio processing tools β βββ download_utils.py # Download functionality β βββ util_tools.py # Memory & utility tools β βββ utils.py # Utility functions β βββ pyproject.toml # Project configuration βββ requirements.txt # Dependencies βββ uv.lock # Lock file βββ LICENSE # MIT License βββ MANIFEST.in # Manifest file βββ README.md ``` ## π― Example Usage ```python # Chain operations without intermediate files video_info = get_video_info("input.mp4") trimmed = trim_video("input.mp4", 10, 60, return_path=False) # Keep in memory with_audio = add_audio(trimmed, "background.mp3", return_path=False) final = add_text_overlay(with_audio, "Hello World", x=100, y=50, return_path=True) ``` ## π Future Enhancements & Contributions We welcome contributions in these exciting areas: ### π€ AI-Powered Features - **Speech-to-Text (STT)**: Automatic subtitle generation and transcription - **Text-to-Speech (TTS)**: AI voice synthesis for narration - **Audio Enhancement**: AI-based noise reduction and audio quality improvement - **Smart Timestamps**: Automatic scene detection and chapter generation - **Face Tracking**: Advanced face detection and tracking for automatic editing - **Object Recognition**: Track and edit based on detected objects - **Content Analysis**: AI-powered content categorization and tagging ## π€ Contributing 1. Fork the repository 2. Create a feature branch: `git checkout -b feature/amazing-feature` 3. Commit your changes: `git commit -m 'Add amazing feature'` 4. Push to the branch: `git push origin feature/amazing-feature` 5. Open a Pull Request ## π License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ---