home / mcp / youtube transcript mcp server

YouTube Transcript MCP Server

Fetches YouTube video transcripts in multiple languages for MCP clients and enables transcript-based analysis.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "arrrggghhh-youtube-transcript-mcp": {
      "command": "/path/to/uv",
      "args": [
        "run",
        "--directory",
        "/path/to/cloned/directory",
        "--with",
        "mcp[cli]",
        "--with",
        "youtube_transcript_api",
        "mcp",
        "run",
        "/path/to/youtube-transcript-mcp.py"
      ],
      "env": {
        "YOUTUBE_TRANSCRIPT_FETCHER_LANGS": "en,es,fr,de"
      }
    }
  }
}

You can use the YouTube Transcript MCP Server to fetch transcripts from YouTube videos in multiple languages and expose that capability through an MCP client. This makes it easy for AI assistants to retrieve and summarize video content by using transcripts rather than raw video data.

How to use

You access the transcripts by connecting an MCP client to the YouTube Transcript MCP Server. The server can fetch transcripts for a video by its ID and return the text in the configured language order. Configure the client to request a transcript for a specific video, then ask the client to summarize or analyze the transcript. You can rely on the server for multi-language support and stable transcript retrieval to power downstream tasks like summarization, extraction of key points, or content analysis.

How to install

Prerequisites you need before installation: Python 3.8 or higher. You should use the uv package manager (recommended) or pip for installing dependencies.

# Step 1: Clone the project
git clone https://github.com/arrrggghhh/youtube-transcript-mcp.git
cd youtube-transcript-mcp

# Step 2: Install dependencies using uv (recommended)
uv sync

Additional configuration and notes

Environment variables control transcript language preferences. The following variable configures the order of languages the server will attempt when fetching transcripts: YOUTUBE_TRANSCRIPT_FETCHER_LANGS. The default order is ko,en.

{
  "env": {
    "YOUTUBE_TRANSCRIPT_FETCHER_LANGS": "ko,en"
  }
}

Available tools

fetchTranscript

Fetch transcripts for a YouTube video by its ID and return the transcript text in the requested language stream.

setLanguagePreference

Configure and adjust the order of language preferences used when selecting a transcript language.

getTranscriptLanguages

Expose available transcript languages for a given video or in the configured preferences.