Quickstart

Five minutes from zero to a subtitled video. Pick the path that fits your workflow.

Path 1 — Hosted MCP (no install)

Register one URL with your MCP-compatible client. Most agents work immediately.

Claude Code

claude mcp add --transport http subtitlesking https://brains.subtitlesking.com/mcp

Claude Desktop

Edit claude_desktop_config.json:

{
  "mcpServers": {
    "subtitlesking": {
      "url": "https://brains.subtitlesking.com/mcp"
    }
  }
}

Restart Claude Desktop. Ask it: "Subtitle this video for me." Pass it a file path. Done.

Path 2 — Self-host MCP binary

Run the open-source binary locally. Defaults to talking to the hosted backend, so you don't need to run anything else. Source and binaries at github.com/kirillzubovsky/subtitlesking-mcp.

# macOS Apple Silicon
curl -L https://github.com/kirillzubovsky/subtitlesking-mcp/releases/latest/download/subtitlesking-mcp-darwin-arm64.tar.gz \
  | tar -xz
sudo mv subtitlesking-mcp /usr/local/bin/

claude mcp add subtitlesking $(which subtitlesking-mcp)

Linux and Windows binaries are on the releases page.

For fully self-hosted (no calls to brains.subtitlesking.com), set SUBTITLESKING_URL to your own backend. See the self-host guide.

Path 3 — REST API

If you'd rather hit HTTP directly:

# 1. Get a presigned upload URL
curl -X POST https://brains.subtitlesking.com/presign \
  -H "X-API-KEY: $SK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename":"clip.mp4"}'

# 2. Upload the file
curl -X POST "$UPLOAD_URL" -F "file=@clip.mp4"

# 3. Poll for status
curl -X POST https://brains.subtitlesking.com/queue \
  -H "Content-Type: application/json" \
  -d '{"authToken":"12345678"}'

Full endpoint reference is at /docs/api.

Path 4 — UI (no code)

Visit /try, drop a video on the upload box, and wait for the download link. Useful for one-offs and demos.


What happens behind the scenes

  1. Compress — ffmpeg downscales the video for faster Whisper passes.
  2. Transcribe — OpenAI Whisper (large model) generates an SRT.
  3. Burn — ffmpeg burns the SRT back into the video.

Total time scales roughly linearly with video length — a one-minute video takes about a minute and a half.

The transcript becomes available as soon as Whisper finishes, a couple minutes before the burned video. You can grab one, the other, or both.

Next steps