CapCut MCP Server

CapCut MCP Server

Enables AI assistants to fully control CapCut video editing projects, including creating projects, importing media, adding text/subtitles, managing audio, and editing timelines.

Category
Visit Server

README

🎬 CapCut MCP Server

An MCP (Model Context Protocol) server that gives AI assistants full control over CapCut video editing projects. Create projects, import media, add text/subtitles, manage audio, and edit timelines — all through AI-powered tools.

How It Works

AI Assistant  ──MCP Protocol──▶  CapCut MCP Server  ──Read/Write JSON──▶  CapCut Draft Files
                                  (Python/FastMCP)                          (draft_content.json)

CapCut stores every project as a folder with a draft_content.json file. This MCP server reads and writes those files directly. You edit via the AI, then open the project in CapCut to preview and export.

Quick Start

1. Install

# Clone your repository
git clone https://github.com/baizo7/capcut_MCP_server-.git
cd capcut_MCP_server-

# Using pip
pip install -e ".[cli]"

# Or using uv (recommended)
uv pip install -e .

2. Configure your MCP client

Gemini IDE / Antigravity

On Windows, open your Gemini MCP configuration file located at: %USERPROFILE%\.gemini\config\mcp_config.json

Add this to your mcpServers object:

{
  "mcpServers": {
    "capcut": {
      "command": "python",
      "args": ["-m", "capcut_mcp.server"],
      "env": {
        "CAPCUT_DRAFTS_PATH": "C:\\Users\\LENOVO\\AppData\\Local\\CapCut\\User Data\\Projects\\com.lveditor.draft"
      }
    }
  }
}

Note: After saving, restart the IDE for the new server to boot up.

Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "capcut": {
      "command": "python",
      "args": ["-m", "capcut_mcp.server"]
    }
  }
}

Cursor IDE

Add to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "capcut": {
      "command": "python",
      "args": ["-m", "capcut_mcp.server"]
    }
  }
}

3. Start editing!

Once configured, your AI assistant can use commands like:

  • "Create a new TikTok project called 'Summer Vibes'"
  • "Import all videos from D:\footage\vacation and add them to the timeline"
  • "Add subtitles: 'Hello!' at 0-2s and 'Welcome!' at 2-5s"
  • "Trim the first clip to start at 3 seconds"

🛑 Important Limitations & Workarounds

1. Windows Store Python Sandbox

If you are running the MCP server using Python installed from the Microsoft Store (which is common in Gemini IDE and Cursor), Windows automatically sandboxes writes to AppData\Local.

  • The Issue: The AI will create projects perfectly, but Windows hides them from CapCut.
  • The Fix: We built an automatic "Sandbox Escape" into the server using PowerShell! However, for best results, we highly recommend changing CapCut's default save location (Settings -> Project -> Save to) to your Documents folder, and updating your CAPCUT_DRAFTS_PATH environment variable to match it.

2. CapCut Does Not "Hot-Reload"

Because we are editing the raw JSON save files on your hard drive behind CapCut's back, CapCut does not instantly update its screen while you are actively editing a timeline.

  • To see changes: You must click the "X" in CapCut to return to the Home screen, then click the project again to force CapCut to reload the timeline from the hard drive.
  • For new projects: Simply switch tabs (e.g., from "Space" to "Home") to refresh the project list.

Configuration

Environment Variable Description Default
CAPCUT_DRAFTS_PATH Path to your CapCut drafts folder Auto-discovered

Auto-discovery

The server automatically checks these locations for CapCut projects:

  • %LOCALAPPDATA%\CapCut\User Data\Projects\com.lveditor.draft
  • %LOCALAPPDATA%\CapCut\User Data\Drafts

Available Tools (25+)

📁 Project Management

Tool Description
list_projects List all CapCut projects on this computer
get_project_info Detailed project info: tracks, materials, segments
create_project Create a new empty project (with canvas presets)
duplicate_project Clone a project as a template
delete_project Delete a project (requires confirmation)
list_canvas_presets Show available canvas sizes (landscape, portrait, etc.)

🎥 Media Import

Tool Description
add_video Import a video file to the timeline
add_image Add an image as a still clip
add_media_batch Batch-import all media from a folder
list_materials List all assets in a project
remove_material Remove an asset and its timeline clips

📝 Text & Subtitles

Tool Description
add_text Add a text overlay at a specific time
add_subtitles Bulk-add subtitles from a structured list
update_text_style Change font, color, size, alignment
update_text_content Change the text content

🔊 Audio

Tool Description
add_audio Add background music or sound effects
set_volume Adjust volume of a specific clip
mute_track Mute all clips on a track
unmute_track Restore volume on a muted track

✂️ Timeline Editing

Tool Description
trim_clip Trim a clip's start/end point
split_clip Split a clip into two parts at a timestamp
move_clip Move a clip to a new timeline position
delete_clip Remove a clip from the timeline
reorder_clips Arrange clips sequentially with optional gaps
set_clip_speed Change playback speed (slow-mo, fast-forward)

Safety Features

  • Automatic backups: Every edit creates a .backup of the draft before modifying
  • Non-destructive: Delete operations require explicit confirmation
  • Validation: All file paths are verified before import

Development

# Install in development mode
pip install -e ".[dev]"

# Run tests
python -m pytest tests/ -v

# Test with MCP Inspector (browser-based)
npx -y @modelcontextprotocol/inspector python -m capcut_mcp.server

Important Notes

⚠️ Unofficial: This server reverse-engineers CapCut's project format. It is not affiliated with ByteDance.

⚠️ Backups: The server automatically backs up projects before modification, but always keep your own backups of important projects.

⚠️ ffprobe: For accurate video/audio duration detection, install FFmpeg and ensure ffprobe is on your PATH. Without it, the server uses default duration estimates.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured