VideoDB MCP Server
OfficialAllows importing videos from YouTube by URL to be indexed, searched, and edited within VideoDB.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@VideoDB MCP ServerUpload this YouTube keynote, index it, and cut a highlight reel of product demos."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
VideoDB MCP Server
A remote MCP server that connects Claude (and any MCP client) to VideoDB — upload, index, search, edit, and stream videos straight from a conversation.
Built to meet Anthropic's connector directory review criteria: OAuth 2.1, Streamable HTTP, read/write tool separation, and full tool annotations. Deploys to Vercel in minutes with zero infrastructure — no database, no Redis.
"Upload this YouTube keynote, index it, and find every moment where they demo the product.
Then cut those moments into one highlight reel."Tools
Tool | Kind | What it does |
| read | List collections in the account |
| read | List videos with durations + player links |
| read | Metadata for one video |
| read | Plain or timestamped transcript |
| read | Semantic/keyword search inside one video (spoken or visual index) |
| read | Semantic search across a whole collection |
| read | List visual indexes on a video |
| write | Create a collection |
| write | Upload video/audio/image from a public URL or YouTube |
| write | Transcribe + index speech for search |
| write | Visually index scenes (optionally prompt-steered) |
| write | Cut a clip / supercut from one video → instant stream + player URL |
| write | Stitch moments across videos into one stream (highlight reels) |
| write | Burn subtitles from the transcript |
| write | Default or timestamped thumbnail |
| destructive | Permanently delete a video |
No AI media generation tools are exposed (VideoDB's gen-AI endpoints exist but are excluded — the Anthropic directory does not accept AI image/video/audio generation).
Related MCP server: Video Watcher MCP Server
How auth works (no database)
Claude requires OAuth 2.1; VideoDB accounts use API keys. This server bridges the two with a stateless OAuth layer:
Claude → /oauth/register (Dynamic Client Registration)
→ /oauth/authorize user pastes their VideoDB API key on a consent page
key is verified live against GET api.videodb.io/user
→ /oauth/token PKCE-checked; returns access + refresh tokens
→ /mcp Bearer token per requestEvery artifact (client ID, auth code, access/refresh token) is an AES-256-GCM-sealed payload encrypted with AUTH_SECRET. The user's VideoDB API key travels inside the encrypted token and is decrypted per-request — it is never written to disk, logged, or stored server-side. Tokens are audience-bound to the /mcp URL (RFC 8707), auth codes are PKCE-bound (S256) and live 5 minutes, access tokens 1 hour, refresh tokens 30 days with rotation.
Trade-off to know: with no server-side state, individual tokens can't be revoked before expiry — rotating AUTH_SECRET revokes all connections at once (users just reconnect). If you later need per-user revocation, add a token-ID denylist in Vercel KV.
Deploy to Vercel
Push this repo to GitHub, then Import it at vercel.com/new (or run
npx vercelfrom the repo root — no GitHub needed).Set one environment variable:
AUTH_SECRET— generate withopenssl rand -hex 32.Make sure Fluid compute is enabled (default for new projects) so long-running uploads/indexing fit inside
maxDuration = 300. On Pro you can raise it to 800 inapp/mcp/route.ts.Deploy. Your MCP endpoint is
https://<your-domain>/mcp.
Point a real domain at it (e.g. mcp.videodb.io) before submitting to the directory — the reviewer expects the server domain to match the service.
Connect it to Claude
Claude → Settings → Connectors → Add custom connector (Team/Enterprise: Organization settings → Connectors).
Enter
https://<your-domain>/mcp.Click Connect — the VideoDB consent page opens; paste your API key from console.videodb.io.
Done. Ask Claude to
list my videodb collectionsto smoke-test.
Also works in Claude Code (claude mcp add --transport http videodb https://<your-domain>/mcp) and MCP Inspector.
Local development
npm install
cp .env.example .env # set AUTH_SECRET
npm run dev # http://localhost:3000End-to-end test (no VideoDB account needed)
The e2e suite exercises the full flow exactly like Claude does — discovery, DCR, consent, PKCE, token exchange + rotation, 401 challenges, MCP initialize/tools-list, and tool calls including the async job-polling path — against a mock VideoDB API:
# terminal 1 — mock VideoDB API on :4519
npm run mock
# terminal 2 — the server pointed at the mock
AUTH_SECRET=test-secret-0123456789 VIDEODB_API_BASE=http://127.0.0.1:4519 npm run dev
# terminal 3
npm run e2eAll green = safe to deploy. To test against the real API, just connect from Claude with a real key — every tool maps 1:1 to documented VideoDB endpoints (docs.videodb.io).
Submitting to the Anthropic connector directory
See docs/SUBMISSION.md for the filled-out checklist: portal steps, listing copy, allowed link URIs, test-account requirements, and the compliance acknowledgments.
Project layout
app/mcp/route.ts MCP endpoint (16 tools, annotated) + bearer verification
app/oauth/{authorize,token,register}/ Stateless OAuth 2.1 authorization server
app/.well-known/... RFC 9728 + RFC 8414 discovery metadata
lib/videodb.ts VideoDB REST client (envelope + async-poll protocol)
lib/oauth.ts, lib/crypto.ts Sealed-token machinery
lib/consent-page.ts VideoDB-branded consent screen
scripts/mock-videodb.mjs, scripts/e2e.mjs Full-flow test harnessLicense
Apache-2.0 © Spext Labs Inc. (VideoDB)
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
Alicense-qualityFmaintenanceEnables video generation from text, images, and more through MCP-compatible apps like Claude and Cursor.50MIT- Flicense-qualityCmaintenanceMCP server exposing claude-video functionality for claude.ai web UI via HTTP+SSE, enabling video watching and analysis from claude.ai.
- Flicense-qualityBmaintenanceMCP server for managing video pipelines, integrating media processing (TTS, STT, image generation) and video editing, with a structured plugin system and tunnel to Claude AI Web.
- Alicense-qualityCmaintenanceOne connector for the whole MCP catalog — 15,000+ servers plus your team's private MCPs — callable from Claude, ChatGPT, Cursor and VS Code through a single OAuth endpoint. No per-server install.MIT
Related MCP Connectors
Connect Claude to Fathom meeting recordings, transcripts, and summaries
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/video-db/videodb-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server