The whole point is not having to remember how to express a trim or a speed change in FFmpeg arguments; ask for it, and the progress reporting means a long transcode does not look like a hang. Because it runs FFmpeg commands the client composed, keep it pointed at working directories you are happy to have written to and read the command before approving anything destructive.
A Python MCP server that puts FFmpeg behind one tool. You describe the edit in plain language, the client turns it into an FFmpeg command, and the server validates it, runs it, and reports progress while it works.
- `execute_ffmpeg` — takes a command string, validates it, runs it, and reports real-time progress
- Every FFmpeg operation is in reach: trimming, merging, format conversion, speed changes, audio tracks in and out, subtitles and basic filters
- Detailed errors passed back to the client, so a malformed command becomes a correction rather than a dead end
- Processing restricted to directories you explicitly allow
FFmpeg installed and on your PATH — Homebrew, Chocolatey or apt all work — plus Python 3.9 or higher. Add the `video-editor` package with uv and point your client at it. No API key and nothing to sign up for; everything runs against local files.
Build from source — clone the repository and build it, then point your client at the binary
