"Trim the dead air out of this interview and get it into Final Cut." Tell Claude Code that in a plain chat window today and you get an explanation of where Final Cut's panels are, not a cut. Tell it to an agent holding a real timeline instead, and the trims happen first, then the project leaves as a file Final Cut opens. Same request, different outcome, and the difference is what's on the other end of it.
Can Claude Code actually drive Final Cut Pro?
No, not directly. Claude Code is a command-line agent: it reads and writes files and runs commands, with no way to click a button inside Final Cut's window. That's true of every desktop NLE, but Final Cut makes the gap wider than some: it doesn't expose the kind of documented scripting API that lets an outside tool add a clip or trigger a render the way it can on an app built with one.
What's left, for Final Cut specifically:
- Community MCP servers that try to bridge Final Cut projects for an agent to call. These are third-party efforts, not Apple's, and with no official API underneath them, what they can safely touch is narrower than on a host that ships its own scripting hooks. Check exactly what one does before trusting it with a real project.
- Having Claude write a script or set of steps, which you then carry out by hand inside Final Cut. That keeps the editing decision with you; Claude is drafting instructions, not making the cut.
Neither gets Claude a timeline it can see, reason about and edit the way it edits code.
The route that gives Claude a real timeline
Shoty is a desktop video editor (Mac and Windows) with an agent chat built in. Pick Claude · my subscription in the model picker and the problem changes shape:
- Shoty runs the official
claudeCLI on your machine, signed in with your own Claude account. It never sees your token and charges no fee for the agent. - For each turn, Shoty opens a local MCP server and hands Claude tools: look at a frame, read and update the timeline, generate a shot, export. Every call shows up in the chat.
- The timeline is a text format (
.shoty), so Claude reads and edits a structure the way it edits code, instead of hoping a script lands correctly inside an app it can't see. - When the cut is done, Shoty exports FCPXML, the format Final Cut Pro was built to import, along with EDL and OpenTimelineIO for other hosts.
Claude never touches Final Cut in this flow. It edits a project Final Cut can later read, so the missing scripting API never becomes a blocker for the part Claude is doing.
1. Do the cut in Shoty, not in Final Cut
Ask for the rough cut, a VFX fix, the subtitle pass, whatever Claude is good at, while the project is still in Shoty.
Trim the dead air out of the first five minutes, keep room tone under the cuts, and add burned-in English subtitles.
2. Name what must not change
In the clip above, a rooftop at dusk replaces the sofa's background while the two people, their motion and the camera move don't change at all. That's the instruction pattern for any VFX fix before export:
Replace the background behind the two people with a rooftop at dusk. Keep them, their motion and the camera move exactly as they are.
3. Export for Final Cut
Export this project as FCPXML for Final Cut Pro.
EDL and OpenTimelineIO are options too, but FCPXML is the format built for this handoff.
4. Finish where you already work
Color, titles and the keyer work for green screen shots happen in Final Cut like they always have. Shoty's job ends at the cut and the AI shots; Final Cut's part doesn't change.
Where this still needs you
- Picking the beat. Claude finds every pause fast; which one actually lands is still an editor's call, and you can always grab the Shoty timeline and trim by hand.
- Reviewing generated shots. Anything Claude sends to a video model costs credits, so set the run mode to review if you want to approve shots before they render.
- Round-trips. If notes from the Final Cut side mean a shot needs to change again, that change happens back in Shoty, not through a script aimed at Final Cut.
Download the free Shoty editor and connect Claude Code from the model picker. For the general case across any host, see how to edit video with Claude, or for the same question about DaVinci Resolve, Claude Code DaVinci Resolve.