Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Awesome YouTube Transcripts

A curated list of libraries, APIs, MCP servers, agent skills and apps for getting the transcript or subtitles of a YouTube video, plus speech-to-text tools for videos that have no captions.

Entries are open source unless they are in Hosted APIs. Star counts change, so none are listed; every repo here had a commit in the last 12 months when it was added.

Contents

Which tool should I use?

You want to Start with
Fetch captions from a script on your own machine youtube-transcript-api (Python) or YouTube.js (JavaScript)
Download subtitle files from the command line yt-dlp with --write-subs --write-auto-subs --skip-download
Transcribe a video that has no captions faster-whisper or whisper.cpp on the downloaded audio
Fetch transcripts from a server or cloud function A hosted API, or a library behind your own proxies. YouTube often blocks requests from cloud IP ranges (details)
Let an AI assistant read YouTube videos An MCP server or an agent skill

Libraries

Python

  • youtube-transcript-api - Fetches manual and auto-generated transcripts, lists available languages and translates them. No API key or headless browser. Includes a CLI.
  • yt-dlp - The standard video downloader. Its subtitle options save captions as VTT, SRT or JSON3 without downloading the video.

JavaScript and TypeScript

  • YouTube.js - Client for YouTube's internal InnerTube API. getTranscript() returns timed segments (example).
  • youtube-transcript - Small npm package with a single fetchTranscript() call. Uses an unofficial endpoint, so it can break when YouTube changes.

Speech-to-text for videos without captions

  • Whisper - OpenAI's open speech recognition model, the base most tools below build on.
  • faster-whisper - Whisper reimplemented on CTranslate2. Several times faster than the original with lower memory use.
  • whisper.cpp - Whisper in C/C++. Runs on CPU, Apple Silicon and small devices.
  • WhisperX - Adds word-level timestamps and speaker diarization to Whisper.
  • insanely-fast-whisper - CLI for batched Whisper transcription on GPUs.

Hosted APIs

Use these when you need transcripts from servers that YouTube blocks, or don't want to run proxies. All are commercial services; check each site for current pricing and limits.

  • GetYouTubeTranscript - REST API and remote MCP server for transcripts, YouTube search, channels and playlists. Python and Node SDKs.
  • SearchAPI - YouTube transcripts endpoint inside a general search API.
  • Supadata - Transcripts and metadata for YouTube, TikTok, Instagram, X, Facebook and web pages.
  • TranscriptAPI - YouTube transcripts, search, channels and playlists, with an MCP server.
  • TranscriptOut - YouTube transcript API with agent skills and an MCP server.
  • YouTube Transcript (youtube-transcript.io) - Web tool and API for YouTube transcripts.

MCP servers

Model Context Protocol servers let Claude, Cursor, VS Code and other MCP clients read YouTube videos.

Agent skills

Agent Skills are folders of instructions that Claude Code, Cursor, Codex and similar agents load when a task matches.

Framework integrations

Summarizers and apps

Bulk and archiving

Guides and references

Contributing

Pull requests are welcome. See CONTRIBUTING.md.

This list is maintained by the team behind GetYouTubeTranscript, so some entries are our own projects. Competing tools are listed on the same terms, and a PR that improves a description of ours is as welcome as any other.

License

CC0 1.0. To the extent possible under law, the contributors have waived all copyright to this list.

Releases

Packages

Contributors