Playhead vs claude-video — MCP server or Skill?

claude-video is a free, MIT-licensed Agent Skill that installs yt-dlp and ffmpeg on your machine, downloads a video, picks frames with scene detection and hands them to Claude — with Whisper transcription through a Groq or OpenAI key you supply. Playhead does the same job as a hosted service instead: nothing installs, the timestamp is burned into every frame, every response states what it covered, and the same engine is reachable from a REST API and a TypeScript SDK as well as from a chat.

Last updated

What claude-video is better at

First, because a comparison that opens with our own advantages is an advertisement rather than a comparison.

  • Free and MIT-licensed, with no account and no credits to think about.
  • The video never leaves your machine, which matters for footage under NDA.
  • Installs into 50+ agent hosts through the skills ecosystem, not only MCP clients.
  • Frame deduplication drops near-identical frames before they cost you tokens — a genuinely smart touch.
  • Four clear modes, including a transcript-only one that extracts no frames at all.

Their repository: github.com/bradautomates/claude-video. Everything claimed about it on this page comes from that README, read on 6 August 2026.

What it is, and where it runs

What it is, and where it runs — Playhead compared to claude-video
CapabilityPlayheadclaude-video
Runs without installing anything on your machineYesffmpeg, yt-dlp and transcription run on our servers. You connect a URL.Noclaude-video needs yt-dlp and ffmpeg on the machine it runs on. It installs them for you on first run, but they have to be installable there.
Works without your own transcription API keyYesTranscription is included in a credit. There is no second vendor to sign up with.PartlyCaptions are free when the video has them. Without them claude-video needs a Groq or OpenAI key of your own, billed to you separately.
Works from Claude on a phoneYesA remote connector runs nowhere near your device, so the same connection follows you from the laptop to the iOS and Android apps.Not documentedclaude-video's README documents Claude Code, claude.ai and desktop CLIs. Mobile is not mentioned either way.

What it can look at

What it can look at — Playhead compared to claude-video
CapabilityPlayheadclaude-video
Timestamp burned into the pixels of every frameYesEvery tile carries its time in a strip above the picture. A model cannot lose track of which frame it is looking at, and cannot invent a time for one.NoFrames are passed as files and the times live in the surrounding text, which is a separate thing the model has to keep aligned.
States what it covered and where the gaps areYesEvery response carries a coverage object: covered seconds, whether that was the whole video, every second it was not, and where to resume.NoFrame caps thin coverage out silently on longer videos. The README warns about it; the output does not.
30 fps inspection, frames 33 ms apartYesThe motion level puts two consecutive frames on a sheet at full size — the level at which easing curves and dropped frames become visible.NoSampling is scene-driven and capped by frame count, so consecutive-frame comparison is not a mode it has.
SMPTE timecode from camera and edit-suite mastersYesWhen a file carries timecode, every tile is stamped with it in blue beside the elapsed time in yellow — the clock an editor's notes and the NLE are already in.NoElapsed seconds only, which is the right unit for a TikTok and the wrong one for a shoot.
Broadcast and production containersYesMXF (XAVC, XDCAM, AVC-Intra, DNxHD), ProRes MOV, GXF, LXF, TS and DV. Camera raw is refused by name with the export to make instead, rather than failing obscurely.PartlyWhatever the local ffmpeg build happens to decode. Undocumented, and it varies by machine.
Photo carousels (TikTok photo mode, Instagram)Yesyt-dlp refuses these outright, so we ship our own extractor. Slides become one frame per second — second 0 is slide 1 — and the response says so rather than implying a duration.NoInherits yt-dlp's refusal, since that is what does the downloading.
Meta Ad Library linksYesA facebook.com/ads/library link is a video like any other, which is what makes competitor-ad teardowns a normal call rather than a workaround.Not documentedNot mentioned. yt-dlp's generic extractor may or may not reach a given ad.

What it measures

What it measures — Playhead compared to claude-video
CapabilityPlayheadclaude-video
Cut times returned as numbersYesscene_cuts is a list of seconds, with pacing alongside it — segment count, median and shortest segment, cuts per minute.PartlyScene detection runs, but it is used to choose which frames to keep. The cut times themselves are not part of the output.
Transitions classified, not counted as cutsYesDissolves, fades, dips, wipes and whip-blurs are detected on a longer baseline and named. Without that, a film with six dissolves reads as six extra cuts and its pacing comes back too fast.NoScene detection runs on neighbouring frames, where a dissolve is six times under the threshold. There is no separate transition pass, and none is claimed.
Freezes, black frames and silence detectedYesOne decode produces freezes, black frames, silence gaps and loudness together — the checks a render QA pass is made of.NoBuilt for understanding a video's content rather than checking a file, so these detectors are outside what it sets out to do.
Sees what happened between the sampled framesYesA separate pass reads every frame at 32x32 grayscale, so a one-frame flash, a three-frame cut and a half-percent-per-second push-in are found even though no sheet shows them.NoAnalysis is limited to the frames that were extracted. What fell between them is not represented.
Says whether the audio was speech at allYesMusic scored over a video transcribes into fluent sentences nobody said. The response reports that assessment instead of handing back lyrics as dialogue.NoWhisper output is returned as the transcript either way.

Building on it

Building on it — Playhead compared to claude-video
CapabilityPlayheadclaude-video
Callable from your own code, not just from a chatYesA REST API, a typed TypeScript SDK, and an OpenAPI 3.1 spec for generating a client in any language.Noclaude-video is a skill invoked by an agent. There is no HTTP API behind it to call from a backend job.
Asynchronous jobs, webhooks and idempotency keysYesLong work queues and returns a job id; a webhook fires when it settles; replaying an idempotency key returns the first result rather than charging twice.NoSynchronous, in the agent's turn.
Methods for recurring jobs, offered as commandsYesSeven playbooks — ad teardowns, hook analysis, caption audits, accessibility passes, brand checks, render QA, SOPs — registered as MCP prompts, so a client shows them before anyone has described their problem.PartlyThe skill's own instructions are its method, and it is a good one. There is one, for the job it was built for.

Running it

Running it — Playhead compared to claude-video
CapabilityPlayheadclaude-video
Free and open sourcePartlyThe MCP client and the SDK are MIT. The engine is a hosted service: 60 credits a month free, then paid.Yesclaude-video is MIT-licensed and costs nothing to run.
Video never leaves your machineNoThe hosted service downloads and processes on our infrastructure. An on-premise deployment exists for enterprise, but the hosted product does not run locally.Yesclaude-video downloads and processes locally. For footage under NDA that is a real advantage and not a small one.
Repeat questions about the same window are discountedYesA window already paid for costs 20% of the original, so an agent exploring a video iteratively is not billed as though every pass were the first.YesNothing is billed at all — it runs on your hardware.
Team seats, shared balance and an audit trailYesOrganizations, invites, a shared credit pool and a per-job ledger.NoA skill installed per machine. Nothing to share and nothing to audit.

The verdict

Which is to say: what actually decides it, rather than which row count is higher.

The dividing line is not quality, it is where the work happens. A skill that shells out to ffmpeg needs a machine with ffmpeg on it, which decides everything downstream: it cannot be a connector you add on a phone, it cannot be called by a backend job at three in the morning, and it cannot be shared with a team as one account. Playhead moved the work to a server so that all three become possible — and paid for that with a bill and with your video leaving your machine. If neither of those matters to you, claude-video is a very reasonable choice.

If none of that applies — if you want it on a phone, in a backend job, or shared with a team — the quickstart is two minutes and the free tier needs no card.