Skip to main content
Glama
video-probe-mcp
by dvnc-labs

video-probe-mcp

Let any MCP client inspect local video and audio files with ffprobe before it ships them.

demo

license

A narrow Model Context Protocol server. It wraps one system, ffprobe, and does one job: return structured media metadata from a local file.

codex mcp add video-probe-mcp -- npx -y github:omidsaffari/video-probe-mcp

What it does

  • Exposes one tool, probe_media, backed by ffprobe.

  • Reads a local media file and returns JSON with format, duration, bitrate, file size, and stream metadata.

  • Uses the bundled ffprobe-static binary by default, or FFPROBE_PATH when you want to point at a system install.

It does not transcode, edit, upload, call a model, or reach a remote API.

Related MCP server: mcp-ffmpeg

Install

Codex

codex mcp add video-probe-mcp -- npx -y github:omidsaffari/video-probe-mcp

Claude Code and other MCP clients

Add to your MCP config (.mcp.json or the client's mcpServers block):

{
  "mcpServers": {
    "video-probe-mcp": {
      "command": "npx",
      "args": ["-y", "github:omidsaffari/video-probe-mcp"]
    }
  }
}

From source

git clone https://github.com/omidsaffari/video-probe-mcp
cd video-probe-mcp
npm install
npm run build

Then point your MCP client's command at:

node /absolute/path/to/video-probe-mcp/dist/index.js

Configuration

No API key is needed. By default the server uses the bundled ffprobe-static binary. To use a specific local binary, set FFPROBE_PATH:

{
  "mcpServers": {
    "video-probe-mcp": {
      "command": "npx",
      "args": ["-y", "github:omidsaffari/video-probe-mcp"],
      "env": {
        "FFPROBE_PATH": "/opt/homebrew/bin/ffprobe"
      }
    }
  }
}

See .env.example for local development.

Tool

probe_media

Input:

{
  "filePath": "/absolute/path/to/video.mp4",
  "includeRawJson": false,
  "timeoutMs": 15000
}

Output is JSON text:

{
  "format": {
    "name": "mov,mp4,m4a,3gp,3g2,mj2",
    "durationSeconds": 12.48,
    "bitRate": 3091210,
    "streamCount": 2
  },
  "streams": [
    {
      "type": "video",
      "codec": "h264",
      "width": 1920,
      "height": 1080,
      "frameRate": "30/1"
    }
  ]
}

Use absolute paths when possible. Relative paths resolve from the MCP server process cwd, which may differ by client.

Why this exists

Agentic video workflows are growing fast, but agents still need a small deterministic check before they publish a render: "what file did I actually make?" Broad media servers mix generation, editing, conversion, and provider APIs. This server is just the inspect step.

License

MIT - see LICENSE. Built by Omid Saffari.

Available Tools

1 tool
probe_mediaProbe mediaA

Inspect a local video or audio file with ffprobe and return structured format and stream metadata.

Inputs: filePath (required), includeRawJson, timeoutMs.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.7/5.0

    Scored across 1 tool

    Disambiguation5/5

    With only one tool, there is no possibility of ambiguity. The agent can clearly identify its purpose.

    Naming Consistency5/5

    A single tool trivially satisfies naming consistency, as there is no pattern to conflict with.

    Tool Count3/5

    One tool is minimal but appropriate for a focused probing server. However, it feels thin compared to typical multi-tool servers.

    Completeness4/5

    The tool covers the core functionality of inspecting media files and returning metadata. Minor gaps might exist (e.g., no detailed stream selection), but it is sufficient for its stated purpose.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • -
      license
      A
      quality
      Not graded
      maintenance
      Enables comprehensive video file analysis including extracting metadata, stream information, bitrate calculations, and generating technical reports. Supports all FFmpeg-compatible video formats with output in JSON, text, or Markdown formats.
      4
      9 npm
      1
      -
    • A
      license
      A
      quality
      D
      maintenance
      Enables local media processing (video/audio) using FFmpeg and FFprobe, allowing frame extraction, audio conversion, and metadata retrieval through natural language.
      5
      MIT