capcut-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CAPCUT_DRAFTS_DIR | No | Path to the CapCut Drafts folder. Auto-detected if not set, but set this if your drafts live elsewhere. | |
| CAPCUT_TEMPLATE_DRAFT | No | Name of a draft containing video and text layers used to harvest templates for adding text. Defaults to '0723' but that draft likely doesn't exist on your machine, so set this to one of your drafts or capcut_add_text won't work. | 0723 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| capcut_list_draftsA | List CapCut drafts in /root/Movies/CapCut/User Data/Projects/com.lveditor.draft with duration and lock status. |
| capcut_read_timelineA | Read a draft: canvas, fps, tracks and every segment (id, media, times, layer). Read-only. |
| capcut_clone_draftA | Copy a draft folder to a new name (valid scaffolding). empty:true clears all clips/tracks for a fresh build. |
| capcut_add_videoA | Add a video clip at a time on a track. Session edit; call capcut_save to persist. |
| capcut_add_imageC | Add an image at a time on a track. |
| capcut_add_audioC | Add an audio clip at a time on a track. |
| capcut_add_textB | Add a text overlay. Requires a text template (a draft with a text layer; see CAPCUT_TEMPLATE_DRAFT). |
| capcut_add_trackC | Add a new track (video | audio | text | sticker). |
| capcut_move_segmentB | Move a segment to a new start time and optionally another track. |
| capcut_trim_segmentB | Change a segment start / duration / source in-point (seconds). |
| capcut_split_segmentB | Split a segment into two at a timeline time. |
| capcut_delete_segmentC | Remove a segment. |
| capcut_set_propsC | Set transform / opacity / volume / speed / visibility on a segment. |
| capcut_raw_patchA | Advanced escape hatch: deep-merge a JSON patch into draft_content (undocumented ops). Use with care. |
| capcut_validateB | Check the (in-session) draft for overlaps, duplicate ids/render_index, missing media. |
| capcut_saveA | Write session edits to disk (backs up .mcpbak, validates). Refuses if CapCut is open unless force:true. |
| capcut_discardA | Drop unsaved session edits and reload the draft from disk. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Each tool has a clearly distinct function: listing, reading, cloning, adding different media types, manipulating segments (trim/move/split/delete), setting properties, validating, saving, and discarding. The add_* tools are distinguished by media type, and raw_patch is explicitly an advanced escape hatch.
Most tools follow a 'capcut_verb_noun' pattern (e.g., list_drafts, add_video, delete_segment), but a few deviate: validate, save, and discard are bare verbs, and raw_patch is adjective_noun. The prefix is consistent, so the inconsistency is minor.
17 tools is well-scoped for a video editing server, covering asset insertion, timeline manipulation, session management, and validation without feeling bloated. Each tool serves a necessary role in the editing workflow.
The surface covers the core lifecycle: reading, cloning, adding assets, editing segments, and saving/validating. Minor gaps exist (e.g., no direct draft deletion, no text content editing, no effect/transition tools), but raw_patch fills advanced needs, so agents can work around these.