MCP Media Processing Server

by maoxiaoke

316 downloads
Not rated
GitHub

About

A Node.js server implementing Model Context Protocol (MCP) for media processing operations, providing powerful video and image manipulation capabilities.

Details

Author
maoxiaoke
Downloads
316
Categories
Other, Media

- Video processing and conversion
- Image processing and manipulation
- Media compression
- Video trimming and editing
- Image effects and watermarking

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP Media Processing Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Configure the server in your claude_desktop_config.json by adding the NPX command for mcp-media-processor@latest. Ensure FFmpeg and ImageMagick are installed on your system before use.

execute-ffmpeg

Execute any FFmpeg command with custom options

convert-video

Convert video to different format

compress-video

Compress video file

trim-video

Trim video to specified duration

compress-image

Compress PNG image using ImageMagick

convert-image

Convert image to different format

resize-image

Resize image to specified dimensions

rotate-image

Rotate image by specified degrees

add-watermark

Add watermark to image

apply-effect

Apply visual effect to image

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp media processing server": {
            "mediaProcessor": {
                "command": "npx",
                "args": [
                    "-y",
                    "mcp-media-processor@latest"
                ]
            }
        }
    }
}

McpServers

{
    "mediaProcessor": {
        "command": "npx",
        "args": [
            "-y",
            "mcp-media-processor@latest"
        ]
    }
}

MCP Media Processing Server

smithery badge

A Node.js server implementing Model Context Protocol (MCP) for media processing operations, providing powerful video and image manipulation capabilities.

Features

Video processing and conversion
Image processing and manipulation
Media compression
Video trimming and editing
Image effects and watermarking

Prerequisites

Before using this server, make sure you have the following dependencies installed on your system:

FFmpeg: Required for video processing operations
macOS: brew install ffmpeg
Ubuntu/Debian: sudo apt-get install ffmpeg
Windows: Download from FFmpeg official website

ImageMagick: Required for image processing operations
macOS: brew install imagemagick
Ubuntu/Debian: sudo apt-get install imagemagick
Windows: Download from ImageMagick official website

How to use

Add this to your claude_desktop_config.json:

NPX

{
  "mcpServers": {
    "mediaProcessor": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-media-processor@latest"
      ]
    }
  }
}

API

Tools

Video Operations

execute-ffmpeg
Execute any FFmpeg command with custom options
Inputs:
inputPath (string): Absolute path to input video file
options (string[]): Array of FFmpeg command options
outputPath (string, optional): Absolute path for output file
outputFilename (string, optional): Output filename

convert-video
Convert video to different format
Inputs:
inputPath (string): Absolute path to input video file
outputFormat (string): Desired output format (e.g., mp4, mkv, avi)
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

compress-video
Compress video file
Inputs:
inputPath (string): Absolute path to input video file
quality (number, optional): Compression quality (1-51, lower is better quality)
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

trim-video
Trim video to specified duration
Inputs:
inputPath (string): Absolute path to input video file
startTime (string): Start time in format HH:MM:SS
duration (string): Duration in format HH:MM:SS
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

Image Operations

compress-image
Compress PNG image using ImageMagick
Inputs:
inputPath (string): Absolute path to input PNG image
quality (number, optional): Compression quality (1-100)
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

convert-image
Convert image to different format
Inputs:
inputPath (string): Absolute path to input image file
outputFormat (string): Desired output format (e.g., jpg, png, webp, gif)
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

resize-image
Resize image to specified dimensions
Inputs:
inputPath (string): Absolute path to input image file
width (number, optional): Target width in pixels
height (number, optional): Target height in pixels
maintainAspectRatio (boolean, optional): Whether to maintain aspect ratio
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

rotate-image
Rotate image by specified degrees
Inputs:
inputPath (string): Absolute path to input image file
degrees (number): Rotation angle in degrees
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

add-watermark
Add watermark to image
Inputs:
inputPath (string): Absolute path to input image file
watermarkPath (string): Absolute path to watermark image file
position (string, optional): Position of watermark (default: "southeast")
opacity (number, optional): Watermark opacity (0-100)
outputPath (string, optional): Custom output path
outputFilename (string, optional): Custom output filename

apply-effect
Apply visual effect to image
Inputs:
inputPath (string): Absolute path to input image file
effect (string): Effect to apply (blur, sharpen, edge, emboss, grayscale, sepia, negate)
intensity (number, optional): Effect intensity (0-100)
outputPath (string, optional): Custom output path
* outputFilename (string, optional): Custom output filename

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.