capcut-mcp
This server enables AI agents to fully automate CapCut Pro video editing by programmatically creating and manipulating drafts via a Model Context Protocol (MCP) interface.
Create drafts (
capcut_create_draft): Initialize projects with custom dimensions (HD, 4K, vertical 9:16) and frame rates (24β120 fps).Add video clips (
capcut_add_video): Insert video with cut editing, speed control, volume adjustment, and transitions (fade, dissolve, wipe, slide, zoom).Add audio tracks (
capcut_add_audio): Insert music or sound effects with volume control and fade in/out.Add text overlays (
capcut_add_text): Create styled text with custom fonts, colors, size, shadow, background, positioning, and animations (fade, slide, zoom, bounce).Add images (
capcut_add_image): Place image overlays with positioning, scaling, rotation, and animation effects.Add subtitles (
capcut_add_subtitle): Import SRT-format subtitles with font, color, size, and background styling β including CJK/multilingual font support.Add keyframe animations (
capcut_add_keyframe): Animate properties (scale, opacity, rotation, position) by interpolating between keyframes for smooth zoom-in/out and other effects.Apply visual effects (
capcut_add_effect): Add blur, sharpen, brightness, contrast, saturation, vignette, grain, and glitch with adjustable intensity.Add stickers (
capcut_add_sticker): Insert decorative sticker or emoji overlays with positioning, scale, and rotation control.Save drafts (
capcut_save_draft): Export the project as a CapCut-compatible draft folder ready to import into the CapCut desktop app.Get media metadata (
capcut_get_duration): Retrieve duration, format, and resolution from video or audio files before editing.
Integrates with CapCut, ByteDance's professional video editing software, enabling automated video creation and editing workflows including adding video clips, audio, text, images, effects, subtitles, keyframes, and saving drafts.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@capcut-mcpCreate a new 1080p draft for my travel video"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π¬ CapCut MCP Server (Upgraded by Antigravity)
μ΄ νλ‘μ νΈλ CapCut Pro μμ νΈμ§μ AI μμ΄μ νΈκ° μλ²½νκ² μλνν μ μλλ‘ μ§μνλ Model Context Protocol (MCP) μλ²μ λλ€. κΈ°μ‘΄ μ€νμμ€ κΈ°λ° μμ **μ°λ¦¬ ν(Antigravity & Luca Agent)**μ νμμ λ§μΆ° λ λλ§ νμ΄νλΌμΈ, μμμκΆ ν°νΈ μ§μ λ° νΈλμ§μ μ²λ¦¬ λ‘μ§μ λν μ κ·Έλ μ΄λνμ΅λλ€! π
⨠무μμ΄ μ κ·Έλ μ΄λ λμλμ? (Antigravity's Touch)
VectCutAPI μμ μ± κ·Ήλν π οΈ
Python κΈ°λ°μ λ‘컬 λ λλ§ μλ²μΈ
VectCutAPIλ₯Ό λ΄μ₯νκ³ ,save_draft_impl.pyλ±μ μ μ₯ λ‘μ§μ κ°μ νμ¬ μΊ‘μ»· μ΄μ(Draft)μ΄ μμ νκ² μ¬μ©μ ν΄λμ κ½νλλ‘ μμ νμ΅λλ€.
λ€κ΅μ΄(CJK) ν°νΈ μλ²½ μ§μ π
κΈ°λ³Έ
Systemν°νΈ μλ¬λ₯Ό ν΄κ²°νκ³ ,SourceHanSansCN_Regularλ± λ€κ΅μ΄/νκΈ μ§μ ν°νΈλ₯Ό λ§€ννμ¬ μλ§ κΉ¨μ§ μμ΄ κΉλνκ² μΆλ ₯λλλ‘ ν°νΈ μμ§μ μ κ·Έλ μ΄λνμ΅λλ€.
κ³ κΈ νΈλμ§μ λ° ν€νλ μ λ³΄κ° π
Dissolve,Mixλ± μΊ‘μ»· κ³ μ μ λμλ¬Έμ κ΅¬λΆ νΈλμ§μ μλ¬λ₯Ό ν΄κ²°νκ³ , μ€μΈ/μ€μμ λ±add_video_keyframeμ νμ©ν λ―ΈμΈ μ λλ©μ΄μ μ μ΄λ₯Ό κ°ννμ΅λλ€.
μ νλΈ μΌμΈ μλν μ΅μ ν π±
9:16 λΉμ¨(μΈλ‘ν) λ λλ§ λ° λμ‘ΈλΈ νΈλμ§μ μ μλ μ μ©νμ¬ μμμ λ§μΆ° μ΄λ―Έμ§λ₯Ό λ‘€λ§νλ μ νλΈ νμ΄νλΌμΈμ μ΅μ νλμμ΅λλ€.
Related MCP server: iMovie MCP Server
π μμνκΈ° (Installation & Setup)
CapCut MCPλ 2λ¨κ³ κ΅¬μ‘°λ‘ μ€νλ©λλ€. Python μλ²(VectCutAPI)κ° μΊ‘μ»· μ΄μμ λ§λ€κ³ , Node.js μλ²(MCP)κ° μμ΄μ νΈμ μν΅ν©λλ€.
1. Python λ°±μλ μ€ν (VectCutAPI)
cd VectCutAPI
pip install -r requirements.txt
python capcut_server.pyκΈ°λ³Έμ μΌλ‘
http://localhost:9000(λλ 9001)μμ λκΈ°ν©λλ€.
2. Node.js MCP μλ² μ°κ²°
μν°κ·ΈλλΉν° mcp_config.jsonμ λ€μ μ€μ μ μΆκ°νλ©΄ μμ΄μ νΈκ° μλμΌλ‘ μΈμν©λλ€.
{
"mcpServers": {
"capcut-mcp": {
"command": "node",
"args": ["C:/Users/User/Documents/capcut-mcp/dist/index.js"],
"env": {
"CAPCUT_API_URL": "http://localhost:9000"
}
}
}
}π οΈ μ 곡λλ λꡬ (Available Tools)
AI μμ΄μ νΈλ λ€μ 11κ°μ§ λꡬλ₯Ό ν΅ν΄ λΉλμ€λ₯Ό νλ‘κ·Έλλ° λ°©μμΌλ‘ νΈμ§ν©λλ€.
capcut_create_draft: μλ‘μ΄ νλ‘μ νΈ μ΄μ μμ± (HD, 4K, μΈλ‘ν λ±)capcut_add_video: μμ μΆκ° λ° μ»·νΈμ§, λ°°μ, λ³Όλ₯¨ μ‘°μ capcut_add_audio: λ°°κ²½μμ , BGM λ° νμ΄λμΈ/μμ μ μ©capcut_add_text: νμ΄ν, ν μ€νΈ μΆκ° (μμ, κ·Έλ¦Όμ, μ λλ©μ΄μ )capcut_add_image: μ΄λ―Έμ§ μΆκ° λ° λ°°μΉ (ν¬κΈ°, νμ )capcut_add_subtitle: SRT νμμ μλ§ μλ μμ± λ° μ±ν¬ λ§€νcapcut_add_keyframe: λΆλλ¬μ΄ μ€μΈ/μ€μμ λ± ν€νλ μ μ λλ©μ΄μ μμ±capcut_add_effect: λΈλ¬, λΉλ€ν λ± νλ©΄ μ΄ννΈ μΆκ°capcut_add_sticker: μ€ν°μ»€ λ° μ΄λͺ¨μ§ μ½μcapcut_save_draft: μλ£λ νλ‘μ νΈλ₯Ό μΊ‘μ»· λ°μ€ν¬ν μ±μΌλ‘ μΆμΆcapcut_get_duration: μμ/μμμ μ νν κΈΈμ΄(λ©νλ°μ΄ν°) νμΈ
π μλν μμ (Workflow Example)
# μμ΄μ νΈ νμ΄νλΌμΈ λμ μμ
draft = req("/create_draft", {"width": 1080, "height": 1920}) # μΈλ‘ν μΌμΈ
req("/add_audio", {"draft_id": draft["draft_id"], "audio_url": "music.wav", "start": 0, "end": 60})
req("/add_image", {"draft_id": draft["draft_id"], "image_url": "scene.png", "transition": "Dissolve"})
req("/add_subtitle", {"draft_id": draft["draft_id"], "srt": "lyrics.srt", "font": "SourceHanSansCN_Regular"})
req("/save_draft", {"draft_id": draft["draft_id"]})π Acknowledgments
Based on the original VectCutAPI framework.
Upgraded and Maintained by the Antigravity & Luca Agent Team for hyper-automated video production.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/eery1677-lab/capcut-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server