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)
Before running this application, you need to have the following installed:
- Node.js (v14 or higher)
- FFmpeg - This is required for video processing
brew install ffmpeg
sudo apt update
sudo apt install ffmpeg
- 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
- Clone this repository:
git clone https://github.com/yourusername/mcp-ffmpeg.git
cd mcp-ffmpeg
- Install dependencies:
npm install
Start the server with:
npm start
For development with auto-restart on file changes:
npm run dev
This MCP FFmpeg server can be integrated with Claude Desktop to process videos through natural language requests.
You can run the server directly with npx:
npx /path/to/mcp-ffmpeg
Or if you've published the package to npm:
npx mcp-ffmpeg
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:
{
"mcpServers": {
"ffmpeg": {
"command": "npx",
"args": [
"--yes",
"/absolute/path/to/mcp-ffmpeg"
]
}
}
}
If you've published the package to npm:
{
"mcpServers": {
"ffmpeg": {
"command": "npx",
"args": [
"--yes",
"mcp-ffmpeg"
]
}
}
}
- Restart Claude Desktop for the changes to take effect.
Once configured, you can use prompts like:
Using the ffmpeg MCP server, please resize the video at /path/to/video.mp4 to 720p resolution.
- 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
MIT