TranscriptAPI YouTube Transcript + YouTube Search MCP

TranscriptAPI YouTube Transcript + YouTube Search MCP

A comprehensive MCP server providing YouTube transcript retrieval, video search, channel browsing, playlist extraction, and upload monitoring for AI agents.

Category
Visit Server

README

<!-- mcp-name: com.transcriptapi/youtube-transcript-and-youtube-search -->

<p align="center"> <a href="https://transcriptapi.com"> <img src="public/brand/logo-512.png" width="160" height="160" alt="TranscriptAPI" /> </a> </p>

<h1 align="center">YouTube Transcript + YouTube Search MCP for AI Agents</h1>

<p align="center"> <b>The fastest YouTube transcript + YouTube search MCP for AI agents. Try for free.</b><br/> Six tools — transcripts, video search, channel browsing, in-channel search, playlist extraction, and new-upload polling — for Claude, ChatGPT, Cursor, VS Code, Claude Code, and 20+ clients. </p>

<p align="center"> <a href="https://cursor.com/en/install-mcp?name=transcript-api&config=eyJ1cmwiOiJodHRwczovL3RyYW5zY3JpcHRhcGkuY29tL21jcCJ9"><img alt="Install in Cursor" src="https://img.shields.io/badge/Cursor-Install_MCP-000000?style=for-the-badge&logo=cursor&logoColor=white"/></a> <a href="https://insiders.vscode.dev/redirect?url=vscode%3Amcp%2Finstall%3F%7B%22name%22%3A%22transcript-api%22%2C%22url%22%3A%22https%3A%2F%2Ftranscriptapi.com%2Fmcp%22%7D"><img alt="Install in VS Code" src="https://img.shields.io/badge/VS_Code-Install_MCP-0098FF?style=for-the-badge&logo=visualstudiocode&logoColor=white"/></a> </p>

<p align="center"> <a href="https://transcriptapi.com"><img src="https://img.shields.io/badge/Website-transcriptapi.com-FF3B00?style=for-the-badge" alt="Website"/></a> <a href="https://transcriptapi.com/docs"><img src="https://img.shields.io/badge/Docs-API_Reference-06B6D4?style=for-the-badge&logo=readthedocs&logoColor=white" alt="Docs"/></a> <a href="https://transcriptapi.com/swagger"><img src="https://img.shields.io/badge/Swagger-Try_API-85EA2D?style=for-the-badge&logo=swagger&logoColor=white" alt="Swagger"/></a> <a href="./LICENSE"><img src="https://img.shields.io/badge/License-MIT-4CAF50?style=for-the-badge" alt="MIT License"/></a> </p>

Powering 15M+ transcripts every month · 500K+ transcripts processed daily · 49ms median response time Trusted in production by youtubetotranscript.com (~11M/mo) and recapio.com (~2.8M/mo).


Why TranscriptAPI MCP

Most YouTube MCP servers do one thing — pull a single transcript. TranscriptAPI MCP is a full toolkit: transcripts, video search, channel search, channel browsing, playlist extraction, and free RSS-based upload tracking — all from one remote endpoint, all designed for AI agents.

TranscriptAPI MCP Typical YouTube MCP
Hosting ✅ Remote (no local install) ❌ Local stdio install
Tools ✅ 6 tools ❌ 1 (transcript only)
YouTube search ✅ Yes ❌ No
Channel & playlist extraction ✅ Yes ❌ No
Latest-uploads monitoring (free) ✅ Yes ❌ No
OAuth 2.1 + API key auth ✅ Both ❌ Usually neither
Production scale (15M+ req/mo) ✅ Yes ❌ Hobbyist scrapers
Works on mobile Claude & web Claude ✅ Yes ❌ No
Agent-friendly error messages ✅ Yes ❌ Bare HTTP codes

Quick taste:

Find Andrew Huberman's three most-viewed videos about sleep,
get the transcript of each, and write a 5-bullet comparison.

That single prompt uses 3 of our 6 tools — search_youtube, search_channel_videos, get_youtube_transcript — without you writing a line of code.


🛠️ Quick Install

Requirements:

  • A TranscriptAPI account (sign up free — first 100 credits free)
  • An API key from your dashboard OR use OAuth (Claude, ChatGPT)

Recommended: Add a Rule to Auto-Invoke TranscriptAPI

Add this rule to your AI client so you don't need to explicitly ask for transcripts:

When I share a YouTube URL, automatically use the TranscriptAPI MCP tool
to fetch the transcript before responding. This applies to any video analysis,
summarization, or question about YouTube content.

<details> <summary><b>Install in Cursor (One-Click / Manual)</b></summary>

One-Click Install:

Install MCP Server

Manual Configuration:

Go to: Settings → Features → MCP → Add New MCP Server

  • Name: transcript-api
  • Type: SSE (Remote)
  • URL: https://transcriptapi.com/mcp

Or edit ~/.cursor/mcp.json:

{
  "mcpServers": {
    "transcript-api": {
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Claude (Desktop & Web) — Recommended</b></summary>

Claude supports adding MCP servers directly via the "Custom Connector" UI.

Quick Setup:

  1. Open Claude Settings (click your profile icon → Settings)
  2. Go to Connectors → Add custom connector
  3. Enter the following details:
    • Name: TranscriptAPI
    • URL: https://transcriptapi.com/mcp
  4. Click Add, then click Connect to authorize via your browser.
  5. (Optional) In the connector settings, change permissions to "Allow unsupervised" for seamless usage.

Full Guide: Claude Integration Guide →

</details>

<details> <summary><b>Install in Claude Code (CLI)</b></summary>

claude mcp add --transport http transcript-api https://transcriptapi.com/mcp

</details>

<details> <summary><b>Install in ChatGPT</b></summary>

ChatGPT supports OAuth for secure authentication. Enable Developer Mode in ChatGPT settings first.

Quick Setup:

  1. In ChatGPT, go to Settings → Connected Apps → Add
  2. Enter the MCP Server URL: https://transcriptapi.com/mcp
  3. Client ID & Secret are optional:
    • Leave them blank to use Dynamic Client Registration (recommended/simpler).
    • (Advanced) Or enter Client ID & Secret from your dashboard for static registration.
  4. Click Add and authorize via the browser popup.

Full Guide: ChatGPT Integration Guide →

</details>

<details> <summary><b>Install in VS Code</b></summary>

<img alt="Install in VS Code" src="https://img.shields.io/badge/VS_Code-Install_TranscriptAPI_MCP-0098FF?style=for-the-badge&logo=visualstudiocode&logoColor=white">

Or add this to VS Code user settings (settings.json):

"mcp.servers": {
  "transcript-api": {
    "type": "http",
    "url": "https://transcriptapi.com/mcp",
    "headers": {
      "Authorization": "Bearer YOUR_API_KEY"
    }
  }
}

</details>

<details> <summary><b>Install in OpenAI Agent Builder</b></summary>

OpenAI Agent Builder currently requires API Key authentication (OAuth not yet supported).

  1. Create a new Agent
  2. Under "Actions" or "Tools", add a new MCP Server
  3. URL: https://transcriptapi.com/mcp
  4. Auth Type: API Key
  5. Paste your API Key from the dashboard

Step-by-Step Guide →

</details>

<details> <summary><b>Install in Windsurf</b></summary>

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "transcript-api": {
      "serverUrl": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Cline</b></summary>

{
  "mcpServers": {
    "transcript-api": {
      "url": "https://transcriptapi.com/mcp",
      "type": "streamableHttp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Zed</b></summary>

In Zed settings.json:

{
  "context_servers": {
    "transcript-api": {
      "source": "remote",
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Roo Code</b></summary>

{
  "mcpServers": {
    "transcript-api": {
      "type": "streamable-http",
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Amp</b></summary>

amp mcp add transcript-api https://transcriptapi.com/mcp --header "Authorization: Bearer YOUR_API_KEY"

</details>

<details> <summary><b>Install in Augment Code</b></summary>

In settings.json under augment.advanced:

"augment.advanced": {
  "mcpServers": [
    {
      "name": "transcript-api",
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  ]
}

</details>

<details> <summary><b>Install in Kilo Code</b></summary>

In .kilocode/mcp.json:

{
  "mcpServers": {
    "transcript-api": {
      "type": "streamable-http",
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in JetBrains AI Assistant</b></summary>

In Settings → Tools → AI Assistant → MCP:

{
  "mcpServers": {
    "transcript-api": {
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Gemini CLI</b></summary>

In ~/.gemini/settings.json:

{
  "mcpServers": {
    "transcript-api": {
      "httpUrl": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Qwen Coder</b></summary>

In ~/.qwen/settings.json:

{
  "mcpServers": {
    "transcript-api": {
      "httpUrl": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Google Antigravity</b></summary>

{
  "mcpServers": {
    "transcript-api": {
      "serverUrl": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Trae</b></summary>

{
  "mcpServers": {
    "transcript-api": {
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in LM Studio</b></summary>

In mcp.json:

{
  "mcpServers": {
    "transcript-api": {
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in BoltAI</b></summary>

In Plugins → JSON Config:

{
  "mcpServers": {
    "transcript-api": {
      "url": "https://transcriptapi.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

</details>

<details> <summary><b>Install in Warp</b></summary>

In Settings → AI → MCP:

{
  "transcript-api": {
    "url": "https://transcriptapi.com/mcp",
    "headers": {
      "Authorization": "Bearer YOUR_API_KEY"
    }
  }
}

</details>

<details> <summary><b>Install in Perplexity Desktop</b></summary>

In Settings → Connectors → Advanced:

{
  "url": "https://transcriptapi.com/mcp",
  "headers": {
    "Authorization": "Bearer YOUR_API_KEY"
  }
}

</details>


🔐 Authentication

API Key

Simple and universal. Works with every MCP client.

  1. Get your API key from your dashboard
  2. Keys start with sk_ prefix
  3. Add to config as a Bearer token:
"headers": {
  "Authorization": "Bearer sk_your_api_key_here"
}

Security: Store keys in environment variables where possible and never commit them to version control.

OAuth 2.1

Automatic, secure authentication without manual key management.

Dynamic Client Registration (DCR):

  • Supported by: Claude Desktop, Claude Web, ChatGPT
  • Just add the MCP URL — client auto-registers
  • No credentials needed
  • You'll authorize once via browser redirect

Static Client Registration:

  • Supported by: ChatGPT (optional)
  • Get Client ID + Secret from the MCP Integration Dashboard
  • More control over client identity

Full reference: Authentication docs →


🧰 Available Tools

All six tools are exposed automatically once you connect. 1 credit = 1 successful (HTTP 200) request. Failed/rate-limited calls do not consume credits.

1. get_youtube_transcript

Fetch the transcript for any YouTube video — as markdown (with metadata) or structured JSON. Drop the output straight into summarizers, search indexes, or AI pipelines.

Parameter Type Default Description
video_url string required YouTube URL (full or short) or 11-char video ID
send_metadata boolean true Include video title, author, thumbnail
format string "text" "text" (markdown) or "json"
include_timestamp boolean true Add timestamps to each segment

Cost: 1 credit per successful request.

Example output (markdown):

# Metadata

## Title: Rick Astley - Never Gonna Give You Up
## Author: RickAstleyVEVO

# Transcript

[0.0s] Never gonna give you up
[4.12s] Never gonna let you down

Example output (JSON):

{
  "transcript": [
    { "text": "Never gonna give you up", "start": 0.0, "duration": 4.12 },
    { "text": "Never gonna let you down", "start": 4.12, "duration": 3.85 }
  ],
  "metadata": { "title": "Rick Astley...", "author_name": "RickAstleyVEVO" }
}

2. search_youtube

Search YouTube for videos or channels. Filter by type and paginate with a continuation token — perfect for discovery, research, and building content pipelines.

Parameter Type Default Description
query string required Search query
search_type string "video" "video" or "channel"
continuation string null Token from a prior call for next page

Cost: 1 credit per page (~20 results per page).

Example prompt:

Search YouTube for "transformer architecture explained" and pick the
top 3 results by relevance.

3. get_channel_latest_videos <sub>· FREE</sub>

Get the ~15 most recent uploads from any channel via RSS — no credits required. Perfect for monitoring, daily recaps, or triggering downstream pipelines.

Parameter Type Default Description
channel string required @handle, channel URL, or UC… channel ID

Cost: Free.

Example prompt:

Every morning, list new uploads from @lexfridman and @hubermanlab.

4. search_channel_videos

Search inside one specific channel for videos matching a query. Great for researching a creator's content or finding niche topics in large channels.

Parameter Type Default Description
channel string required @handle, channel URL, or UC… ID
query string required Query to search within the channel
continuation string null Pagination token

Cost: 1 credit per page (~30 results per page).

Example prompt:

On Andrew Huberman's channel, find every video about sleep.

5. list_channel_videos

List every video on a channel, ~100 per page. Ideal for building databases, bulk transcript extraction, or auditing a channel's full content library.

Parameter Type Default Description
channel string required @handle, channel URL, or UC… ID
continuation string null Pagination token

Cost: 1 credit per page (~100 results per page).


6. list_playlist_videos

Get every video in a YouTube playlist (PL/UU/LL/FL/OL IDs supported). Process entire courses, lecture series, or curated collections in a single call.

Parameter Type Default Description
playlist string required Playlist URL or playlist ID
continuation string null Pagination token

Cost: 1 credit per page (~100 results per page).


💡 Use Cases & Prompts

Use Case Example Prompt
📝 Summarize a video "Summarize the key points from this video: [URL]"
🔍 Research a topic "Search YouTube for the 5 most-watched videos on neural radiance fields; summarize each."
🧠 Study notes "Create study notes from this MIT lecture series playlist: [PLAYLIST URL]"
⚖️ Compare perspectives "Compare arguments in these two videos: [URL1] [URL2]"
🌐 Translate "Translate this video's transcript to Spanish: [URL]"
✍️ Repurpose content "Turn this video into a 1,500-word blog post: [URL]"
📡 Monitor a creator "Each morning, list new uploads from @hubermanlab and tell me which to watch."
🏛️ Build a content database "Pull every video from @veritasium and store title + transcript."
🎯 Competitor analysis "Search inside @MKBHD for any video about [competitor product] and summarize the takeaways."

💳 Pricing & Rate Limits

Plan Price Credits Rate Limit
Free $0 (one-time) 100 60 req/min
Starter Monthly $5/month 1,000/month 200 req/min
Starter Annual $54/year ($4.50/mo) 1,000/month 300 req/min
  • 1 Credit = 1 successful request (HTTP 200)
  • Failed and rate-limited requests do not consume credits.
  • get_channel_latest_videos is free (no credits charged).
  • View pricing · Manage credits

🚨 Troubleshooting

<details> <summary><b>Authentication errors (401)</b></summary>

  • Verify your API key starts with sk_
  • Check for extra spaces when copying
  • Ensure the key is active in your dashboard
  • If using OAuth, try re-authorizing </details>

<details> <summary><b>No credits (402)</b></summary>

  • Check your credit balance at the dashboard
  • Purchase more credits or upgrade your plan </details>

<details> <summary><b>Video not available (404)</b></summary>

  • The video might not have captions/subtitles enabled
  • The video might be private or age-restricted
  • The video might be region-locked </details>

<details> <summary><b>Rate limiting (429)</b></summary>

  • Respect the Retry-After header
  • Implement exponential backoff in your client
  • Upgrade to a paid plan for higher limits </details>

<details> <summary><b>OAuth issues</b></summary>

  • Clear browser cookies and try again
  • For ChatGPT, try switching between Dynamic and Static registration
  • Ensure popup blockers aren't preventing the auth window </details>

🔗 Also available as a REST API

Building an app instead of an agent? The same backend ships as a JSON REST API.

MCP REST API
Best for AI assistants & agents Apps & backend services
Setup Add a URL Code integration
Get started This README API docs → · Swagger →

Base URL: https://transcriptapi.com/api/v2


🤝 Connect


📋 MCP Registry

This server is published to the official Model Context Protocol Registry under the name:

com.transcriptapi/youtube-transcript-and-youtube-search

<p align="center"> <sub>© 2026 Zero Point Studio d.o.o. · Released under the <a href="./LICENSE">MIT License</a></sub> </p>

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured