MCP server for Kdenlive video editor automation
Project description
kdenlive-mcp
MCP (Model Context Protocol) server for Kdenlive video editor automation. Enables AI assistants like Claude to control Kdenlive through natural language.
Installation
pip install kdenlive-mcp
Or with uv:
uv tool install kdenlive-mcp
Requirements
- Python 3.11+
- Kdenlive with WebSocket RPC server (requires kdenlive-websocket fork)
- Kdenlive must be running before starting the MCP server
Quick Start
-
Start Kdenlive (with RPC server enabled)
-
Configure your MCP client (see below)
-
Start using AI to control Kdenlive!
MCP Client Configuration
Claude Desktop
Add to your Claude Desktop configuration file:
Linux (~/.config/claude/claude_desktop_config.json):
{
"mcpServers": {
"kdenlive": {
"command": "kdenlive-mcp"
}
}
}
Windows (%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"kdenlive": {
"command": "kdenlive-mcp"
}
}
}
macOS (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"kdenlive": {
"command": "kdenlive-mcp"
}
}
}
With Custom Configuration
{
"mcpServers": {
"kdenlive": {
"command": "kdenlive-mcp",
"env": {
"KDENLIVE_WS_URL": "ws://localhost:9876",
"KDENLIVE_AUTH_TOKEN": "your-secret-token"
}
}
}
}
Using uvx (no installation required)
{
"mcpServers": {
"kdenlive": {
"command": "uvx",
"args": ["kdenlive-mcp"]
}
}
}
Environment Variables
| Variable | Description | Default |
|---|---|---|
KDENLIVE_WS_URL |
WebSocket URL to Kdenlive RPC server | ws://localhost:9876 |
KDENLIVE_AUTH_TOKEN |
Bearer token for authentication | None |
Available Tools
The MCP server exposes 60+ tools for controlling Kdenlive:
Project Management
project_get_info- Get current project informationproject_open- Open a project fileproject_save- Save the current projectproject_close- Close the current projectproject_new- Create a new projectproject_undo/project_redo- Undo/redo actions
Timeline Operations
timeline_get_info- Get timeline informationtimeline_get_tracks- List all trackstimeline_get_clips- Get clips on timelinetimeline_insert_clip- Insert clip from bintimeline_move_clip- Move a cliptimeline_delete_clip- Delete a cliptimeline_split_clip- Split a cliptimeline_resize_clip- Trim/resize a cliptimeline_add_track/timeline_delete_track- Manage trackstimeline_seek/timeline_get_position- Playhead control
Bin/Media Management
bin_list_clips/bin_list_folders- Browse bin contentsbin_get_clip_info- Get clip detailsbin_import_clip/bin_import_clips- Import media filesbin_delete_clip- Remove clipsbin_create_folder- Create foldersbin_rename_item/bin_move_item- Organize itemsbin_add_clip_marker/bin_delete_clip_marker- Manage markers
Effects
effect_list_available- List all effectseffect_get_info- Get effect parameterseffect_add/effect_remove- Add/remove effectseffect_get_clip_effects- List effects on a clipeffect_set_property- Modify effect parameterseffect_enable/effect_disable- Toggle effectseffect_get_keyframes/effect_set_keyframe/effect_delete_keyframe- Keyframe animation
Rendering
render_get_presets- List render presetsrender_start- Start renderingrender_stop- Stop a render jobrender_get_status- Check render progressrender_get_jobs/render_get_active_job- Monitor jobs
Assets
asset_list_categories- Browse effect categoriesasset_search- Search effects/transitionsasset_get_effects_by_category- Filter by categoryasset_get_favorites/asset_add_favorite/asset_remove_favorite- Manage favoritesasset_get_presets/asset_save_preset- Effect presets
Transitions & Compositions
transition_list- List available transitionstransition_add/transition_remove- Manage transitionscomposition_list- List compositionscomposition_add/composition_remove- Manage compositions
Utilities
kdenlive_ping- Check connectionkdenlive_version- Get version info
Example Conversations
Once configured, you can ask Claude to:
"Import all MP4 files from my Downloads folder into Kdenlive"
"Add a blur effect to the first clip on the timeline"
"Split the video at the 5 second mark"
"Render the project as MP4 to my Desktop"
"Create a new folder called 'B-Roll' in the bin and move all clips shorter than 10 seconds into it"
Troubleshooting
"Cannot connect to Kdenlive"
- Make sure Kdenlive is running
- Verify the RPC server is enabled in Kdenlive settings
- Check that the WebSocket URL is correct (default:
ws://localhost:9876)
"Connection refused"
The Kdenlive RPC server might be on a different port or host. Check your Kdenlive settings and update KDENLIVE_WS_URL accordingly.
Windows PATH Issues
If kdenlive-mcp command is not found, use the full path:
{
"mcpServers": {
"kdenlive": {
"command": "C:\\Users\\YourName\\AppData\\Local\\Programs\\Python\\Python311\\Scripts\\kdenlive-mcp.exe"
}
}
}
Or use uvx which handles this automatically:
{
"mcpServers": {
"kdenlive": {
"command": "uvx",
"args": ["kdenlive-mcp"]
}
}
}
Development
# Clone the repository
git clone https://github.com/IO-AtelierTech/kdenlive-automation.git
cd kdenlive-automation
# Install dependencies
uv sync
# Run the MCP server locally
uv run kdenlive-mcp
Related Projects
- kdenlive-api - Python client library for Kdenlive RPC
- Kdenlive - Free and open source video editor
- Model Context Protocol - Open protocol for AI tool integration
License
MIT License - see LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kdenlive_mcp-0.1.0.tar.gz.
File metadata
- Download URL: kdenlive_mcp-0.1.0.tar.gz
- Upload date:
- Size: 11.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
631eb54953bff38d12b6922b7941899cab722f31d7209e931042c518e2ae4ad6
|
|
| MD5 |
6fedb11f54843feeb2ed574d50a7d752
|
|
| BLAKE2b-256 |
69b2597582db644e6b854f2434814e6cf79c5562f5d1736c74025611303bc95a
|
File details
Details for the file kdenlive_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: kdenlive_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a1485c12445a9552c2a472126078477d7d8683004c2078e2dd8f69bfa4d52d5
|
|
| MD5 |
16e3dac060ce2616fe325c60d8833e2b
|
|
| BLAKE2b-256 |
006d092dbff623feec3fb368069d57e325655c95958de050de6d2cd56200559b
|