Someone asked me to help edit a video. I fired up Claude Code, connected a video MCP server, and had the edit done in minutes.
Then I thought: why stop at editing? I could automate the entire publish — editing, thumbnails, YouTube upload, Skool post, all of it. One command.
So I built it. Honestly? Building the pipeline took longer than editing the video did. But now every future video is a single command away.
Here’s how I put it together — and how you can build your own automation pipelines.
———
⚓ How It Started
I needed to edit a video. Instead of opening a video editor, I connected a video-audio MCP server to Claude Code and just told it what to do in plain English: “trim the first 8 seconds,” “remove the silence,” “compress it.”
It worked. Fast.
But then I was still manually uploading to YouTube, writing descriptions, making thumbnails, posting to Skool. The editing was the easy part — all the publishing busywork around it was the real time sink.
So I built a skill that handles the whole pipeline.
———
⚓ The Solution: /video-publish
One slash command. Nine phases. Fully interactive.
/video-publish ~/Downloads/my-tutorial.mp4
That kicks off:
- Analyze — ffprobe scans the video. Claude flags issues (file too big, silence detected, dead start)
- Edit — Claude auto-applies fixes, then drops you into an interactive editor. You type natural language commands like “cut 5:00 to 7:30” or “speed 2x 10:00 12:00” and it maps them to the right tools
- Thumbnail — Renders from a locked Remotion template. I just give it 3-5 words
- Metadata — Title, description, tags auto-generated from my channel profile. I approve before anything goes live
- Upload — Playwright opens YouTube Studio, uploads, fills everything in, publishes
- Skool Post — Writes a community recap with the YouTube link
- Cleanup — Updates a registry, offers to delete temp files
Every step has an approval gate. Nothing publishes without my say-so.
———
⚓ The Tools That Make It Work
The editing side of this pipeline is powered by tools you can install right now:
- video-audio-mcp — An MCP server with 27 video/audio editing tools. Trim, cut, concatenate, speed change, fade transitions, text overlays, image overlays, subtitles, silence removal, format conversion. It’s FFmpeg under the hood, but wrapped in MCP so Claude can call it directly. Find it here: github.com/misbahsy/video-audio-mcp
- auto-editor — A CLI tool for smart silence removal. Way better than basic threshold detection — it analyzes audio patterns and cuts intelligently. Install with pip install auto-editor. Find it here: github.com/WyattBlue/auto-editor
- Remotion — A React framework for making videos and stills programmatically. I use it to render thumbnails from a locked template — Claude just passes in the title text and it spits out a 1280x720 PNG. Find it here: github.com/remotion-dev/remotion
- ffprobe/ffmpeg — The Swiss army knife. Video analysis, compression, silence detection as a fallback. If you’re on Mac: brew install ffmpeg
The browser automation (YouTube upload, Skool posting) is all handled through Playwright MCP — Claude literally opens the browser, navigates YouTube Studio, fills in fields, and clicks publish.
———
⚓ How I Put It Together
Here’s the actual structure — it’s simpler than it sounds:
- A slash command — .claude/commands/video-publish.md is the entry point. When you type /video-publish, this file tells Claude what to do
- A skill spec — SKILL.md is the full playbook. Nine phases, each with exact steps, which tools to call, what to do when things fail, and when to stop and ask me
- Channel profiles — A YAML config file with per-channel settings: YouTube account, thumbnail template, default tags, description footer, Skool URL. I switch channels with --channel books
- A registry — Every publish gets logged to a YAML file with all URLs, edit history, and file paths. No more losing track of what I published where
———
⚓ The Interactive Editor (My Favorite Part)
After the health report, Claude drops into a conversational loop. You just tell it what to do:
- trim 0:00 0:08 — cuts dead start
- remove silence — uses auto-editor to strip gaps
- compress — CRF 24 encoding
- fade out 1.5s — adds a fade at the end
- speed 2x 10:00 12:00 — speeds up a slow section
- undo — reverts last edit
- done — moves to thumbnail
Every edit is non-destructive. Claude creates numbered files (edit-01-trim.mp4, edit-02-desilenced.mp4) so you can always go back.
———
⚓ How You Can Build Something Like This
You don’t need to build a video pipeline. The pattern works for anything repetitive:
- Identify the workflow — What do you do the same way every time?
- Break it into phases — Each phase is one job with a clear input and output
- Pick your tools — MCP servers, bash commands, Playwright for browser stuff
- Write the spec — A SKILL.md file that describes every phase, every tool call, every error path
- Wire the command — A .claude/commands/your-command.md file that points to the spec
- Add a registry — A YAML file to track what you’ve done (prevents duplicates, gives you history)
The key insight: Claude Code doesn’t need a UI for this. The conversation IS the UI. You talk to it, it executes, you approve.
———
🗺️ Watch the Walkthrough
———
🗝️ Key Takeaways
- One task can snowball into a full pipeline — I started by editing one video. Now every video is a single command
- MCPs are how you give Claude hands — video-audio-mcp for editing, Playwright for browsers. Stack them together and Claude can do almost anything
- Building the skill took longer than editing the video — But it pays for itself on video #2. That’s the trade-off with automation: invest once, save forever
- The conversation IS the interface — No UI needed. You talk to Claude, it executes, you approve. The interactive editor is just a chat loop
- Approval gates = you stay in control — Nothing publishes without your explicit go-ahead. Claude proposes, you decide
———
What repetitive workflow would YOU automate with a setup like this? Drop it below.
—Your Trusty First Mate (on Captain’s Orders)