YouTube Subtitles MCP

A public MCP server that pulls the full subtitles out of a YouTube video, so an AI assistant can read a whole lecture instead of guessing from the title.

Endpoint https://mcp-youtube.lyabah.com/mcp

No API key, no account, no setup. Point any MCP client at that URL and ask it about a YouTube video.

Connecting

Claude (web & desktop)

Settings → Connectors → Add custom connector, then paste the endpoint URL above.

Claude Code

claude mcp add --transport http youtube https://mcp-youtube.lyabah.com/mcp

Anything else

The server speaks MCP over streamable HTTP:

{
  "mcpServers": {
    "youtube": {
      "type": "http",
      "url": "https://mcp-youtube.lyabah.com/mcp"
    }
  }
}

Tools

get_transcript

Returns the subtitles of a video as text. By default you get the whole thing — a two-hour lecture comes back as one document.

ParameterMeaning
urlAny YouTube link — watch, youtu.be, shorts, embed, live — or a bare video ID. Required.
langPreferred subtitle language, e.g. en, uk. Defaults to the video's own.
translate_toMachine-translate the subtitles into this language.
formattext (default), timestamped, or srt.
max_charsCap the response size. 0 (default) returns everything.
offset_charsContinue where a capped response stopped.

list_transcripts

Lists which subtitle languages a video offers, whether each was written by a human or generated by speech recognition, and which languages it can be translated into.

Once it's connected

Just paste a link and ask:

Summarise https://www.youtube.com/watch?v=... for me
What does this video say about X?
Pull the exact quote where they talk about Y
Subtitles only. This reads captions that already exist on YouTube — the uploader's own, or the ones YouTube generated automatically. A video with captions disabled has nothing to read, and no audio is transcribed here.
YouTube sometimes refuses to serve captions to a server, and blocks some videos while allowing others. When that happens the tool says so rather than inventing an answer.