ffmpeg-mcp
A Python package for media processing using FFmpeg and FastMCP.

ffmpeg-mcp π¬β‘
A Python package for media processing using FFmpeg and FastMCP. It enables building microservices that handle video/audio tasks with clean, reusable interfaces.
π Overview
This project provides a framework for handling media processing tasks using:
- FFmpeg β A powerful multimedia framework for processing audio and video files
- FastMCP β A high-performance framework for building microservices
π οΈ Available Tools
1. Metadata & Frames
-
get_video_metadata-
param(s):
input_video_path: str
-
-
extract_frames-
params:
input_video_path: str | Pathnumber_of_frames: intframe_timestamps: int (eg: 5s, 10s, 15s, ...)
-
2. Audio
-
extract_audio-
param(s):
input_video_path: str
-
3. Video Scaling & Resizing
-
scale_video-
params:
input_video_path: strresolution: Optional[str]
-
4. Overlay Operations
-
overlay_image-
params:
input_video_path: stroverlay_image_path: strpositioning: Literal[top_left, bottom_left, top_right, bottom_right, center, top_center, bottom_center] = 'top_right'scale: tuple[int, int] | None = (100, 100)keep_audio: bool = Trueopacity: float | None = None (range 0.0β1.0)start_time: float = 0.0 (in seconds)duration: float | None = None (in seconds; None = until end of video)
-
-
overlays_video-
params:
input_video_path: stroverlay_video_path: strpositioning: Literal[top_left, bottom_left, top_right, bottom_right] = 'top_left'
-
5. Video Editing
-
clip_video-
params:
input_video_path: strstart_timestampduration: int
-
-
crop_video-
params:
input_video_pathsafe_crop: boolheight: intwidth: intx_offset: inty_offset: int
-
-
trim_and_concatenate-
params:
input_video_pathnumber_of_trims: inttrim_timestamp: List[(start, end), (start, end), ...]
-
-
make_gif-
params:
input_video_pathstart_timestampduration
-
6. Concatenation & Transitions
-
concatenate_videos-
param(s):
file_list: list[Path]
-
-
normalize_video_clips-
params:
input_video_clips: List[str]resolution: tuple default(1280, 720)frame_rate: int default30crf: int default23audio_bitrate: str default128kpreset: str defaultfast
-
-
concat_clips_with_transition-
params:
input_video_clips: List[str]transition_types: str defaultfade(e.g., fade, wipeleft, rectcrop, coverup, etc.)transition_duration: float default2
-
π§° Utilities
The utils folder contains helper functions and decorators to enhance the functionality and robustness of the media processing tools.
a. Decorators
validate_input_video_pathA decorator that checks if the video path exists, is non-empty, and is a valid video file. This ensures that all video processing functions receive a valid input file.
π¦ Requirements
- Python 3.12 or higher
- uv (package manager)
- FFmpeg installed on the system
π Usage
The package can be used to build media processing microservices that leverage the power of FFmpeg through a Python interface.
1. Clone this repo
git clone [email protected]:yubraaj11/ffmpeg-mcp.git
2. Sync the project
uv sync --frozen
3. Use via MCP - Cline config
{
"mcpServers": {
"ffmpeg-mcp": {
"autoApprove": [],
"disabled": false,
"timeout": 60,
"command": "uv",
"args": [
"--directory",
"/path/to/ffmpeg-mcp/ffmpeg_mcp",
"run",
"main.py"
],
"env": {
"PYTHONPATH": "/path/to/ffmpeg-mcp"
},
"transportType": "stdio"
}
}
}
π Dependencies
ffmpeg-pythonβ Python bindings for FFmpegfastmcpβ Framework for building microservicescolorlogβ Colored logging outputfastapiβ Web framework for building APIspydanticβ Data validation and settings management
Server Terkait
Cryptorefills
AI agent commerce: buy gift cards, top up phones, and get travel eSIMs with Bitcoin, Ethereum, Solana, USDC, USDT, Litecoin, Dogecoin, and 15+ cryptos on Base, Polygon, Arbitrum, Tron, and more. No account, no CLI install, no API key β connect via MCP or let your agent pay autonomously with x402.
Robust LongβTerm Memory
A persistent, humanβlike memory system for AI companions
Fun Generators
Connect Claude, GPT, and any MCP-compatible AI agent directly to FunGenerators.com. Generate names, insults, job titles, lorem ipsum, lottery numbers, and much more β all from a single tool call.
BSC MultiSend MCP
Perform bulk BNB and BEP20 token transfers on the BNB Smart Chain (BSC).
Inday - Public Holiday API
Public holiday data for 30+ countries via AI assistants like Claude and Cursor.
Stockfish
Enables AI to communicate with the Stockfish chess engine.
OraClaw Decision Intelligence
12 MCP tools with 19 ML algorithms for AI agents β bandits, solvers, forecasters, risk models. All under 25ms, deterministic.
Nexbid
Agentic commerce infrastructure for AI agents. MCP-native product discovery, contextual ad matching, and purchase facilitation with European privacy compliance (nDSG/GDPR).
Jade Dragon Snow Mountain
Provides live images, time-lapse videos, and current weather updates for Jade Dragon Snow Mountain.
Fortnox Accounting MCP Server
MCP server for Fortnox β Sweden's largest cloud accounting platform (612K+ customers). Manage invoices, customers, suppliers, accounting, and more via AI agents.