Youtube Transcripts logo

Youtube Transcripts

Extracts timestamped and plain-text YouTube transcripts as structured JSON through an Apify Actor.

Install Youtube Transcripts

Pick your client, then add it in one click or paste the config.

Streamable HTTP (Remote)
Server URL
https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts

Remote servers are added in the app, not the config file: Customize → Connectors → Add custom connector, then paste this URL.

Overview

The youtube-transcripts MCP server connects assistants to Apify’s johnvc/YoutubeTranscripts Actor for retrieving captions from YouTube videos. It accepts one or multiple YouTube URLs and returns timestamped segments, plain transcript text, language details, duration, and success status as JSON. Use it when an agent needs to inspect, search, summarize, or process captions from standard videos, Shorts, embeds, mobile links, or youtu.be URLs.

Use cases

  • Retrieve transcripts for one or more YouTube videos
  • Build caption-synchronized interfaces from timed segments
  • Search or analyze plain-text video transcripts
  • Filter batch results using success and error status
  • Inspect caption language and auto-generation metadata

Key features

  • Timestamped caption segments
  • Plain-text transcript output
  • Single and parallel batch URL processing
  • Support for multiple YouTube URL formats
  • Language and caption-generation metadata
  • Per-video success and error reporting

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

8/8 checks healthy over the last 41d

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars1Stargazers on the source repository.
Last commit29d agoMost recent push to the default branch.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How Youtube Transcripts works

What youtube-transcripts MCP server does

The youtube-transcripts MCP server exposes the Apify johnvc/YoutubeTranscripts Actor through an MCP endpoint. It extracts captions from one or more YouTube URLs and returns one structured record per video. The output includes the video ID and URL, transcript language and language code, whether captions were auto-generated, total duration in seconds, and a success indicator.

Each successful record contains two transcript representations. timestamped is an array of caption segments with text, start time, and duration. non_timestamped contains the complete transcript as one plain-text string. This supports both time-aware applications, such as synchronized interfaces, and text-oriented workflows, such as search or analysis.

How it works

Provide youtube_url as either one URL string or an array of URLs. The Actor supports standard YouTube video links, Shorts, youtu.be links, embed URLs, and mobile URLs. Multiple inputs are processed in parallel. If one URL is invalid or unavailable, its result records an error and success: false rather than stopping the complete run.

The MCP connection is hosted at https://mcp.apify.com/ with query parameters that preload the Actor and the related actor and documentation tools. Authentication can use Apify OAuth in a browser or an Apify API token.

Setup and configuration

The youtube-transcripts MCP server requires an Apify account and API key. For the repository’s Python example, the documented prerequisites also include Python 3.11 or newer and the UV package manager. The token can be stored in a .env file based on .env.example, or exported as APIFY_API_TOKEN before running the example.

For remote MCP use, configure this endpoint:

text
https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts

Claude Desktop can load it through mcp-remote, while Claude Code can register it with the HTTP transport. Cursor uses a project-level .cursor/mcp.json configuration. Authentication is completed through OAuth when prompted, or by supplying the Apify token.

Tools and capabilities

  • Accept one YouTube URL or a batch of URLs.
  • Process batch inputs in parallel.
  • Return caption text with per-segment timing.
  • Return a single plain-text transcript.
  • Report language, language code, and automatic-caption status.
  • Include video duration and per-video success or error status.
  • Handle standard, Shorts, youtu.be, embed, and mobile URL formats.

The MCP endpoint is scoped to the johnvc/YoutubeTranscripts Actor alongside the actors and docs tools shown in the setup URL. The underlying repository also includes a Python invocation example using UV.

Limitations and notes

A transcript must be available for a successful result; unavailable or invalid URLs produce an error note and success: false. The service is dependent on Apify authentication and usage billing.

The youtube-transcripts MCP server returns the transcript data generated by the Actor. Caption text is represented as a placeholder in the repository’s example output, while an actual run returns the retrieved caption content.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Youtube Transcripts

youtube-transcripts is an MCP server that connects AI assistants to Apify’s johnvc/YoutubeTranscripts Actor. Its main tools run the Actor and expose related actor documentation, accepting YouTube URLs and returning timestamped captions, plain transcript text, language metadata, duration, and per-video success or error results as structured JSON.

Install it by configuring Apify’s remote MCP endpoint with `johnvc/YoutubeTranscripts`: `https://mcp.apify.com/?tools=actors,docs,johnvc/YoutubeTranscripts`. Authenticate with Apify OAuth or an API token. Claude Desktop uses `mcp-remote`, Claude Code supports the documented HTTP command, and Cursor uses `.cursor/mcp.json`.

Yes, youtube-transcripts works with Cursor through a project-level `.cursor/mcp.json` file. Configure the Apify MCP endpoint with the `johnvc/YoutubeTranscripts` Actor, then authenticate with OAuth or an Apify token before asking Cursor to run the transcript tool.

It accepts a required `youtube_url` value as either one URL string or an array of URLs. Supported formats include standard YouTube videos, Shorts, youtu.be links, embed URLs, and mobile URLs. Batch inputs are processed in parallel, with invalid entries returned as per-video errors.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewYoutube Transcripts AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/youtube-transcripts-2?style=directory)](https://allmcps.com/mcp/youtube-transcripts-2)
HTML Embed
<a href="https://allmcps.com/mcp/youtube-transcripts-2"><img src="https://allmcps.com/api/badge/youtube-transcripts-2?style=directory" alt="Youtube Transcripts on AllMCPs" /></a>