Labsco
MCP SERVER

FFmpeg Video Editing

by KyaniteLabs

Let an agent trim, caption and repurpose local video through typed FFmpeg tools instead of guessed command-line flags.

Video Generation & EditingVerified
Summary
Typed video operations with a receipt, so a render can be re-run and checked rather than trusted.

The tool list covers the everyday FFmpeg jobs, but what makes it worth wiring up is the frame around them: preflight validation before a render, a receipt carrying per-step input and output hashes after it, and quality gates that fail closed instead of publishing something broken. It all runs on your machine against local files — nothing is uploaded, and raw `.insv` or GoPro `.360` files are rejected rather than half-handled.

What it is

Kinocut — formerly mcp-video — is a local-first video editing server over FFmpeg. Every operation is a typed tool with preflight validation, and each render answers with a Video Receipt recording input and output hashes, so the edit can be re-run and reviewed rather than taken on trust.

What you get
  • The ordinary cutting work: `video_trim` by timestamp, `video_merge` with optional xfade transitions, `video_resize`, `video_crop`, `video_rotate`, `video_convert`, `video_overlay`
  • Captions end to end — `video_ai_transcribe` for speech to text, `video_subtitles` to burn a subtitle file in, `video_translate_captions` for a second language
  • Shorts and Reels packaging: `video_repurpose_plan`, `video_repurpose`, `shorts_render`, `shorts_package`
  • Checks before publish — `video_quality_check`, `video_release_checkpoint`, `video_review_run`, `video_review_decide`
  • A job-spec workflow engine: `video_workflow_validate`, `video_workflow_plan`, `video_workflow_render`, `video_workflow_inspect`, with a resume cursor and per-step hashes in the receipt
  • Repair that leaves the story and timeline alone — `video_rescue_plan`, `video_rescue_render`, `video_rescue_inspect`
  • Stills treated as media in their own right: `still_match`, `still_grade`, `still_gate`, `image_extract_colors`, `image_generate_palette`
  • 360 dual-cam assembly from a stitched equirect MP4, driven through `video_intent` and `video_review_decide`
Requirements

FFmpeg on `PATH` — without it nothing runs; `brew install ffmpeg` or `sudo apt install ffmpeg`. Python 3.11 or newer. No account and no key: the published package is `kinocut` on PyPI, run as `uvx --from kinocut kino` over stdio or installed with `pip install kinocut`. Whisper transcription, image analysis, stem separation and upscaling are optional extras — `pip install "kinocut[transcribe]"` and its siblings — and `kino doctor` reports which are present and what is missing. Hyperframes tools additionally want Node.js 22+ and the Hyperframes CLI on PATH.

Setup effort

One command — uvx --from kinocut kino