/ Directory / Playground / VideoCut Skills
● Community Ceeon ⚡ Instant

VideoCut Skills

by Ceeon · Ceeon/videocut-skills

Edit video by talking — clip ranges, splice, caption, normalize loudness, all driven from Claude using FFmpeg under the hood.

VideoCut Skills (Ceeon) wraps FFmpeg as a Claude Code skill suite focused on the most common video edits: trimming, splicing clips together, adding burned-in captions, normalizing audio, exporting platform variants (vertical for TikTok, square for Instagram). Built around natural-language prompts so non-editors can ship.

Why use it

Key features

Live Demo

What it looks like in practice

ready

Install

Pick your client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "videocut-skills": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Ceeon/videocut-skills",
        "~/.claude/skills/videocut"
      ],
      "_inferred": true
    }
  }
}

Open Claude Desktop → Settings → Developer → Edit Config. Restart after saving.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "videocut-skills": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Ceeon/videocut-skills",
        "~/.claude/skills/videocut"
      ],
      "_inferred": true
    }
  }
}

Cursor uses the same mcpServers schema as Claude Desktop. Project config wins over global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "videocut-skills": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Ceeon/videocut-skills",
        "~/.claude/skills/videocut"
      ],
      "_inferred": true
    }
  }
}

Click the MCP Servers icon in the Cline sidebar, then "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "videocut-skills": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Ceeon/videocut-skills",
        "~/.claude/skills/videocut"
      ],
      "_inferred": true
    }
  }
}

Same shape as Claude Desktop. Restart Windsurf to pick up changes.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "videocut-skills",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Ceeon/videocut-skills",
        "~/.claude/skills/videocut"
      ]
    }
  ]
}

Continue uses an array of server objects rather than a map.

~/.config/zed/settings.json
{
  "context_servers": {
    "videocut-skills": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/Ceeon/videocut-skills",
          "~/.claude/skills/videocut"
        ]
      }
    }
  }
}

Add to context_servers. Zed hot-reloads on save.

claude mcp add videocut-skills -- git clone https://github.com/Ceeon/videocut-skills ~/.claude/skills/videocut

One-liner. Verify with claude mcp list. Remove with claude mcp remove.

Use Cases

Real-world ways to use VideoCut Skills

Turn a 60-min podcast into 5 vertical Shorts

👤 Podcast producers / creators ⏱ ~60 min intermediate

When to use: You have a long episode and need bite-sized clips for TikTok/Shorts/Reels.

Prerequisites
  • Skill installed — git clone https://github.com/Ceeon/videocut-skills ~/.claude/skills/videocut
  • FFmpegbrew install ffmpeg or apt-get equivalent
  • Source video — .mp4 file with the full episode
Flow
  1. Transcribe + identify highlights
    VideoCut: transcribe ep07.mp4. Identify 5 candidate Shorts (60–90s each), each containing one self-contained insight.✓ Copied
    → 5 timestamp ranges with rationale per clip
  2. Cut + caption
    Cut clips into ./shorts/. Burn captions, vertical 9:16, normalize loudness.✓ Copied
    → 5 mp4 files, ready to upload
  3. Spot check
    Show me the first 5 seconds of clip 3 — captions readable? Sound levels OK?✓ Copied
    → Quick sanity check before posting

Outcome: Day's content batch in 30 min instead of an evening in Premiere.

Pitfalls
  • Clip mid-sentence — Use transcript-aware trimming to snap to sentence boundaries
  • Captions cover speaker face — Specify caption position; default centered-bottom
Combine with: filesystem

Clean up a recorded lecture (cut ums, normalize, splice takes)

👤 Educators, course creators ⏱ ~45 min intermediate

When to use: Recorded a 45-min lecture with retakes; need a polished export.

Flow
  1. Transcribe
    VideoCut: transcribe lecture-raw.mp4. List sections marked '[retake]' and the retake start.✓ Copied
    → Cut points identified by transcript markers
  2. Splice + clean
    Cut out everything before retakes; splice the keepers. Remove silences > 1.5s. Normalize.✓ Copied
    → Tighter cut produced

Outcome: Lecture goes from 45 min to a tight 35 min.

Pitfalls
  • Aggressive silence removal feels jumpy — Set min_silence to 1.5–2s, not 0.5

Export TikTok + Instagram + YouTube variants from one master

👤 Creators distributing across platforms ⏱ ~20 min beginner

When to use: Master is 16:9; you need vertical and square exports.

Flow
  1. Variant pass
    VideoCut: from master.mp4, export tiktok.mp4 (9:16), reels.mp4 (9:16), instagram-feed.mp4 (1:1), youtube-shorts.mp4 (9:16).✓ Copied
    → 4 files generated; cropping focused on subject

Outcome: Multi-platform pack from one master.

Pitfalls
  • Subject framing breaks at 1:1 — Use auto-crop with face-tracking

Combinations

Pair with other MCPs for X10 leverage

videocut-skills + filesystem

Source/dest paths in your workspace

Read /raw/episode.mp4. Cut Shorts into /shorts/.✓ Copied
videocut-skills + humanizer-zh-skill

Generate caption text variants in human voice

Get the Chinese transcript, humanize it, then re-burn captions.✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
transcribe video_path, language? Step 1 for transcript-aware edits 0 + Whisper time
trim input, start, end, output Cut a single range 0
splice inputs[], output, crossfade_ms? Combine clips 0
burn_captions video, srt, position? Hardcoded captions 0
normalize_loudness video, target_lufs? Even out volume 0
remove_silences video, min_silence_ms Tighten talking head 0
export_variant video, target_aspect, output Platform export 0

Cost & Limits

What this costs to run

API quota
N/A — local FFmpeg
Tokens per call
Low (mostly orchestration)
Monetary
Free; FFmpeg is free; Whisper local or cloud-priced
Tip
Use local Whisper for transcription if cost-sensitive; cloud is faster but billed

Security

Permissions, secrets, blast radius

Minimum scopes: filesystem-read filesystem-write execute ffmpeg
Credential storage: None
Data egress: Local; cloud only if you opt into a cloud transcription service

Troubleshooting

Common errors and fixes

FFmpeg not found

brew install ffmpeg / apt-get install ffmpeg

Verify: ffmpeg -version
Audio drift after splice

Re-encode rather than copy; the skill defaults to copy for speed

Captions out of sync

Re-transcribe with VAD; original SRT may have been off

Vertical crop misses subject

Enable face-tracking crop mode

Alternatives

VideoCut Skills vs others

AlternativeWhen to use it insteadTradeoff
Premiere / DaVinci ResolveFinal polish workManual; not LLM-driven
DescriptTranscript-first editing UISaaS; subscription
OpenMontageFull agentic video productionHeavier; bigger surface

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills