Name | video-editor-mcp JSON |
Version |
0.1.47
JSON |
| download |
home_page | None |
Summary | Video Jungle MCP Server for Adding, Analysing, Searching, and Editing Videos |
upload_time | 2025-07-22 03:10:30 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.11 |
license | None |
keywords |
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Video Editor MCP server
[](https://www.video-jungle.com)
See a demo here: [https://www.youtube.com/watch?v=KG6TMLD8GmA](https://www.youtube.com/watch?v=KG6TMLD8GmA)
Upload, edit, search, and generate videos from everyone's favorite LLM and [Video Jungle](https://www.video-jungle.com/).
You'll need to sign up for an account at [Video Jungle](https://app.video-jungle.com/register) in order to use this tool, and add your API key.
[](https://badge.fury.io/py/video-editor-mcp)
## 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](https://app.video-jungle.com/profile/settings), and get your [API key](https://app.video-jungle.com/profile/settings). 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](https://smithery.ai/server/video-editor-mcp):
```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`
<details>
<details>
<summary>Published Server Configuration</summary>
```json
"mcpServers": {
"video-editor-mcp": {
"command": "uvx",
"args": [
"video-editor-mcp",
"YOURAPIKEY"
]
}
}
```
</details>
<summary>Development/Unpublished Servers Configuration</summary>
```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"
}
},
```
</details>
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
```
2. Build package distributions:
```bash
uv build
```
This will create source and wheel distributions in the `dist/` directory.
3. 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`
### Debugging
Since MCP servers run over stdio, debugging can be challenging. For the best debugging
experience, we strongly recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector).
You can launch the MCP Inspector via [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-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
```
Raw data
{
"_id": null,
"home_page": null,
"name": "video-editor-mcp",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "Kirk Kaiser <kirk@zothcorp.com>",
"download_url": "https://files.pythonhosted.org/packages/90/67/200f660248057886e492c8badb5c8e64abb152b0c5168e8d7319927b69c1/video_editor_mcp-0.1.47.tar.gz",
"platform": null,
"description": "# Video Editor MCP server\n\n[](https://www.video-jungle.com)\n\nSee a demo here: [https://www.youtube.com/watch?v=KG6TMLD8GmA](https://www.youtube.com/watch?v=KG6TMLD8GmA)\n\nUpload, edit, search, and generate videos from everyone's favorite LLM and [Video Jungle](https://www.video-jungle.com/).\n\nYou'll need to sign up for an account at [Video Jungle](https://app.video-jungle.com/register) in order to use this tool, and add your API key.\n\n[](https://badge.fury.io/py/video-editor-mcp)\n\n## Components\n\n### Resources\n\nThe server implements an interface to upload, generate, and edit videos with:\n- Custom vj:// URI scheme for accessing individual videos and projects\n- Each project resource has a name, description\n- Search results are returned with metadata about what is in the video, and when, allowing for edit generation directly\n\n### Prompts\n\nComing soon.\n\n### Tools\n\nThe server implements a few tools:\n- add-video\n - Add a Video File for analysis from a URL. Returns an vj:// URI to reference the Video file\n- create-videojungle-project\n - Creates a Video Jungle project to contain generative scripts, analyzed videos, and images for video edit generation\n- edit-locally\n - 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.) \n- generate-edit-from-videos\n - Generates a rendered video edit from a set of video files\n- generate-edit-from-single-video\n - Generate an edit from a single input video file\n- get-project-assets\n - Get assets within a project for video edit generation.\n- search-videos\n - Returns video matches based upon embeddings and keywords\n- update-video-edit\n - Live update a video edit's information. If Video Jungle is open, edit will be updated in real time.\n\n### Using Tools in Practice\n\nIn order to use the tools, you'll need to sign up for Video Jungle and add your API key.\n\n**add-video**\n\nHere's an example prompt to invoke the `add-video` tool:\n\n```\ncan you download the video at https://www.youtube.com/shorts/RumgYaH5XYw and name it fly traps?\n```\n\nThis 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.\n\n**search-videos**\n\nOnce you've got a video downloaded and analyzed, you can then do queries on it using the `search-videos` tool:\n\n```\ncan you search my videos for fly traps?\n```\n\nSearch results contain relevant metadata for generating a video edit according to details discovered in the initial analysis.\n\n**search-local-videos**\n\nYou 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.\n\nOnce that's done, you can search through your Photos app for videos that exist on your phone, using Apple's tags.\n\nIn my case, when I search for \"Skateboard\", I get 1903 video files.\n\n```\ncan you search my local video files for Skateboard?\n```\n\n**generate-edit-from-videos**\n\nFinally, you can use these search results to generate an edit:\n\n```\ncan you create an edit of all the times the video says \"fly trap\"?\n```\n\n(Currently), the video edits tool relies on the context within the current chat. \n\n**generate-edit-from-single-video**\n\nFinally, you can cut down an edit from a single, existing video:\n\n```\ncan you create an edit of all the times this video says the word \"fly trap\"?\n```\n\n## Configuration\n\nYou must login to [Video Jungle settings](https://app.video-jungle.com/profile/settings), and get your [API key](https://app.video-jungle.com/profile/settings). Then, use this to start Video Jungle MCP:\n\n```bash\n$ uv run video-editor-mcp YOURAPIKEY\n```\n\nTo allow this MCP server to search your Photos app on MacOS:\n\n```\n$ LOAD_PHOTOS_DB=1 uv run video-editor-mcp YOURAPIKEY\n```\n## Quickstart\n\n### Install\n\n#### Installing via Smithery\n\nTo install Video Editor for Claude Desktop automatically via [Smithery](https://smithery.ai/server/video-editor-mcp):\n\n```bash\nnpx -y @smithery/cli install video-editor-mcp --client claude\n```\n\n#### Claude Desktop\n\nYou'll need to adjust your `claude_desktop_config.json` manually:\n\nOn MacOS: `~/Library/Application\\ Support/Claude/claude_desktop_config.json`\nOn Windows: `%APPDATA%/Claude/claude_desktop_config.json`\n\n<details>\n<details>\n <summary>Published Server Configuration</summary>\n \n ```json\n \"mcpServers\": {\n \"video-editor-mcp\": {\n \"command\": \"uvx\",\n \"args\": [\n \"video-editor-mcp\",\n \"YOURAPIKEY\"\n ]\n }\n }\n ```\n</details>\n <summary>Development/Unpublished Servers Configuration</summary>\n \n ```json\n \"mcpServers\": {\n \"video-editor-mcp\": {\n \"command\": \"uv\",\n \"args\": [\n \"--directory\",\n \"/Users/YOURDIRECTORY/video-editor-mcp\",\n \"run\",\n \"video-editor-mcp\",\n \"YOURAPIKEY\"\n ]\n }\n }\n ```\n\n With local Photos app access enabled (search your Photos app):\n\n ```json\n \"video-jungle-mcp\": {\n \"command\": \"uv\",\n \"args\": [\n \"--directory\",\n \"/Users/<PATH_TO>/video-jungle-mcp\",\n \"run\",\n \"video-editor-mcp\",\n \"<YOURAPIKEY>\"\n ],\n \"env\": {\n\t \"LOAD_PHOTOS_DB\": \"1\"\n }\n },\n ```\n\n</details>\n\nBe sure to replace the directories with the directories you've placed the repository in on **your** computer.\n\n## Development\n\n### Building and Publishing\n\nTo prepare the package for distribution:\n\n1. Sync dependencies and update lockfile:\n```bash\nuv sync\n```\n\n2. Build package distributions:\n```bash\nuv build\n```\n\nThis will create source and wheel distributions in the `dist/` directory.\n\n3. Publish to PyPI:\n```bash\nuv publish\n```\n\nNote: You'll need to set PyPI credentials via environment variables or command flags:\n- Token: `--token` or `UV_PUBLISH_TOKEN`\n- Or username/password: `--username`/`UV_PUBLISH_USERNAME` and `--password`/`UV_PUBLISH_PASSWORD`\n\n### Debugging\n\nSince MCP servers run over stdio, debugging can be challenging. For the best debugging\nexperience, we strongly recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector).\n\n\nYou can launch the MCP Inspector via [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) with this command:\n\n(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.)\n\n```bash\nnpx @modelcontextprotocol/inspector uv run --directory /Users/YOURDIRECTORY/video-editor-mcp video-editor-mcp YOURAPIKEY\n```\n\n\nUpon launching, the Inspector will display a URL that you can access in your browser to begin debugging.\n\nAdditionally, I've added logging to `app.log` in the project directory. You can add logging to diagnose API calls via a:\n\n```\nlogging.info(\"this is a test log\")\n```\n\nA reasonable way to follow along as you're workin on the project is to open a terminal session and do a:\n\n```bash\n$ tail -n 90 -f app.log\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Video Jungle MCP Server for Adding, Analysing, Searching, and Editing Videos",
"version": "0.1.47",
"project_urls": {
"Homepage": "https://github.com/burningion/video-editing-mcp",
"Issues": "https://github.com/burningion/video-editing-mcp/issues"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "13bfc473630b4d02bc13639c30d285ee30ead4bcd9446abc43be356f020224ff",
"md5": "a2631f12fa7ac1af7ae87f7b83e49887",
"sha256": "558119b3f35d665218d92951c658125490ca69d348a9bcfce1855d94a7c28612"
},
"downloads": -1,
"filename": "video_editor_mcp-0.1.47-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a2631f12fa7ac1af7ae87f7b83e49887",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 31230,
"upload_time": "2025-07-22T03:10:27",
"upload_time_iso_8601": "2025-07-22T03:10:27.377405Z",
"url": "https://files.pythonhosted.org/packages/13/bf/c473630b4d02bc13639c30d285ee30ead4bcd9446abc43be356f020224ff/video_editor_mcp-0.1.47-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9067200f660248057886e492c8badb5c8e64abb152b0c5168e8d7319927b69c1",
"md5": "66fad51ef9bdb69e58f2d779008041ea",
"sha256": "93822842ccae463683b30382e9c315cd9c510c2250c526f2950bbc8c8a5ae031"
},
"downloads": -1,
"filename": "video_editor_mcp-0.1.47.tar.gz",
"has_sig": false,
"md5_digest": "66fad51ef9bdb69e58f2d779008041ea",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 8816615,
"upload_time": "2025-07-22T03:10:30",
"upload_time_iso_8601": "2025-07-22T03:10:30.757849Z",
"url": "https://files.pythonhosted.org/packages/90/67/200f660248057886e492c8badb5c8e64abb152b0c5168e8d7319927b69c1/video_editor_mcp-0.1.47.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-22 03:10:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "burningion",
"github_project": "video-editing-mcp",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "video-editor-mcp"
}