Leverages FFmpeg's video processing capabilities to resize videos and extract audio in different formats
MCP FFmpeg Video Processor
A Node.js server that uses FFmpeg to manipulate video files. This server provides APIs to:
- Resize videos to different resolutions (360p, 480p, 720p, 1080p)
- Extract audio from videos in various formats (MP3, AAC, WAV, OGG)
Prerequisites
Before running this application, you need to have the following installed:
- Node.js (v14 or higher)
- FFmpeg - This is required for video processing
Installing FFmpeg
On macOS:
On Ubuntu/Debian:
On Windows:
- Download FFmpeg from the official website
- Extract the files to a folder (e.g.,
C:\ffmpeg
) - Add the
bin
folder to your PATH environment variable
Installation
- Clone this repository:
- Install dependencies:
Installing via Smithery
To install mcp-ffmpeg for Claude Desktop automatically via Smithery:
Running the Server
Start the server with:
For development with auto-restart on file changes:
Installing via Smithery
To install mcp-ffmpeg for Claude Desktop automatically via Smithery:
To install mcp-ffmpeg for Cursor, go to Settings -> Cursor Settings -> Features -> MCP Servers -> + Add
Select Type: command and paste the below, using your API key from Adjust
Using with Claude Desktop
This MCP FFmpeg server can be integrated with Claude Desktop to process videos through natural language requests.
Running with npx
You can run the server directly with npx:
Or if you've published the package to npm:
Configuring Claude Desktop
To add this server to Claude Desktop, update your Claude Desktop configuration file:
- Locate your Claude Desktop config file:
- macOS:
~/.config/claude-desktop/config.json
or~/Library/Application Support/Claude Desktop/config.json
- Windows:
%APPDATA%\Claude Desktop\config.json
- Linux:
~/.config/claude-desktop/config.json
- macOS:
- Add the FFmpeg MCP server to the
mcpServers
section:
If you've published the package to npm:
- Restart Claude Desktop for the changes to take effect.
Example Prompts for Claude
Once configured, you can use prompts like:
Notes
- Uploaded videos are stored temporarily in the
uploads
directory - Processed videos and audio files are stored in the
output
directory - The server has a file size limit of 500MB for uploads
License
MIT
local-only server
The server can only run on the client's local machine because it depends on local resources.
A Node.js server that enables video manipulation through natural language requests, including resizing videos to different resolutions (360p to 1080p) and extracting audio in various formats (MP3, AAC, WAV, OGG).
Related MCP Servers
- -securityFlicense-qualityEnables video editing using natural language commands powered by FFmpeg, supporting operations like trimming, merging, format conversion, and more with real-time progress tracking and error handling.Last updated -34Python
- AsecurityFlicenseAqualityA Node.js server that provides advanced video and image processing capabilities through the Model Context Protocol, enabling operations like conversion, compression, editing, and effects application.Last updated -10920JavaScript
- -securityFlicense-qualityA server for downloading, processing, and managing YouTube content with features like video quality selection, format conversion, and metadata extraction.Last updated -JavaScript
- AsecurityAlicenseAqualityAn MCP server providing video processing capabilities through FFmpeg, enabling dialog-based local video search, trimming, concatenation, and playback functionalities.Last updated -765PythonMIT License