What is MCP?
MCP is an open standard that lets AI applications discover and use external tools. When you connect FastDrop’s MCP server to an AI agent, the agent can:- Classify videos by URL
- Transcribe and translate video audio
- Search across transcribed videos by keyword or meaning
- Check job status and results
- Submit batch jobs
- Check your credit balance
Setup
Add FastDrop to your AI client’s MCP configuration. Your API key goes in theX-API-Key header, so the agent authenticates automatically and you never paste your key into a conversation.
- Claude Desktop
- Claude Code
- Cursor
- VS Code (Copilot)
- Windsurf
Edit Restart Claude Desktop after saving.
~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):Installing from an MCP directory
FastDrop is listed on Smithery ashorizonindustry/fastdrop. Installing from there routes your calls through Smithery’s gateway rather than connecting to api.fastdrop.io directly; everything else — the tools, the credit costs, the behaviour — is identical.
The listing asks for a FastDrop API Key, and it is optional. Leave it blank and you can still browse the tools and call fastdrop.capabilities.list, which needs no key. Every tool that does real work — classification, transcription, batches, search — needs one, so fill it in when you have it. A key entered there reaches us as an X-API-Key header, not as part of the URL.
Authentication
Send yourfd_live_... key as an X-API-Key HTTP header in your client config, as shown above. If your client only supports bearer tokens, Authorization: Bearer fd_live_... works too.
Every tool also accepts an api_key parameter. This is deprecated and exists only so older configurations keep working — it puts your key in the model’s context. If you set one up that way, move it to the header.
The server also accepts ?apiKey=fd_live_... on the endpoint URL. That exists for MCP directories and gateways that can only pass configuration as a query string; a header always takes precedence over it. Prefer the header when your client supports one, since URLs are logged in more places than headers are.
fastdrop.capabilities.list needs no key at all.
Available tools
Once connected, your AI agent can use these 12 tools. Names form a tree —fastdrop.<domain>.<verb> — over five domains, so the surface stays browsable and can’t collide with other MCP servers you have installed.
Every
fastdrop.video.* tool except classify and readiness is shorthand for fastdrop.video.classify with a single capability. readiness is not — it returns a verdict in the same call rather than a job to poll. If you want more than one thing from a video, ask for them together — one call with several capabilities is cheaper and faster than several calls.
Transcription costs less in a batch. Asking for
transcribe inside
fastdrop.batch.classify costs 3 credits per video rather than 5. Batches
return the transcript and translation but cannot generate SRT/TXT subtitle
files, so you are not charged for a step that can’t run. Use
fastdrop.video.transcribe when you need the subtitle files.Searching a batch requires transcription. Include
transcribe in the
capabilities you pass to fastdrop.batch.classify, and wait for the batch to
reach completed — search is unavailable while videos are still processing.
Three modes are supported: keyword (full-text), semantic (meaning-based),
and hybrid (both, the default).Visual search is a subscriber feature on fastdrop.io and is not exposed over MCP.How processing works
FastDrop processing is asynchronous. Submission tools return ajob_id immediately, along with a poll_after_seconds hint telling the agent how long to wait before checking. The agent then polls fastdrop.job.status until the status is completed or failed.
Typical durations:
You don’t need to manage any of this yourself — the agent handles polling. It’s just useful to know why a request doesn’t answer instantly.
Controlling response size
fastdrop.batch.status accepts a response_format parameter:
concise(default) — per-video status, role, confidence, and suggested filenamedetailed— everything, including thumbnail URLs, clips, and diagnostics
detailed when you genuinely need it, or use fastdrop.job.status on the single video you care about.
fastdrop.job.status accepts the same parameter, defaulting to detailed since it only covers one video.
Resources
Alongside tools, the server exposes one MCP resource:
Clients that support resources can read this instead of spending a tool call on data that never changes.
Example conversation
You: Classify these three clips for me and tell me which ones are B-roll: https://example.com/a.mp4, https://example.com/b.mp4, https://example.com/c.mp4 AI Agent: I’ll submit those as a batch. (callsNotice the agent never asked for an API key — it’s in the header.fastdrop.batch.classify) Submitted — batchb1c2d3e4, 6 credits. Checking back in about 30 seconds… (callsfastdrop.batch.status) All three are done:So b.mp4 and c.mp4 are your B-roll.
- a.mp4 — A-Roll, 92% confidence →
AROLL_Interview_Intro.mp4- b.mp4 — B-Roll, 88% confidence →
BROLL_City_Streets.mp4- c.mp4 — B-Roll, 81% confidence →
BROLL_Office_Cutaway.mp4
Technical details
- Endpoint:
https://api.fastdrop.io/mcp - Transport: Streamable HTTP (POST-based JSON-RPC with SSE responses)
- Mode: Stateless — no session persistence, no session affinity required
- Authentication:
X-API-Keyheader
The endpoint was previously documented as
https://api.fastdrop.io/mcp/mcp. That path still works and existing configurations don’t need to change, but /mcp is now the canonical URL.Testing the connection
List the available tools:fastdrop.* tools, each with a description on every parameter. Responses use text/event-stream, so the JSON-RPC payload arrives on a line prefixed with data:.
To confirm your key works, call a free tool:
Troubleshooting
The agent says it needs an API key. Your client isn’t sending the
X-API-Key header. Check that the headers block is inside the fastdrop server entry in your config, then restart the client — most only read MCP config at startup.“FastDrop rejected the API key.” The key reached us but was invalid, revoked, or deactivated. Confirm it in the developer portal and check for a stray space or a truncated paste.
“Insufficient credits.” The error states exactly how many credits the call needed versus how many you have. Reduce the number of videos, drop to
processing_tier: "basic", or top up.A GET to the endpoint returns Not Found. Expected —
/mcp is a POST-only JSON-RPC endpoint. Use the curl commands above rather than a browser.