# fcpxml-mcp-server

> 🎬 The first AI-powered MCP server for Final Cut Pro XML. Control your edits with natural language.

- **URL**: https://www.freshcrate.ai/projects/fcpxml-mcp-server
- **Author**: DareDev256
- **Category**: MCP Servers
- **Latest version**: `v0.7.0` (2026-05-02)
- **License**: MIT
- **Source**: https://github.com/DareDev256/fcpxml-mcp-server
- **Language**: Python
- **GitHub**: 38 stars, 5 forks
- **Registry**: github
- **Tags**: `ai`, `anthropic`, `claude`, `fcpxml`, `final-cut-pro`, `mcp`, `model-context-protocol`, `python`

## Description

🎬 The first AI-powered MCP server for Final Cut Pro XML. Control your edits with natural language.

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v0.7.0` | 2026-05-02 | High | ## What's Changed  ### Security - Hardened XML parsing with explicit `defusedxml` flags and integration tests - Added JSON depth limit and minidom pretty-print path hardening  ### Bug Fixes - Fixed `delete_clip` corrupting index on duplicate clip names - Fixed `add_marker_at_timeline` targeting wrong clip on duplicate names - Fixed `auto_at_intervals` silent marker loss on duplicate clip names - Fixed `auto_at_cuts` crash on duplicate clip names - Fixed `rapid_trim` silently ignoring `min_durati |
| `v0.6.0` | 2026-03-05 | Low | ## What's New  8 features, 6 new MCP tools (47→53), 70 new tests (501→571)  ### New Tools - `list_effects` — List available FCP transition effects with UUIDs - `add_audio` — Add audio clips or music beds with hierarchical roles - `create_compound_clip` — Group timeline clips into compound clips - `flatten_compound_clip` — Flatten compound clips back to individual clips - `list_templates` — List available timeline templates with slot definitions - `apply_template` — Fill a template with clips to |
| `v0.5.29` | 2026-03-03 | Low | ## Fixed  - **Transition effect resources** — Each `<transition>` now includes `<filter-video ref="...">` pointing to a proper `<effect>` resource with FCP's built-in Cross Dissolve UUID (`4731E73A-8DAC-4113-9A30-AE85B1761265`) - **LCM-based TimeValue arithmetic** — `__add__`/`__sub__` use LCM for cross-denominator math, keeping standard timebases (2400 instead of 57600) - **Frame-boundary snapping** — `change_speed()` snaps durations to nearest frame in 2400-tick timebase  ## Discovered  - **St |
| `v0.5.28` | 2026-03-03 | Low | ## Fixed  - **DTD child element ordering** — `_dtd_insert()` helper ensures `timeMap`/`adjust-conform` precede markers per FCPXML DTD spec - **Rational time values** — `TimeValue.to_fcpxml()` only simplifies to standard FCPXML timebases (2400, 30, 24, etc.), preventing rejected fractions like `8/3s` - **Fraction-based speed math** — `change_speed()` produces exact rational results instead of floating-point approximations - **String marker_type accepted** — `add_marker()` auto-converts strings li |
| `v0.5.0` | 2026-02-21 | Low | ## What's New  6 major features, 13 new tools → **47 total**.  ### Connected Clips & Compound Clips - Full multi-track support — parser extracts B-roll, titles, and audio from secondary lanes, `<storyline>` elements, and gap-attached clips - `list_connected_clips`, `add_connected_clip`, `list_compound_clips`  ### Roles Management - List, assign, filter, and export audio/video roles for mixing workflows - `list_roles`, `assign_role`, `filter_by_role`, `export_role_stems`  ### Timeline Diff - Comp |
| `v0.4.0` | 2026-02-05 | Low | ## What's New  ### MCP Prompts — Pre-built Workflows 5 ready-to-use workflows that chain tools together. Select them from Claude's prompt menu:  \| Prompt \| What It Does \| \|--------\|-------------\| \| **qc-check** \| Full quality control — flash frames, gaps, duplicates, health score \| \| **youtube-chapters** \| Extract chapter markers formatted for YouTube descriptions \| \| **rough-cut** \| Guided rough cut — shows available clips, suggests structure, generates \| \| **timeline-summary** \| Quick overview |
| `v0.3.0` | 2026-01-20 | Low | ## The ultimate speed editor: detect issues, fix them instantly, generate montages  ### Speed Cutting Analysis (4 new tools) - `detect_flash_frames` — Find ultra-short clips with severity levels (critical < 2 frames, warning < 6 frames) - `detect_duplicates` — Find clips using the same source media - `detect_gaps` — Find unintentional gaps in the timeline - `validate_timeline` — Comprehensive health check with score (0-100%)  ### Speed Cutting Write (3 new tools) - `fix_flash_frames` — Auto-fix |
| `v0.1.0` | 2026-01-20 | Low | ## The First AI-Powered MCP Server for Final Cut Pro 🎬  Analyze timelines, add markers, extract data — all through natural language conversation with Claude.  ### Read Tools (10)  \| Tool \| Description \| \|------\|-------------\| \| `list_projects` \| Find all FCPXML files in a directory \| \| `analyze_timeline` \| Get comprehensive stats on duration, resolution, pacing \| \| `list_clips` \| List all clips with timecodes, durations, keywords \| \| `list_markers` \| Extract markers with timestamps (YouTube cha |
| `v0.2.0` | 2026-01-20 | Low | ## What's New  Full creative control over your timeline — trim, reorder, speed, split, delete, and auto-generate rough cuts.  ### New Write Tools (8)  \| Tool \| Description \| \|------\|-------------\| \| `trim_clip` \| Adjust in/out points with optional ripple \| \| `reorder_clips` \| Move clips to new timeline positions \| \| `add_transition` \| Add cross-dissolve, fade, wipe between clips \| \| `change_speed` \| Slow motion or speed up clips \| \| `delete_clips` \| Remove clips with optional ripple \| \| `split_c |
| `v0.2.1` | 2026-01-20 | Low | ## What's New  Insert clips from your library onto the timeline — the missing link between source media and your edit.  ### New Tools  \| Tool \| Description \| \|------\|-------------\| \| `list_library_clips` \| List all source clips available in the library (assets not yet on timeline) \| \| `insert_clip` \| Insert a library clip onto the timeline at any position \|  ### `insert_clip` Features  - **Position options:** `start`, `end`, timecode (e.g., `00:01:25:00`), or `after:clip_name` - **Subclip suppor |

## Citation

- HTML: https://www.freshcrate.ai/projects/fcpxml-mcp-server
- Markdown: https://www.freshcrate.ai/projects/fcpxml-mcp-server.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/fcpxml-mcp-server/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
