YouTube Transcript MCP Server

by jkawamoto

Community Web Scraping & Data Collection 8k likes

jkawamoto's MCP server fetches YouTube captions, per-line timestamps, video metadata, and available languages for any video, no API key, browser, or scraping required.

Add to Claude Code

claude mcp add youtube-transcript -- uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript

Source: https://github.com/jkawamoto/mcp-youtube-transcript

About

This MCP server exposes four tools for pulling caption data out of YouTube videos: fetch a transcript, fetch one with per-line timestamps, look up video metadata, or list which languages a video's captions are available in. Under the hood it uses jdepoix's youtube-transcript-api Python library to do the actual retrieval, but it's a separate, actively maintained project: MIT-licensed, with roughly 460 GitHub stars and its own install path and MCP tool layer.

Because it reads captions the same way YouTube's own player does, there's no Data API key or headless browser involved. Built-in proxy support (Webshare or a generic proxy) handles environments where YouTube starts blocking the requesting IP, and a configurable response limit paginates long transcripts so a single tool call doesn't overflow the context window.

Key features

  • get_transcript and get_timed_transcript return a video's captions, with or without per-line timestamps
  • get_video_info returns metadata for a given video
  • get_available_languages lists which caption languages exist before you commit to fetching one
  • Built-in Webshare or generic proxy support for environments where YouTube blocks the request IP
  • Configurable response pagination (--response-limit) keeps long transcripts from overflowing a single response
  • No YouTube Data API key or headless browser required

Use cases

  • Feeding a video's transcript into an LLM as source text for summarization or Q&A
  • Pulling timestamped captions to cite or jump to a specific moment in a video
  • Checking which languages a video's captions are available in before fetching one
  • Batch-extracting transcripts across a channel's videos through repeated tool calls

Available tools

get_transcript

Fetches a video's transcript, with language selection and pagination options.

get_timed_transcript

Fetches the transcript with a timestamp attached to each caption line.

get_video_info

Returns metadata for the given YouTube video.

get_available_languages

Lists which transcript languages exist for a video.

Frequently asked questions

Is this the same project as jdepoix's youtube-transcript-api?

No. jkawamoto's MCP server is a separate, actively maintained project that uses jdepoix's Python library internally to do the actual transcript fetching, but ships its own MCP tool layer, MIT license, and install path.

Does it need a YouTube Data API key?

No. It reads captions the same way YouTube's own player does. Built-in proxy support is available for environments where YouTube starts blocking the request IP.