Video Editing Mcp

io.github.burningionPublished by GitHub account burningionv1.0.1Updated Nov 3, 2026

MCP Server for Video Jungle - Analyze, Search, Generate, and Edit Videos

VerifiedSTDIODesktop onlyKnowledge & MemoryMedia & Design

Overview

AI-generated overview

Connects an assistant to Video Jungle to upload, analyze, search and generate video edits, including OpenTimelineIO projects for DaVinci Resolve.

What you can do
  • Add videos from a URL to a Video Jungle library and analyze them for later retrieval
  • Create projects that hold analyzed videos, images and generative scripts
  • Search videos by embeddings and keywords, returning metadata about what appears and when
  • Generate rendered edits from one video or from a set of videos
  • Build an OpenTimelineIO project and download it for DaVinci Resolve Studio
  • Update an existing edit's information, reflected live when Video Jungle is open
When to use it
Useful when you want an assistant to work with a video library: pulling in clips from URLs, finding moments by spoken or visual content, and turning those results into rough cuts or Resolve timelines.
Requirements
Runs locally as a Python package (video-editor-mcp) launched with uv or uvx. Needs a Video Jungle account and API key, passed as the VJ_API_KEY environment variable or as a command argument. Network access to Video Jungle and to the video URLs being added. Optional Photos app search on macOS requires LOAD_PHOTOS_DB=1. DaVinci Resolve Studio must already be running for the local edit tool.
Before you install
The Video Jungle API key is a secret; keep it out of shared configs and logs. Adding a video downloads it from a URL and uploads it to Video Jungle for analysis, so content leaves your machine. Enabling LOAD_PHOTOS_DB grants the assistant access to your local Photos library. Tools create projects, generate rendered edits and update edits, which changes data in your account.

Installation

In SourceWeft

  1. Open Video Editing Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Video Editor MCP server

[Video Jungle MCP Server]

See a demo here: https://www.youtube.com/watch?v=KG6TMLD8GmA

Upload, edit, search, and generate videos from everyone's favorite LLM and Video Jungle.

You'll need to sign up for an account at Video Jungle in order to use this tool, and add your API key.

[PyPI version]

Components

Resources

The server implements an interface to upload, generate, and edit videos with:

  • Custom vj:// URI scheme for accessing individual videos and projects
  • Each project resource has a name, description
  • Search results are returned with metadata about what is in the video, and when, allowing for edit generation directly

Prompts

Coming soon.

Tools

The server implements a few tools:

  • add-video
    • Add a Video File for analysis from a URL. Returns an vj:// URI to reference the Video file
  • create-videojungle-project
    • Creates a Video Jungle project to contain generative scripts, analyzed videos, and images for video edit generation
  • edit-locally
    • Creates an OpenTimelineIO project and downloads it to your machine to open in a Davinci Resolve Studio instance (Resolve Studio must already be running before calling this tool.)
  • generate-edit-from-videos
    • Generates a rendered video edit from a set of video files
  • generate-edit-from-single-video
    • Generate an edit from a single input video file
  • get-project-assets
    • Get assets within a project for video edit generation.
  • search-videos
    • Returns video matches based upon embeddings and keywords
  • update-video-edit
    • Live update a video edit's information. If Video Jungle is open, edit will be updated in real time.

Using Tools in Practice

In order to use the tools, you'll need to sign up for Video Jungle and add your API key.

add-video

Here's an example prompt to invoke the add-video tool:

can you download the video at https://www.youtube.com/shorts/RumgYaH5XYw and name it fly traps?

This will download a video from a URL, add it to your library, and analyze it for retrieval later. Analysis is multi-modal, so both audio and visual components can be queried against.

search-videos

Once you've got a video downloaded and analyzed, you can then do queries on it using the search-videos tool:

can you search my videos for fly traps?

Search results contain relevant metadata for generating a video edit according to details discovered in the initial analysis.

search-local-videos

You must set the environment variable LOAD_PHOTOS_DB=1 in order to use this tool, as it will make Claude prompt to access your files on your local machine.

Once that's done, you can search through your Photos app for videos that exist on your phone, using Apple's tags.

In my case, when I search for "Skateboard", I get 1903 video files.

can you search my local video files for Skateboard?

generate-edit-from-videos

Finally, you can use these search results to generate an edit:

can you create an edit of all the times the video says "fly trap"?

(Currently), the video edits tool relies on the context within the current chat.

generate-edit-from-single-video

Finally, you can cut down an edit from a single, existing video:

can you create an edit of all the times this video says the word "fly trap"?

Configuration

You must login to Video Jungle settings, and get your API key. Then, use this to start Video Jungle MCP:

bash
$ uv run video-editor-mcp YOURAPIKEY

To allow this MCP server to search your Photos app on MacOS:

$ LOAD_PHOTOS_DB=1 uv run video-editor-mcp YOURAPIKEY

Quickstart

Install

Installing via Smithery

To install Video Editor for Claude Desktop automatically via Smithery:

bash
npx -y @smithery/cli install video-editor-mcp --client claude
Claude Desktop

You'll need to adjust your claude_desktop_config.json manually:

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

Published Server Configuration
json
 "mcpServers": {   "video-editor-mcp": {     "command": "uvx",     "args": [       "video-editor-mcp",       "YOURAPIKEY"     ]   } }
Development/Unpublished Servers Configuration
json
 "mcpServers": {   "video-editor-mcp": {     "command": "uv",     "args": [       "--directory",       "/Users/YOURDIRECTORY/video-editor-mcp",       "run",       "video-editor-mcp",       "YOURAPIKEY"     ]   } }

With local Photos app access enabled (search your Photos app):

json
  "video-jungle-mcp": {    "command": "uv",    "args": [      "--directory",      "/Users/<PATH_TO>/video-jungle-mcp",      "run",      "video-editor-mcp",      "<YOURAPIKEY>"    ],   "env": {        "LOAD_PHOTOS_DB": "1"    }  },

Be sure to replace the directories with the directories you've placed the repository in on your computer.

Development

Building and Publishing

To prepare the package for distribution:

  1. Sync dependencies and update lockfile:
bash
uv sync
  1. Build package distributions:
bash
uv build

This will create source and wheel distributions in the dist/ directory.

  1. Publish to PyPI:
bash
uv publish

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: --token or UV_PUBLISH_TOKEN
  • Or username/password: --username/UV_PUBLISH_USERNAME and --password/UV_PUBLISH_PASSWORD

MCP Server Registry

mcp-name: io.github.burningion/video-editing-mcp

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

(Be sure to replace YOURDIRECTORY and YOURAPIKEY with the directory this repo is in, and your Video Jungle API key, found in the settings page.)

bash
npx @modelcontextprotocol/inspector uv run --directory /Users/YOURDIRECTORY/video-editor-mcp video-editor-mcp YOURAPIKEY

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Additionally, I've added logging to app.log in the project directory. You can add logging to diagnose API calls via a:

logging.info("this is a test log")

A reasonable way to follow along as you're workin on the project is to open a terminal session and do a:

bash
$ tail -n 90 -f app.log

Source: README.md at commit fbe06dc

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.1LatestSep 16, 2026

Score

40% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

    Declare a license in the repository or the registry entry.