JSPM

@adbuilds/youtube-transcript-mcp

0.0.2
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 20
  • Score
    100M100P100Q65158F
  • License MIT

MCP server for retrieving YouTube video transcripts for Claude Code and other MCP-enabled AI tools

Package Exports

  • @adbuilds/youtube-transcript-mcp
  • @adbuilds/youtube-transcript-mcp/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@adbuilds/youtube-transcript-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

YouTube Transcript MCP Server

npm version

A Model Context Protocol (MCP) server for retrieving transcripts from YouTube videos. Extract, summarize, and analyze video content with Claude Code or any MCP-enabled AI tool.

Quick Start

claude mcp add --scope user youtube-transcript npx @adbuilds/youtube-transcript-mcp

Then restart Claude Code and ask: "Get the transcript from https://www.youtube.com/watch?v=dQw4w9WgXcQ"

Features

  • Get Video Transcripts: Extract full transcripts from any YouTube video with available captions
  • Multiple URL Formats: Support for all common YouTube URL formats
  • Timestamp Support: Include or exclude timestamps in transcript output
  • Language Selection: Request transcripts in specific languages when available
  • Zero Dependencies: Uses native fetch API for transcript fetching (no external packages for YouTube)
  • Multi-Client Fallback: Tries Android → Web → TV_EMBEDDED clients for maximum reliability

Installation

npm install -g @adbuilds/youtube-transcript-mcp

From source

git clone https://github.com/adbuilds/youtube-transcript-mcp.git
cd youtube-transcript-mcp
npm install

Configuration

Claude Code CLI (Easiest)

# Add the MCP server for all projects (machine-wide)
claude mcp add --scope user youtube-transcript npx @adbuilds/youtube-transcript-mcp

Manual Configuration

Add to your ~/.claude.json:

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "npx",
      "args": ["@adbuilds/youtube-transcript-mcp"]
    }
  }
}

Usage

Once configured, restart Claude Code. The following tools will be available:

1. get-transcript

Retrieve the transcript of a YouTube video.

Parameters:

  • url (required): YouTube video URL or video ID
  • lang (optional): Language code for transcript (e.g., 'en', 'es', 'fr'). Default: video's default language
  • include_timestamps (optional): Include timestamps in output. Default: true

Supported URL formats:

  • https://www.youtube.com/watch?v=VIDEO_ID
  • https://youtu.be/VIDEO_ID
  • https://www.youtube.com/shorts/VIDEO_ID
  • VIDEO_ID (just the 11-character video ID)

Example prompts:

Get the transcript from https://www.youtube.com/watch?v=dQw4w9WgXcQ
Get the transcript from this video without timestamps: https://youtu.be/dQw4w9WgXcQ

2. get-transcript-languages

Check what transcript languages are available for a video.

Parameters:

  • url (required): YouTube video URL or video ID

Example:

What transcript languages are available for https://www.youtube.com/watch?v=dQw4w9WgXcQ?

MCP Token Limit

The MCP protocol has a 25,000 token response limit. For very long videos (60+ minutes):

  • Disable timestamps to reduce size by 20-30%
  • Request shorter clips if available

Technical Details

  • Built with @modelcontextprotocol/sdk
  • Custom YouTube transcript library (yt-lib/) with zero external dependencies
  • Uses YouTube's Innertube API for reliable transcript access
  • Multi-client fallback system (Android → Web → TV_EMBEDDED)

Error Handling

The server provides specific error messages for:

  • Transcripts disabled by video owner
  • Video unavailable or private
  • Age-restricted videos
  • Request blocking (rate limiting)
  • Invalid video IDs

License

MIT