vidMagik-mcp
A comprehensive MCP server providing an interface to MoviePy for professional-grade video editing, compositing, and special effects. It exposes over 70 tools for video transformations, audio processing, and automated scene analysis directly through MCP-compatible clients.
README
vidMagik-mcp
A Model Context Protocol (MCP) server that provides a comprehensive interface to MoviePy for video editing. Uses stdio transport by default for seamless integration with MCP clients.
Exposes 70+ tools for professional-grade video editing, compositing, effects, and audio processing.
Features
IO & Creation
- Load:
video_file_clip,audio_file_clip,image_clip,image_sequence_clip - Generate:
text_clip,color_clip,credits_clip,subtitles_clip,tools_drawing_color_gradient,tools_drawing_color_split - Export:
write_videofile,write_audiofile,write_gif - Fast Tools:
tools_ffmpeg_extract_subclip(lossless trimming)
Compositing & Transformation
- Combine:
composite_video_clips,concatenate_video_clips,tools_clips_array,composite_audio_clips,concatenate_audio_clips - Refine:
subclip,vfx_resize,vfx_crop,vfx_rotate - Configure:
set_position,set_audio,set_mask,set_start,set_end,set_duration
Video Effects (vfx)
- Time:
vfx_freeze,vfx_freeze_region,vfx_multiply_speed,vfx_time_mirror,vfx_time_symmetrize,vfx_loop,vfx_make_loopable,vfx_accel_decel - Color:
vfx_black_white,vfx_invert_colors,vfx_fade_in,vfx_fade_out,vfx_gamma_correction,vfx_lum_contrast,vfx_multiply_color,vfx_painting,vfx_blink - Geometry:
vfx_mirror_x,vfx_mirror_y,vfx_even_size,vfx_margin,vfx_scroll,vfx_supersample - Motion:
vfx_slide_in,vfx_slide_out,vfx_head_blur - Masking:
vfx_mask_color,vfx_masks_and,vfx_masks_or
Custom Advanced Effects
vfx_matrix— Classic "Matrix" digital rain overlayvfx_kaleidoscope— Radial symmetry with custom slicesvfx_rgb_sync— Chromatic aberration / glitch with temporal offsetsvfx_chroma_key— Green screen removal with threshold and softnessvfx_auto_framing— Face/subject tracking and cropping for vertical videovfx_clone_grid— Multi-clone grid layout (2x2, 4x4, etc.)vfx_rotating_cube— 3D perspective cube mappingvfx_quad_mirror— Four-way mirror symmetryvfx_kaleidoscope_cube— Radial symmetry combined with 3D rotation
Audio Effects (afx)
afx_multiply_volume,afx_multiply_stereo_volume,afx_audio_fade_in,afx_audio_fade_out,afx_audio_delay,afx_audio_loop,afx_audio_normalize
Analysis & Utilities
tools_detect_scenes— Automatic scene cut detectiontools_find_video_period— Frequency analysis for repetitive motiontools_find_audio_period— Tempo/period detection for audiotools_file_to_subtitles— Parse subtitle filestools_check_installation— Verify MoviePy and dependencies
Prerequisites
- Python 3.12+
- FFmpeg — Required by MoviePy for video processing
- ImageMagick — Required for
text_clipandcredits_clip - uv — Python package manager
Installation
git clone https://github.com/vizionik25/vidMagik-mcp.git
cd vidMagik-mcp
uv sync
Running the Server
The server uses stdio transport by default:
uv run main.py
To use HTTP or SSE transport instead:
uv run main.py --transport http --host 0.0.0.0 --port 8080
uv run main.py --transport sse --host 0.0.0.0 --port 8080
MCP Client Configuration
Add this to your MCP client config (e.g. Claude Desktop, Cursor, etc.):
{
"mcpServers": {
"vidMagik-mcp": {
"command": "uv",
"args": ["run", "main.py"],
"cwd": "/path/to/vidMagik-mcp"
}
}
}
Docker
Docker is the recommended approach — it bundles FFmpeg, ImageMagick, and all system dependencies automatically.
Quick Start
docker compose up --build
This builds the image and starts the server with stdio transport.
Media Directory
The ./media directory on your host is mounted to /app/media inside the container. Use it as the workspace for all input and output files:
mkdir -p media
# Place your source videos, images, and audio in ./media
When using MCP tools, reference files as media/filename.mp4. Output files written to media/ will appear on your host.
Docker MCP Client Configuration
To use the Docker container as an MCP server:
{
"mcpServers": {
"moviepy": {
"command": "docker",
"args": ["compose", "run", "--rm", "-i", "mcp-moviepy"],
"cwd": "/path/to/mcp-moviepy"
}
}
}
Manual Docker Build & Run
docker build -t mcp-moviepy .
docker run -i -v $(pwd)/media:/app/media mcp-moviepy
State Management
The server maintains clips in memory:
- Clip IDs — Tools that create or modify clips return a
clip_id(UUID string) - Chaining — Pass
clip_idto subsequent tools for further operations - Management — Use
list_clipsto view active clips anddelete_clipto free memory - Limits — Auto memory cleanup with file count and total size limits to prevent OOM
Prompt Templates
Built-in prompts guide the LLM through complex workflows:
slideshow_wizard— Professional slideshow from images with transitionstitle_card_generator— Title cards with text on solid backgroundsglitch_effect_preset— High-energy RGB split glitch aestheticauto_framing_for_tiktok— Convert horizontal video to 9:16 verticalmatrix_intro_preset— Classic code-rain overlayrotating_cube_transition— 3D spinning cube effectdemonstrate_kaleidoscope— Mesmerizing radial symmetry animationdemonstrate_kaleidoscope_cube— Hybrid kaleidoscope + 3D cube
Development
Run tests:
uv run pytest tests/test_e2e.py
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.