Skip to content

Claude Code Video Editing: Edit Videos With Claude Over MCP

Vu Nguyen··7 min read

Coding agents already write your app, run the tests and open the pull request. Then the release needs a demo video, and you’re back to dragging clips around a timeline by hand.

SmoothCapture, a Mac screen recorder and video editor, has an MCP server built in. Connect it to Claude Code, Codex, Cursor or any other MCP client and you can describe the video you want. The agent edits the real timeline in the editor: 3D devices, camera moves, titles, music, narration. It renders frames to check its own work, then exports.

This isn’t a concept demo. The film below was built by Claude Code over MCP, and this post shows the calls it made, including the two mistakes it caught and fixed.

Built by Claude Code driving SmoothCapture's MCP server: five shots from a Simulator recording and a web page screenshot.

What MCP adds to video editing

The Model Context Protocol is an open standard that lets AI agents use tools. An app describes what it can do, and any MCP client can call it.

Without MCP, an agent editing video has two bad options: write an FFmpeg command and hope, or click through an app’s UI with screen automation. With SmoothCapture’s MCP server, the agent works on the editor’s own timeline. Its edits are the same edits you’d make by hand, they appear live in the window, and you can change any of them afterwards.

What Claude can do in SmoothCapture

AreaWhat the agent can do
RecordList displays and windows, start and stop a recording, and get every click and keypress back with timestamps
TimelineTrim, split, cut ranges, reorder, change speed and insert slides, with up to 100 edits per batch as one undo step
3DPut a clip on a 3D iPhone, iPad, MacBook, iMac, Studio Display or Apple Watch, apply any of 40+ motion templates or place its own camera shots, and set lighting, shadows and depth of field
Titles and graphicsAnimated titles (which can sit behind the device) and 14 built-in graphics: title cards, feature cards, key metrics, testimonials, comparisons, keyboard shortcuts and more
AudioTranscribe speech, find silences, cut with the audio rippled, add music with ducking, detect beats and land camera moves on them
NarrationGenerate a voiceover with local voices on your Mac, or with your ElevenLabs account
CheckingRender a single frame, a contact sheet of many frames, or a short GIF of a range
ExportMP4, MOV or GIF up to 4K60, through the same Metal pipeline as the editor

Setup: three steps, about two minutes

1. Turn on command-line control

It’s off by default. Turn it on in Settings → General → Command-line control, or run:

"/Applications/SmoothCapture.app/Contents/MacOS/SmoothCapture" cli enable

2. Grant Screen Recording once (only for recording)

If the agent should record, allow SmoothCapture in System Settings → Privacy & Security → Screen Recording. Only a person can grant this, once. Editing footage you already have doesn’t need it.

3. Register the server with your agent

The server ships inside the app: no npm package, no Node runtime, no API key. It talks to the agent over stdio and opens no network port.

Claude Code:

claude mcp add smoothcapture -- /Applications/SmoothCapture.app/Contents/MacOS/SmoothCapture mcp

Codex:

codex mcp add smoothcapture -- /Applications/SmoothCapture.app/Contents/MacOS/SmoothCapture mcp

Cursor and other MCP clients:

{
  "mcpServers": {
    "smoothcapture": {
      "command": "/Applications/SmoothCapture.app/Contents/MacOS/SmoothCapture",
      "args": ["mcp"]
    }
  }
}

Start a new agent session and the SmoothCapture tools are there.

How the film was made

The brief

Make a short launch film from a Maps recording of the iOS Simulator and a screenshot of our homepage. Open on a MacBook lid opening on a desk, orbit and push into the phone, give a title its own shot, and end on the laptop with the tagline. 16:9, studio lighting.

The calls

Every shot followed the same four-call loop: open_project → edit_timeline → preview_frames → export_video. Here’s the real edit_timeline call for the title shot, as Claude Code sent it:

{
  "operations": [
    { "action": "setCanvas", "aspectRatio": "16:9" },
    { "action": "setAppearance", "clip": 0,
      "appearance": { "deviceFrame": "3D/iPhone_18_Pro_Glacier.sc3d" } },
    { "action": "updateClip", "clip": 0, "sourceEnd": 4.5 },
    { "action": "setEnvironment", "name": "studio_softbox_duo_2k.exr",
      "useAsBackground": true, "depthOfField": true },
    { "action": "applyMotionTemplate", "template": "handheld.stage-left",
      "startTime": 0, "replaceExisting": true },
    { "action": "addTitle", "text": "Film it in\nreal 3D.",
      "startTime": 0.8, "endTime": 4.5, "animation": "riseUp",
      "exit": "none", "layoutInFreeArea": true, "textColor": "#1C1917" }
  ]
}

Six operations, one batch, one undo step. (A later pass swapped this softbox lighting for Blue Studio to match the rest of the film.) The template parks the phone on the left, and layoutInFreeArea puts the title in the space it leaves.

It checks its own work

Before exporting, the agent asked for a contact sheet: eight frames across the shot, each labelled with its time and the blocks active at that moment. The first one showed a problem:

Contact sheet showing the title overlapping the iPhone after 3.8 seconds as the camera returns to center
First pass: at 3.81s the template's return move slides the phone back to the center, straight through the title.

The template holds its framing for 3.2 seconds, then eases home, and the 4.5-second clip ran into that return. The fix was one edit: trim the clip to 3.4 seconds and end the title with it. On the darker Blue Studio backdrop the title also needed to be white. Second pass:

Contact sheet after the fix: the title stays clear of the iPhone for the whole shot
After the fix: the phone holds its position and the title stays readable to the last frame.

The end card had the same kind of issue. A dark title was lost against the dark half of the backdrop and crossed the laptop lid, so the agent moved it to the top center. Neither problem shows up in the edit data. They only show up in pixels, which is why the preview tools exist.

Watch it work live

Here’s another real session, sped up: Claude Code builds a 3D clip in the open editor, then reworks it on request.

Claude Code editing in SmoothCapture over MCP. Every change lands on the visible timeline.

Prompts that work well

Agents edit best when you describe the result, not the steps:

  • “Cut the long pauses out of today’s recording”
  • “Put it on a 3D MacBook and land each camera move on the beat of music.mp3”
  • “Add a title card with the app name, then a stat card that says 87% finish onboarding”
  • “Make the phone bigger, switch to a warm cream background and export 1080p”
  • “Write a 20-second voiceover that explains the three steps and drop it in”
  • “Make a 9:16 version for Reels”

For a series of release videos, keep a short brief in your repo (device, lighting, music, length, brand colors) and point the agent at it. Every video then matches the last one.

You stay in control

  • Edits land in your open editor. Nothing renders in a hidden sandbox.
  • Every batch is one undo step. Press ⌘Z to step back through the agent’s work.
  • The project saves after each change, so closing the chat loses nothing.
  • Work alongside it. Tweak a zoom by hand, then ask the agent to carry on.
  • It stays on your Mac. The server is local and opens no network port. Nothing leaves your machine unless you choose ElevenLabs for the voice.

No chat needed: the CLI

Scripts, CI jobs and agents that only run shell commands get the same engine through a command-line tool with JSON output:

SC="/Applications/SmoothCapture.app/Contents/MacOS/SmoothCapture"
"$SC" cli record start --display 3
BUNDLE=$("$SC" cli record stop --json | jq -r '.data.bundlePath')
"$SC" cli project autozoom --path "$BUNDLE"
"$SC" cli export --path "$BUNDLE" --output demo.mp4 --preset 1080p30

There’s also a ready-made Claude Code skill for the record → smart zoom → style → export workflow. The install snippet is on the AI agents, MCP and CLI page.

What it costs

The MCP server and CLI are part of SmoothCapture, with no extra plan and no per-call fees. Recording and editing are free; exporting needs a license: $49 one-time for one Mac, or $10/month. Your agent’s own subscription is separate. See pricing.

FAQ

Can Claude edit videos?

Yes, with a tool to work through. Claude can’t change video pixels on its own, but connected to SmoothCapture over MCP it edits a real timeline: cutting, 3D devices, camera moves, titles, music, narration and export.

Which agents work with it?

Any client that speaks MCP over stdio, including Claude Code, Codex and Cursor. Agents that only run shell commands can use the CLI.

Does the agent see my screen?

No. It works through the MCP server: it reads the timeline, the transcript and the recorded clicks, and renders its own preview frames when it needs to look.

Is an agent’s export the same quality as mine?

Yes. Exports go through the same Metal render pipeline as the editor, with the same effects and quality.

Can it make 3D mockups from screenshots?

Yes. Ask it to put a screenshot on a 3D device with a camera template. To do it yourself instead, drop the image onto the editor: see 3D mockup generator for Mac, and for directing the camera, 3D product animation for apps.

Ready to create stunning app demos?

SmoothCapture makes it easy to record your screen with 3D device frames, cinematic cursor effects, and professional editing tools.

Featured on TinyShelfFazier badgeFeatured on Twelve ToolsListed on Turbo0Featured on SaaSCitySmoothCapture on Nick LaunchesFeatured on neeed.directorySmoothCapture on Better LaunchFeatured on Findly.toolsSmoothCapture - Featured on Startup FameHuzzler Embed BadgeSmoothCapture — Featured on Smol LaunchSmoothCapture is featured on MacBaseLaunched on LaunchBoard - Product Launch PlatformFeatured on LaunchItSmoothCapture is featured on SpacerrAppsSmoothCapture on Mac App IndexListed on MacPip