mcpField
Y
YouTube Transcripts (via Apify)

YouTube Transcripts (via Apify)

Remote
apify.comSocial Media0Updated 3w ago

About YouTube Transcripts (via Apify)

YouTube Transcript Scraper is an Apify Actor for AI agents and developers who need captions from YouTube. It returns plain text, timestamped segments, and video and channel details.

Key features

  1. 01Scrapes videos, Shorts, channels, and playlists
  2. 02Returns transcript text and timestamped segments
  3. 03Includes title, channel, and view details
  4. 04Prefers manual captions and supports auto-generated captions
  5. 05Schedules processing of new channel or playlist videos

Use cases

  1. 01Provide video captions to AI agents
  2. 02Organize video transcripts with timestamps
  3. 03Collect new captions from a channel on a schedule

MCP support

An Apify-hosted MCP server exposes transcript scraping to MCP clients; the README also describes local client configuration.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://mcp.apify.com/?tools=automationnation/youtube-transcript-scraper
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

All endpoints
Streamable HTTPhttps://mcp.apify.com/?tools=automationnation/youtube-transcript-scraperAuth required

Tools

Details

From the project README

YouTube Transcript Scraper & API: captions and subtitles

Run on Apify

YouTube Transcript Scraper is an Apify Actor that returns the transcript of any YouTube video as plain text and timestamped segments, in any caption language, with the title, channel, views and duration. It accepts video, Shorts, channel and playlist URLs, costs $1.50 per 1,000 transcripts and charges nothing for videos without captions.

Price: $1.50 per 1,000 transcripts ($1.20 on Gold and above) · Run it: https://apify.com/automationnation/youtube-transcript-scraper · Guide: https://retracn.github.io/automationnation-actors/youtube-transcript-scraper/

Quick facts

  • One row per video: transcript text, timestamped segments, language, auto-generated flag, all caption languages, title, channel, views, duration, description and tags.
  • Using youtube-transcript-api? The open-source youtube-transcript-cloud package (github.com/retracn/youtube-transcript-cloud) keeps its interface and runs on this Actor, so it works from AWS, GCP and other servers without RequestBlocked errors.
  • Videos, Shorts, channels and playlists (latest 15 videos).
  • Manual captions first, then auto-generated; best-effort translation.
  • Price: $1.50 per 1,000 transcripts; videos without captions are free.
  • Channels on autopilot: with Only new videos on, a scheduled run transcribes each new upload from a channel or playlist once. Guide: https://retracn.github.io/automationnation-actors/guides/auto-transcribe-youtube-channel/
  • Node.js on Vercel, Lambda or Render? The open-source youtube-transcript-cloud package (github.com/retracn/youtube-transcript-cloud-js) keeps the youtube-transcript npm API and errors and runs on this Actor, so transcripts work in production.

Example input

{
  "videos": [
    "https://www.youtube.com/watch?v=UF8uR6Z6KLc"
  ],
  "language": "en"
}

Run it from code

REST API

curl -X POST "https://api.apify.com/v2/acts/automationnation~youtube-transcript-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"videos": ["https://www.youtube.com/watch?v=UF8uR6Z6KLc"], "language": "en"}'

Python — see examples/python_example.py

# pip install apify-client
from apify_client import ApifyClient

client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("automationnation/youtube-transcript-scraper").call(run_input={
  "videos": [
    "https://www.youtube.com/watch?v=UF8uR6Z6KLc"
  ],
  "language": "en"
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item.get("title"), item.get("channel"), item.get("wordCount"), item.get("transcriptLanguage"))

JavaScript — see examples/node_example.mjs

// npm install apify-client
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('automationnation/youtube-transcript-scraper').call({
  "videos": [
    "https://www.youtube.com/watch?v=UF8uR6Z6KLc"
  ],
  "language": "en"
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) console.log(item.title, item.channel, item.wordCount, item.transcriptLanguage);

Use it with AI agents (MCP)

Hosted MCP server URL (Claude, ChatGPT, Cursor and other clients with remote MCP support):

https://mcp.apify.com?tools=automationnation/youtube-transcript-scraper

Local config for Claude Desktop / Cursor — mcp/claude_desktop_config.json:

{
  "mcpServers": {
    "youtube-transcript-scraper": {
      "command": "npx",
      "args": [
        "-y",
        "@apify/actors-mcp-server",
        "--tools",
        "automationnation/youtube-transcript-scraper"
      ],
      "env": {
        "APIFY_TOKEN": "YOUR_APIFY_TOKEN"
      }
    }
  }
}

FAQ

Is there an official YouTube transcript API? The YouTube Data API only downloads captions for videos you own. YouTube Transcript Scraper returns public captions of any video.

Does it transcribe audio? No, it returns captions YouTube already has (manual or auto-generated); videos without captions come back as no_transcript and aren't charged.

Can it transcribe every new video from a channel automatically? Yes. Add the channel URL, turn on Only new videos and schedule it daily: each run transcribes only new uploads, and videos without captions yet are tried again next time.

More from AutomationNation


This repository holds usage examples. The scraper itself runs on the Apify platform; you need a free Apify account and API token. Examples are MIT licensed.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.