Media-Editor-MCP

Media-Editor-MCP

Provides MCP servers for AI-driven video editing. Enables offline editing of CapCut drafts and remote control of Adobe Premiere Pro via UXP plugin, with shared media analysis for beat detection and transcription.

Category
Visit Server

README

Media-Editor-MCP

A monorepo of MCP servers for AI-driven video editing, plus the shared media-analysis server they both rely on.

Packages

Package Lang What it is
packages/capcut-mcp Python / uv Edits CapCut drafts on disk (offline): clips, audio, text/captions, effects, filters, transitions.
packages/premiere-server TypeScript MCP server that drives Adobe Premiere Pro via a UXP plugin bridge.
packages/premiere-uxp-plugin TypeScript The UXP plugin loaded inside Premiere; the server talks to it over WebSocket.
packages/premiere-protocol TypeScript Shared message/types contract between the Premiere server and plugin.
packages/media-analysis Python / uv Editor-agnostic analysis: beat/energy detection, Whisper transcription, SRT, best-moments, stock fetch. Used by both editors.

Layout & tooling

Polyglot monorepo — unified by git, Claude skills, and one MCP config, not a single build:

  • TypeScript (premiere-*) uses npm workspaces (root package.json). Build: npm install && npm run build.
  • Python packages each keep their own uv venv — they are not a shared environment. media-analysis pulls Whisper/torch (heavy); capcut-mcp is light and must not inherit those deps.
  • capcut-mcp does not import media-analysis; it calls it as a separate MCP server. The only coupling is registration in .mcp.json.
.
├─ packages/
│  ├─ capcut-mcp/          (python/uv)   src/ccmcp
│  ├─ media-analysis/      (python/uv)   src/media_analysis
│  ├─ premiere-server/     (ts)          @ppmcp/server
│  ├─ premiere-uxp-plugin/ (ts)          @ppmcp/uxp-plugin
│  └─ premiere-protocol/   (ts)          @ppmcp/protocol
├─ .claude/skills/         cc-* (CapCut) and pp-* (Premiere) workflow skills
├─ .mcp.json.example       sanitized server registrations (copy to .mcp.json, add keys)
├─ package.json            npm-workspaces root (TS only)
└─ scripts/

History & contribution model

capcut-mcp and the Premiere stack were each imported once via git subtree add (then restructured into packages/). This monorepo is the single source of truth — the full history of both originals is preserved here in main.

  • Work on main. No subtrees, no submodules, no per-package branches.
  • Do not run git subtree pull/push against the old standalone repos. The Premiere code was moved out of its original _pp/ prefix, so the prefixes no longer align and a sync would corrupt the tree. Treat the original capcut/premiere repos as archived.
  • New work in any package is a normal commit here; there is nothing to sync upstream.

Setup

# TypeScript (Premiere) deps + build
npm install
npm run build

# Python servers — independent venvs (run once each)
uv sync --directory packages/capcut-mcp
uv sync --directory packages/media-analysis

# MCP registration: copy the template, add your Pexels/Pixabay keys
cp .mcp.json.example .mcp.json

Open Claude Code at this repo root so the relative paths in .mcp.json resolve. .mcp.json is gitignored (it holds API keys); share changes via .mcp.json.example.

Per-editor profiles (lighter context)

All three servers in .mcp.json load their tool schemas into every session (~12–18k tokens), but you never edit in CapCut and Premiere at once. Two slimmer profiles each load just one editor plus the shared media-analysis:

# CapCut session — skips Premiere's ~6–8k tokens of tool schemas
claude --strict-mcp-config --mcp-config .mcp.capcut.json

# Premiere session — skips CapCut's tool schemas
claude --strict-mcp-config --mcp-config .mcp.premiere.json

--strict-mcp-config makes Claude Code use only the named file, ignoring the default .mcp.json and user/global servers. Both profiles are gitignored (they hold API keys); copy the .mcp.capcut.json.example / .mcp.premiere.json.example templates and add your keys. Use plain .mcp.json (all servers) when you want everything loaded.

Per-package details: CapCut · Premiere.

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
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
Qdrant Server

Qdrant Server

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

Official
Featured