
Video Edit (MoviePy)
Provides comprehensive video and audio editing capabilities through MoviePy, allowing you to trim, merge, resize, add effects, convert formats, and download videos from YouTube. Uses an in-memory object store to efficiently chain multiple editing operations without creating intermediate files.
MoviePy-based video editing server that provides comprehensive video and audio processing capabilities including trimming, merging, resizing, effects, format conversion, YouTube downloading, and text/image overlays through an in-memory object store for chaining operations efficiently.
What it does
- Trim, merge, resize, and crop videos
- Add fade effects, speed control, and overlays
- Extract and process audio tracks
- Convert between video formats
- Download videos from YouTube
- Chain multiple operations in memory
Best for
About Video Edit (MoviePy)
Video Edit (MoviePy) is a community-built MCP server published by aditya2755 that provides AI assistants with tools and capabilities via the Model Context Protocol. MoviePy-based video editor for fast trimming, merging, resizing, effects & YouTube downloads—an alternative to Clip Cham It is categorized under other, ai ml. This server exposes 34 tools that AI clients can invoke during conversations and coding sessions.
How to install
You can install Video Edit (MoviePy) in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
Video Edit (MoviePy) is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Tools (34)
Get comprehensive information about a video file including duration, fps, resolution, codec details, and audio information.
Use this tool for trimming the video, provide start and end time in seconds, and output name like trimmed_video.mp4 , if there are multiple steps to be done after trimming then make sure to return object and return path should be false else return path should be true
Use this tool for merging two videos, provide two video paths, and output name like merged_video.mp4 , if there are multiple steps to be done after merging then make sure to return object and return path should be false else return path should be true
Use this tool for resizing the video make sure first whether video needs to be saved directly or just object has to be returned for further processing, if there are multiple steps to be done after resizing then make sure to return object and return path should be false else return path should be true
Use this tool for cropping the video, provide x1, y1, x2, y2 coordinates, and output name like cropped_video.mp4 , if there are multiple steps to be done after cropping then make sure to return object and return path should be false else return path should be true
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 -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
Manual Installation
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
# 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
- 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
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ for the AI and multimedia editing community
Alternatives
Related Skills
Browse all skillsDownloads videos from YouTube and other platforms for offline viewing, editing, or archival. Handles various formats and quality options.
Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks
Comprehensive document creation, editing, and analysis with support for tracked changes, comments, formatting preservation, and text extraction. When Claude needs to work with professional documents (.docx files) for: (1) Creating new documents, (2) Modifying or editing content, (3) Working with tracked changes, (4) Adding comments, or any other document tasks
Download videos from YouTube, Bilibili, Twitter, and thousands of other sites using yt-dlp. Use when the user provides a video URL and wants to download it, extract audio (MP3), download subtitles, or select video quality. Triggers on phrases like "下载视频", "download video", "yt-dlp", "YouTube", "B站", "抖音", "提取音频", "extract audio".
Process and generate multimedia content using Google Gemini API. Capabilities include analyze audio files (transcription with timestamps, summarization, speech understanding, music/sound analysis up to 9.5 hours), understand images (captioning, object detection, OCR, visual Q&A, segmentation), process videos (scene detection, Q&A, temporal analysis, YouTube URLs, up to 6 hours), extract from documents (PDF tables, forms, charts, diagrams, multi-page), generate images (text-to-image, editing, composition, refinement). Use when working with audio/video files, analyzing images or screenshots, processing PDF documents, extracting structured data from media, creating images from text prompts, or implementing multimodal AI features. Supports multiple models (Gemini 2.5/2.0) with context windows up to 2M tokens.
Generate FFmpeg commands from natural language video editing requests - cut, trim, convert, compress, change aspect ratio, extract audio, and more.