Media Utils MCP

July 7, 2025 ยท View on GitHub

MCP Server that provides audio / video file processing and analysis.

Requirements

FFMPEG

Download FFMPEG and make sure that it's in your system path.

On MacOS you can run:

brew install ffmpeg

On Ubuntu/Debian:

sudo apt install ffmpeg

On Windows, use Chocolatey:

choco install ffmpeg

Installation

Install the required dependencies:

npm install @modelcontextprotocol/sdk sharp fluent-ffmpeg zod

To install into Claude desktop, add the following to the claude_desktop_config.json file.

    "media-utils": {
      "command": "npx",
      "args": [
        "-y",
        "node",
        "/Users/FOO/src/media-utils-mcp/src/media-utils-mcp.js",
        "--permitted",
        "/Users/FOO/Desktop/mcp"
      ]
    }

Usage

To run the server:

node src/media-utils-mcp.js --permitted /path/to/dir1 /path/to/dir2

The --permitted flag is used to specify which directories roots the MCP is allowed to access for security reasons.

Development

You can run in development using the MCP inspector:

npx @modelcontextprotocol/inspector node src/media-utils-mcp.js --permitted /Users/FOO/Desktop/mcp/

Features

This MCP provides tools for analyzing media files:

  • getMediaInfo: Automatically detects whether files are images or videos and returns appropriate metadata

  • getAllowedDirectories : List the directories the MCP has access to (specified in config)

  • generateImagesFromVideos : Generates an image from each video, which is from a frame most representative of the content in the video.

Questions, Feature Requests, Feedback

If you have any questions, feature requests, need help, or just want to chat, join the discord.

You can also log bugs and feature requests on the issues page.

License

Project released under a MIT License.

License: MIT