io.twelvelabs/twelvelabs-mcp-server
io.twelvelabs/twelvelabs-mcp-server · v1.0.1 · MCP 2025-11-25
TwelveLabs MCP: video indexing, search, analysis, and embeddings for AI applications.
Reachability
reachable
checked 2026-07-14 04:31 UTC
Registry status active
Tools pinned 24
f47872365874
Tools last changed
unchanged since first capture 2026-07-14
Provenance
Registry namespace io.twelvelabs
(domain verified by the official registry)
Website
https://twelvelabs.io
Remote endpoints
https://mcp.twelvelabs.io (streamable-http)
https://mcp.twelvelabs.io/mcp (sse)
Observed changes
| When (UTC) | Event | Detail |
|---|---|---|
| 2026-07-14 03:24 | first capture | 24 tools pinned |
Pinned tool definitions (24)
| Tool | Description |
|---|---|
| create-index | Create a new twelvelabs video index. An index is a basic unit for organizing and storing video data consisting of video embeddings and metadata. Indexes facilitate information retrieval and processing. If you plan to use search or... |
| list-indexes | List all twelvelabs video indexes. |
| delete-index | Delete a twelvelabs video index |
| start-video-indexing-task | Start a twelvelabs video indexing task. This will allow the video to be used by the embedding model and searched in natural language. If no indexId is provided, we will add the video to the default index. You can provide either a... |
| get-video-indexing-tasks | **Legacy.** Prefer get-indexed-asset for new code (it uses TL's current /indexes/{id}/indexed-assets endpoint and is forward-compatible). This tool calls TL's deprecated /tasks endpoint, which still works today but will be removed in a... |
| get-indexed-asset | Retrieve an indexed asset by (indexId, indexedAssetId) — returns its status, system metadata, and optional embeddings/transcription. Prefer this tool over the legacy get-video-indexing-tasks. It uses TL's current... |
| list-videos | List all videos in a twelvelabs video index. If you don't provide an indexId, we will use the default index. This tool will return for each video of the index: - the videoId: needed for video analysis. - the original video... |
| search | Search in twelvelabs videos using natural language descriptions. The twelvelabs platform interprets your query to find matching content based on visual elements, actions, sounds, and on-screen text. The search is performed on all... |
| create-entity-collection | Create a new entity collection. Entity collections group related entities (people or objects) for entity search. For example, create a collection per sports team or film cast. Requires Marengo 3.0. |
| list-entity-collections | List all entity collections. Entity collections contain entities (people/objects) used for entity search. |
| delete-entity-collection | Delete an entity collection and all its entities. |
| create-asset | Upload an image or video file as a TwelveLabs asset. Assets are reference files used by other tools: - Image assets → reference images for entities (see create-entity). - Video assets → input to async-analyse-video via the assetId... |
| delete-asset | Delete an asset (image or video) by ID. By default, the request is rejected if any indexed video references the asset; pass force=true to delete anyway (the platform will unlink any entity associations). This action cannot be undone. |
| create-entity | Create an entity within a collection. An entity represents a specific person or object you want to find in videos. You must provide at least one image asset ID (created via create-asset with an image URL/file). Video assets are rejected... |
| list-entities | List all entities in an entity collection. |
| delete-entity | Delete an entity from a collection. |
| start-video-embeddings-task | Start a new twelvelabs video embeddings task that uploads a video to the platform and creates one or multiple video embeddings. |
| get-video-embeddings-tasks | Get details about video embeddings tasks. If you provide a taskId, we will return details (including the status) of that task. If not we will return the details of the latest 10 embeddings tasks that were created. Possible statuses... |
| retrieve-video-embeddings | Retrieves the video embeddings from a ready twelvelabs video embeddings task or from an indexed video. |
| sync-analyse-video | Synchronously analyse a video and return the generated text (or structured JSON) inline. **Input sources** (provide exactly one): - `videoId` — pre-indexed video. **Pegasus 1.2 only** (legacy, kept for backwards compatibility). -... |
| async-analyse-video | Asynchronously analyse a video with Pegasus 1.5 (default). Takes a videoUrl, assetId, or base64Video directly — NO prior indexing required. Handles videos up to 2 hours; longer videos are rejected by the Twelve Labs API with a 400.... |
| get-analyse-task | Retrieve the status and results of an async analyse task created via async-analyse-video. Call this repeatedly (every 5-10 seconds) after async-analyse-video until status is "ready" or "failed". When status is "ready", the... |
| list-analyse-tasks | List async analyse tasks in your account, newest first. Supports pagination and filtering by status, source videoUrl, source assetId, or analysisMode. Returns a compact summary per task — use get-analyse-task for the full result of... |
| delete-analyse-task | Delete an async analyse task by ID. Tasks that are still processing cannot be deleted — wait for them to finish or fail, or leave them alone (they expire server-side eventually). |
Status badge
[](https://toolpin.dev/servers/io.twelvelabs/twelvelabs-mcp-server)
Maintain this server? Add the badge to your README — it links your users to this live status page.