mcp-ffmpeg-tools
@gamhoi
An open-source Python MCP (Model-Command Protocol) server designed to enable Large Language Models (LLMs) to execute FFmpeg commands, receive execution results, and validate commands against FFmpeg source code.
概览
What is mcp-ffmpeg-tools?
mcp-ffmpeg-tools is an open-source Python MCP (Model-Command Protocol) server that enables Large Language Models (LLMs) to execute FFmpeg commands, receive execution results, and validate commands against FFmpeg source code for accurate media processing.
How to use mcp-ffmpeg-tools?
Install FFmpeg, then clone the repository, create a virtual environment with uv venv, and install with uv pip install -e .. For Claude Desktop, add the provided JSON configuration specifying the uv command and path. Alternatively, run via Docker with docker pull gamhoi/mcp-ffmpeg-tools:latest and configure the HTTP endpoint.
Key features of mcp-ffmpeg-tools
- Execute FFmpeg commands through an MCP interface
- Receive detailed execution results and error messages
- Validate commands using FFmpeg source code
- Cross-platform support (Windows, macOS, Linux)
- Environment management using uv
- Docker support with HTTP mode and file mounting
Use cases of mcp-ffmpeg-tools
- Extract all media streams from a video file
- Overlay two videos with scaling and positioning
- Inspect media properties using ffprobe
- Capture screenshots to verify video layout and quality
- Automate media conversion tasks via LLM assistance
FAQ from mcp-ffmpeg-tools
What is mcp-ffmpeg-tools for?
It allows LLMs to run FFmpeg commands, get results, and validate commands against FFmpeg source code, enabling automated media processing.
What are the prerequisites?
FFmpeg must be installed on your system and accessible in the PATH. Instructions for Windows, macOS, and Linux are provided.
How do I install mcp-ffmpeg-tools?
Clone the repository, then run uv venv and uv pip install -e . in the project directory. The installer verifies FFmpeg and downloads the corresponding source code.
Can I use mcp-ffmpeg-tools with Docker?
Yes. Pull the image from Docker Hub (gamhoi/mcp-ffmpeg-tools:latest) and run it on port 8000. Mount host directories with -v to access local files.
How do I configure it with Claude Desktop?
Add a JSON entry to your Claude Desktop settings with command: "uv", arguments pointing to the project directory, and "run", "ffmpeg-tools". For Docker, use type: "streamableHttp" and the server URL.