agent toolkit
VideoDB Director
VideoDB Director
x000D
x000D
To add the MCP server in any config driven MCP Client, following is how the commands and arguments will look like_x000D_
x000D
uv
x000DWe need to install uv first.x000D
x000D
For macOS/Linux:x000D
_x000D_
curl -LsSf https://astral.sh/uv/install.sh | sh_x000D_
x000D
For Windows:x000D
x000D
_x000D_
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"_x000D_
x000D
x000D
You can also visit the installation steps of uv
for more details herex000D
x000D
You can run the MCP server using uvx
using the following command_x000D_
x000D
_x000D_
uvx videodb-director-mcp --api-key=VIDEODB_API_KEY_x000D_
x000D
x000D
x000D
x000D
To configure VideoDB Director MCP server in Claude, you can run the following command_x000D_
x000D
uvx videodb-director-mcp --install=claude
x000D
x000D
You can manually configure the MCP Server by following these steps:x000D
x000D
1. Open the claude_desktop_config.json
file_x000D_
x000D
In MacOS/Linux:x000D
x000D
_x000D_
code ~/Library/Application Support/Claude/claude_desktop_config.json_x000D_
x000D
x000D
In Windows:x000D
x000D
_x000D_
code $env:AppDataClaudeclaude_desktop_config.json_x000D_
x000D
x000D
2. Add the VideoDB Director MCP Server inside the mcpServers
key:x000D
x000D
json_x000D_
{_x000D_
"mcpServers": {_x000D_
"videodb-director": {_x000D_
"command": "uvx",_x000D_
"args": ["videodb-director-mcp", "--api-key=<VIDEODB-API-KEY>"]_x000D_
}_x000D_
}_x000D_
}_x000D_
x000D
x000D
x000D
To configure VideoDB Director MCP server in Cursor, you can run the following command_x000D_
x000D
uvx videodb-director-mcp --install=cursor
x000D
x000D
You can manually configure the MCP Server by following these steps:x000D
x000D
1. Inside Cursor, go to Settings > Cursor Settingsx000D
2. Click on MCPx000D
3. Click on Add new Global MCP Serverx000D
4. Add the VideoDB Director MCP Server under the mcpServers
key_x000D_
x000D
json_x000D_
{_x000D_
"mcpServers": {_x000D_
"videodb-director": {_x000D_
"command": "uvx",_x000D_
"args": ["videodb-director-mcp", "--api-key=<VIDEODB-API-KEY>"]_x000D_
}_x000D_
}_x000D_
}_x000D_
x000D
x000D
You can configure VideoDB Director MCP server in Claude and Cursor together, by running the following command_x000D_
x000D
_x000D_
uvx videodb-director-mcp --install=all_x000D_
x000D
x000D
x000D
x000D
_x000D_
claude mcp add videodb-director uvx -- videodb-director-mcp --api-key=<VIDEODB_API_KEY>_x000D_
x000D
x000D
x000D
To ensure you re using the latest version of the MCP server with uvx
, start by clearing the cache:x000D
x000D
_x000D_
uv cache clean_x000D_
x000D
x000D
This command removes any outdated cached packages of videodb-director-mcp
, allowing uvx
to fetch the most recent version.x000D
x000D
If you always want to use the latest version of the MCP server, update your command as follows:x000D
_x000D_
uvx videodb-director-mcp@latest --api-key=<VIDEODB_API_KEY>_x000D_
x000D
[
{
"description": "Context for creating video applications using VideoDB",
"inputSchema": {
"properties": {},
"title": "doc_assistantArguments",
"type": "object"
},
"name": "doc_assistant"
},
{
"description": "Will give you data related to VideoDB SDK which allows developers to use videodb in python. IMPORTANT: Whenever user wants to write code related to videos, youtube videos or VideoDB specifically, always call this tool.",
"inputSchema": {
"properties": {},
"title": "code_assistantArguments",
"type": "object"
},
"name": "code_assistant"
},
{
"description": "Play the video of the given stream link",
"inputSchema": {
"properties": {
"stream_link": {
"title": "Stream Link",
"type": "string"
}
},
"required": [
"stream_link"
],
"title": "play_videoArguments",
"type": "object"
},
"name": "play_video"
},
{
"description": "The Director tool orchestrates specialized agents within the VideoDB server, efficiently handling multimedia and video-related queries. Clients should send queries that Director can interpret clearly, specifying tasks in natural language. Director will then delegate these queries to appropriate agents for optimized results, utilizing defaults and contextual information if explicit parameters are not provided.nnDirector handles queries such as:nn- Uploading & Downloading:n - Upload media from URLs or local paths (supported media: video, audio, image)n - Download the VideoDB generated video streams.nn- Indexing & Search:n - Index spoken words or scenes in videos (spoken_words, scene indexing; scene indexing supports shot or time-based type)n - Search VideoDB collections semantically or by keyword (semantic, keyword search; indexing types: spoken_word, scene)nn- Summarization & Subtitles:n - Summarize video content based on custom promptsn - Add subtitles in various languagesnn- Dubbing:n - Dub videos into target languagesnn- Creating Videos:n - Generate videos using specific models or engines (Fal, StabilityAI; job types: text_to_video, image_to_video)n - Compare multiple video generation models (video_generation_comparison)nn- Audio Generation & Editing:n - Generate speech, sound effects, or background music (engines: ElevenLabs for speech/sound effects, Beatoven for music)n - Clone voices from audio sources or overlay cloned voices onto videosn - Censor the video on given promptnn- Image and Frame Generation:n - Generate static image frames from videos at specified timestampsn - Create or enhance images using GenAI models (job types: text_to_image, image_to_image using Fal, Replicate)nn- Video Editing & Clip Generation:n - Edit or combine multiple videos and audio filesn - Generate targeted video clips from user promptsnn- Streaming & Web Search:n - Stream videos by video ID or URLn - Search for relevant online videos (engine: Serp)nn- Transcription:n - Generate transcripts for videosnn- Pricing & Usage Information:n - Provide detailed cost information and usage estimatesnnClients should provide queries clearly aligned with Director s capabilities, allowing Director to use contextual defaults when explicit parameters like IDs or collection details are not specified.nnIMPORTANT: if you have a previous response of this method with an appropriate session_id, please provide that session_id in the next request to continue the conversation.nIMPORTANT: It is MANDATORY to send the `session_id` param if any earlier response from this method exists with a `session_id` in its output",
"inputSchema": {
"properties": {
"agents": {
"default": [],
"items": {
"type": "string"
},
"title": "Agents",
"type": "array"
},
"session_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Session Id"
},
"text_message": {
"title": "Text Message",
"type": "string"
}
},
"required": [
"text_message"
],
"title": "call_directorArguments",
"type": "object"
},
"name": "call_director"
}
]