# Ffmpeg Skill (MCP server)

> Ffmpeg Skill is an MCP server that adds developer tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Local video editor for coding agents: 42 FFmpeg tools with a machine-readable contract and an MCP server, for Claude… It has 2,928 GitHub stars, is released under the MIT license and runs locally with npx -y ffmpeg-skill.

Give your coding agent a video editor. Claude Code, Cursor, Codex or any MCP client edits your footage with local FFmpeg, then checks its own output. No cloud · No API keys · Python standard library

## Key facts

| Fact | Value |
|---|---|
| Repository | https://github.com/kajisho5/ffmpeg-skill |
| GitHub stars | 2,928 |
| License | MIT |
| Language | Python |
| Transport | stdio |
| Packages | npm: ffmpeg-skill |
| Remote URL | none |
| Needs API key | no |
| Official | no |
| Works with | Claude Desktop, Claude Code, Cursor, VS Code |
| Category | Developer tools |
| Latest release | v2.17.1 (Oct 25, 2026) |
| Last commit | Oct 26, 2026 |

## Install

### Claude Desktop (claude_desktop_config.json)

```json
{
  "mcpServers": {
    "ffmpeg-skill": {
      "command": "npx",
      "args": [
        "-y",
        "ffmpeg-skill"
      ]
    }
  }
}
```

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

### Claude Code

```sh
claude mcp add --transport stdio ffmpeg-skill -- npx -y ffmpeg-skill
```

### Cursor (.cursor/mcp.json)

```json
{
  "mcpServers": {
    "ffmpeg-skill": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "ffmpeg-skill"
      ]
    }
  }
}
```

Project file; use ~/.cursor/mcp.json to enable it in every project.

### VS Code (.vscode/mcp.json)

```json
{
  "servers": {
    "ffmpeg-skill": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "ffmpeg-skill"
      ]
    }
  }
}
```

Config formats checked against the official docs on 2026-10-07.

## Tools

- `probe.py`: Duration, fps (+ VFR detection), resolution, codecs, bit depth, HDR format incl.
- `scenes.py`: Scene changes, audio peaks, highlight proposals (--rank-by audio loudest, or --rank-by duration longest — both…
- `look.py`: Contact sheet, single frames, side-by-side comparison as PNG so the agent can see what it made; --safe NAME shades the…
- `cut.py`: In/out or multi-segment cuts, lossless -c copy first, re-encode fallback, --accurate for frame-exact video and…
- `join.py`: Concatenate clips with xfade transitions, normalising size, fps, sample rate and channel layout (the widest clip's, or…
- `silence.py`: Detect and remove dead air (jump cuts) with a margin around speech; list or export the cut list; --filler also removes…
- `fit.py`: Fit to a duration (pitch-preserving speed change or trim, smooth slow-mo) and/or aspect ratio (pad, crop or --fit…
- `crop.py`: Crop to an exact pixel rectangle (--x --y --width --height) — distinct from fit.py --fit crop, which crops to an…
- `cropdetect.py`: Measure existing black letterbox/pillarbox bars and report the crop.py-ready rectangle that removes them — analysis…
- `deinterlace.py`: Deinterlace interlaced source footage (yadif), --mode frame/field, --parity
- `denoise.py`: Reduce video noise/grain (hqdn3d), --strength low/medium/high or individual spatial/temporal overrides
- `redact.py`: Blur, pixelate, or (--mode delogo) interpolate away an exact pixel rectangle for the whole clip.
- `sphere.py`: Extract a flat rectilinear viewport from a 360/spherical video (--yaw --pitch --roll --h-fov --v-fov); no subject…
- `straighten.py`: Rotate by an arbitrary angle for horizon correction (--degrees, --fit crop/pad) — distinct from fit.py --rotate's…
- `insert.py`: Turn a still image into a silent, fixed-duration video clip (title card, end slate) at an exact frame size / fps, with…
- `background.py`: Generate a solid-colour or two-colour gradient clip at an exact size/duration — no input file
- `reverse.py`: Reverse playback (video and, unless --no-audio, audio)
- `stabilize.py`: Two-pass motion stabilisation (vidstabdetect/vidstabtransform)
- `sequence.py`: Numbered (frame%04d.png) or glob-matched still images into a video
- `waveform.py`: Render an audio track as a waveform or spectrum visualization video (showwaves/showspectrum) — for audio-only inputs…
- `freeze.py`: Hold a frame for N seconds (--at, --hold, --mode insert/extend) — an end-card hold or a comedic beat
- `pad.py`: Add black/silent padding at the start and/or end of the timeline (--start, --end) — distinct from fit.py --fit pad's…
- `speedramp.py`: Step through different constant speeds across a clip via --segment START-END:FACTOR (repeatable) — distinct from…
- `loop.py`: Repeat a clip --times N or to a target --duration — for background loops and filling a fixed slot length; --boomerang…
- `broll.py`: Cut away to a B-roll clip over the A-roll for a window (--insert B --at T --duration D, repeatable) and come back; A's…
- `metadata.py`: Write container chapter markers from a TIME TITLE text file and title/artist/comment tags, every stream copied bit for…
- `grid.py`: Composite --colsx--rows clips into one grid, each cell letterboxed and labelled with its filename by default (--label…
- `audio.py`: Voice clean-up chain at three strengths (--voice light\
- `sync.py`: Offset between two recordings by audio cross-correlation (1 ms, pure Python), clock-drift correction; aligned video or…
- `loudness.py`: Two-pass EBU R128 loudnorm to −14 LUFS / −1 dBTP or any target (--lra for the range), video stream-copied; the written…
- `caption.py`: Burn SRT/ASS with font, size, colour, outline, position; build SRT from timed plain text; wraps to the safe area —…
- `overlay.py`: Logos, watermarks and titles with position, time range, opacity, fades; --platform NAME keeps them clear of that…
- `graphics.py`: Lower-thirds, title cards, chapter chips, progress bars, countdowns, corner bugs, social stickers, opening hook cards…
- `color.py`: HDR10 / HLG / Dolby Vision → SDR BT.709 tone mapping, DV layer stripping, 3D LUT (.cube), colour-tag rewriting, typed…
- `export.py`: Presets youtube, youtube4k, reels, tiktok, shorts, linkedin, facebook, x, youtube-hdr (HEVC Main10, source HDR tags…
- `proxy.py`: Small, low-bitrate proxy for downstream AI analysis/preview/editing decisions — resize by --width/--scale, proxy-grade…
- `check.py`: PASS / WARN / FAIL against YouTube, Shorts, Reels, TikTok, X, LinkedIn, Facebook, broadcast and podcast specs, from…
- `report.py`: Single-file HTML delivery report: before/after sheets, media facts, loudness, compliance, the commands run; --pack…
- `render.py`: Render a whole edit from a declarative project.json (clips, transitions, captions, overlays including the social…
- `batch.py`: Apply a step recipe or a project to a folder with a content-hash cache; --watch; --jobs N processes several files at…

## Similar MCP servers

- [Appllama](https://appsgit.com/mcp-servers/appllama): Study screens, flows and paywalls from top-earning iOS apps, then build from what wins. (3,045 stars, MIT, official)
- [kordoc](https://appsgit.com/mcp-servers/kordoc): Parse Korean documents (HWP, HWPX, PDF, XLSX, DOCX, PPTX) to Markdown; fill forms, diff, render. (2,771 stars, MIT)
- [Shadcn UI MCP Server](https://appsgit.com/mcp-servers/shadcn-ui-mcp-server): A mcp server to allow LLMS gain context about shadcn ui component structure,usage and installation,compaitable with react,svelte 5,vue & React Native. (3,069 stars, MIT)
- [Unla](https://appsgit.com/mcp-servers/unla): 🧩 MCP Gateway - A lightweight gateway service that instantly transforms existing MCP Servers and APIs into MCP servers with zero code changes. (2,245 stars, MIT)
- [Argent](https://appsgit.com/mcp-servers/argent): Drive iOS Simulators, Android emulators, TVs and Electron/web apps from your coding agent. (3,084 stars, Apache-2.0, official)
- [GitLab MCP Server](https://appsgit.com/mcp-servers/gitlab-mcp-server): GitLab MCP server for projects, merge requests, issues, pipelines, wiki, releases, and more. (2,065 stars, MIT, needs API key)

---

Canonical page: https://appsgit.com/mcp-servers/ffmpeg-skill
Source: appsgit (https://appsgit.com), the app store for github. Data from the GitHub API, refreshed daily.
Machine access: JSON API https://appsgit.com/api/v1/apps (OpenAPI: https://appsgit.com/openapi.json), MCP server https://mcp.appsgit.com/mcp, full index https://appsgit.com/llms-full.txt.
