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.
Video-editing-MCP.mp4
- 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 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
- Video Download: Download from YouTube and other platforms
- File Management: Directory operations, file listing
- Path Suggestions: Get recommended download locations
- Smart Memory: Chain operations without saving intermediate files
- Resource Management: Clear memory, check stored objects
- Efficient Processing: Keep objects in memory for complex workflows
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.
- Python 3.10 or higher
- moviepy==1.0.3
- yt-dlp>=2023.1.6
- mcp>=1.12.2
- typing-extensions>=4.0.0
Ensure that uv is installed.
If not, install it using the following PowerShell command:
powershell -ExecutionPolicy Bypass -Command "irm https://astral.sh/uv/install.ps1 | iex"Add this configuration to your MCP configuration file:
{
"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.jsonin your project root
git clone https://github.com/Aditya2755/video-edit-mcp.git
cd video-edit-mcp
pip install -r requirements.txt
pip install -e .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
# 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)We welcome contributions in these exciting areas:
- 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
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ for the AI and multimedia editing community