
TranscriptAPI: YouTube Transcript and Search MCP
com.transcriptapiPublished by transcriptapi.comOfficial publisherv1.0.1Updated Nov 5, 2026
TranscriptAPI.com: hosted YouTube transcripts, search, channels and playlists for AI agents
Overview
Hosted YouTube toolkit for AI assistants: fetch transcripts, search videos and channels, browse channels and playlists, and track new uploads.
- What you can do
- Fetch timestamped transcripts for any YouTube video, as markdown or structured JSON
- Look up video info, transcript languages and rich metadata such as views, dates and tags
- Search YouTube for videos, channels, playlists or movies, with filters and pagination
- Browse channels: profile, curated sections, community posts, playlists and video feeds
- Search within a channel and list playlist videos
- Poll a channel's latest uploads via RSS
- When to use it
- Useful when you want an assistant to summarize, compare, translate or repurpose YouTube videos, research a topic across search results, or monitor and audit a channel's content without running your own scraper.
- Requirements
- A remote streamable HTTP endpoint; no local install. A TranscriptAPI account is required, authenticated either by OAuth 2.1 (browser sign-in, dynamic or static client registration) or by an API key sent as a Bearer token in the Authorization header. Network access to the service.
Installation
In SourceWeft
- Open TranscriptAPI: YouTube Transcript and Search MCP in the dashboard and add it to a workspace.
- Connect the required credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/com.transcriptapi%2Fyoutube-transcript-and-youtube-search/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.
{
"mcpServers": {
"transcriptapi-youtube-transcript-and-sea": {
"type": "http",
"url": "https://transcriptapi.com/mcp"
}
}
}README
YouTube Transcript + YouTube Search MCP for AI Agents
The fastest YouTube transcript + YouTube search MCP for AI agents. Try for free.
12 tools: transcripts, video & channel metadata, video search, channel browsing, in-channel search, playlist extraction, and new-upload polling, for Claude, ChatGPT, Cursor, VS Code, Claude Code, and 20+ clients.
[Install in Cursor] [Install in VS Code]
[Website] [Docs] [Swagger] [MIT License]
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.
Quick taste:
That single prompt uses 3 of our 12 tools (search_youtube, search_channel_videos, get_youtube_transcript) without you writing a line of code.
🧩 Install as an Agent Plugin · easiest
This repository root is a conformant Agent Plugins 1.0.0 package: the portable format published 2026-08-06 and supported by ChatGPT, Codex, Cursor, GitHub Copilot, Kiro and VS Code. One install gets you the MCP server and a bundled youtube skill that teaches your agent when to use each tool and how not to waste credits.
VS Code: Command Palette → Chat: Install Plugin From Source, then paste:
Or register a local clone in settings.json:
Cursor: Customize in the sidebar → find the plugin → Install. For a local clone:
Then Developer: Reload Window.
Add to Cursor: MCP server only, no clone. Paste this deeplink into your browser:
ChatGPT, Codex, GitHub Copilot, Kiro, any other client: point your client's plugin mechanism at this repository, or at a local clone. Agent Plugins 1.0.0 standardizes the package format, not installation, so each client owns its own install flow.
30-second example
The agent calls get_youtube_transcript, gets the full timestamped transcript and summarizes it. No API key to configure: the first call opens an OAuth sign-in (free account, 100 credits, no card). Then try:
There are no credentials in this package: Agent Plugins 1.0.0 forbids embedded secrets, and authorization is client-managed. Verify the package yourself:
🛠️ 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:
Install in Cursor (One-Click / Manual)
One-Click Install:
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:
Install in Claude (Desktop & Web) - Recommended
Claude supports adding MCP servers directly via the "Custom Connector" UI.
Quick Setup:
- Open Claude Settings (click your profile icon → Settings)
- Go to Connectors → Add custom connector
- Enter the following details:
- Name:
TranscriptAPI - URL:
https://transcriptapi.com/mcp
- Name:
- Click Add, then click Connect to authorize via your browser.
- (Optional) In the connector settings, change permissions to "Allow unsupervised" for seamless usage.
Full Guide: Claude Integration Guide →
Install in Claude Code (CLI)
Install in ChatGPT
ChatGPT supports OAuth for secure authentication. Enable Developer Mode in ChatGPT settings first.
Quick Setup:
- In ChatGPT, go to
Settings→Connected Apps→Add - Enter the MCP Server URL:
https://transcriptapi.com/mcp - 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.
- Click Add and authorize via the browser popup.
Full Guide: ChatGPT Integration Guide →
Install in OpenAI Agent Builder
OpenAI Agent Builder currently requires API Key authentication (OAuth not yet supported).
- Create a new Agent
- Under "Actions" or "Tools", add a new MCP Server
- URL:
https://transcriptapi.com/mcp - Auth Type: API Key
- Paste your API Key from the dashboard
Install in Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
Install in Cline
Install in Zed
In Zed settings.json:
Install in Roo Code
Install in Amp
Install in Augment Code
In settings.json under augment.advanced:
Install in Kilo Code
In .kilocode/mcp.json:
Install in JetBrains AI Assistant
In Settings → Tools → AI Assistant → MCP:
Install in Gemini CLI
In ~/.gemini/settings.json:
Install in Qwen Coder
In ~/.qwen/settings.json:
Install in Google Antigravity
Install in Trae
Install in LM Studio
In mcp.json:
Install in BoltAI
In Plugins → JSON Config:
Install in Warp
In Settings → AI → MCP:
Install in Perplexity Desktop
In Settings → Connectors → Advanced:
🔐 Authentication
API Key
Simple and universal. Works with every MCP client.
- Get your API key from your dashboard
- Keys start with
sk_prefix - Add to config as a Bearer token:
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 12 tools are exposed automatically once you connect. Successful calls cost 1 credit unless a tool states otherwise below. Failed/rate-limited calls do not consume credits.
Which video tool? Use
get_youtube_video_info(free) to discover transcript languages before fetching a transcript. Useget_video_metadata(1 credit) for view/like counts, publish date, description, duration, tags, or related videos.
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.
Cost: 1 credit per successful request.
Example output (markdown):
Example output (JSON):
2. get_youtube_video_info · FREE
Basic metadata (title, author, thumbnail) plus the list of available transcript languages: call this before get_youtube_transcript to pick a language.
Cost: Free.
For view/like counts, publish date, description, duration, tags, or related videos, use get_video_metadata instead.
3. get_video_metadata
Rich video metadata without needing captions: title, view/like-count text, publish date, structured description + links, uploading-channel summary, and thumbnails. Optional include extras pull heavier player-sourced data (duration, category, tags, caption-track inventory) and related videos.
Cost: 1 credit per successful request.
Example prompt:
4. search_youtube
Search YouTube for videos, channels, playlists, or movies. Filter by type, sort, upload date, or duration, and paginate with a continuation token, perfect for discovery, research, and building content pipelines.
Cost: 1 credit per page (~20 results per page).
Example prompt:
5. get_channel_info
A channel's profile: title, @handle, verified flag, subscriber/video-count text, description, keywords, tags, thumbnails, banners, and the tabs it exposes. Not paginated.
Cost: 1 credit per successful request.
Check the returned tabs before calling get_channel_sections or list_channel_videos with a tab.
6. get_channel_latest_videos · FREE
Get the ~15 most recent uploads from any channel via RSS. Perfect for monitoring, daily recaps, or triggering downstream pipelines.
Cost: Free.
Example prompt:
7. 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.
Cost: 1 credit per page (~30 results per page).
Example prompt:
8. list_channel_videos
List a channel's feed with pagination. Use tab to choose the uploads feed (default, ~100/page), Shorts, or live streams (~48/page), and the optional sort to order the Videos tab by latest, popular, or oldest. Ideal for building databases, bulk transcript extraction, or auditing a channel's full content library.
Sorting. Add sort=latest, popular, or oldest to channel/videos to get a channel's videos in the order you want, for example its most-popular uploads first. A sorted page returns about 30 videos (an unsorted page returns about 100), and every page costs the same 1 credit.
Sorted results come from YouTube's Videos tab (long-form only); Shorts have their own tab=shorts feed.
When paging, send the same sort on each request.
Every item carries members_only: true only when YouTube badges the video "Members only", and those items have no viewCountText, because YouTube does not publish view counts for membership content. It is always false on the uploads feed, on tab: "shorts", and on playlists.
Items from tab: "streams" carry lengthText and publishedTimeText (for example Streamed 2 years ago, or LIVE and a watching count while the stream is live). tab: "shorts" returns null for both, because YouTube's Shorts grid publishes neither a duration nor a publish date. On the channel-tab feeds (tab: "videos" with sort, tab: "shorts", tab: "streams") channelId, channelTitle, channelHandle and index are null.
Cost: 1 credit per page.
9. list_channel_playlists
Paginated list of the playlists on a channel (id, title, URL, video-count text, thumbnails). Pass a returned playlist id to list_playlist_videos to get its videos.
Cost: 1 credit per page.
10. list_channel_posts
Paginated list of a channel's community (Posts tab) content: text, publish time, like-count text, and attachments (image, multi-image, video, playlist, or poll). Channels without a community tab return an empty results list, not an error.
Cost: 1 credit per page.
11. get_channel_sections
The curated, grouped sections of a channel page: titled shelves of videos, playlists, shorts, or featured channels, in the channel's own order. Not paginated.
Cost: 1 credit per successful request.
podcasts and releases exist only on channels that have them (empty results otherwise).
12. 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.
Cost: 1 credit per page (~100 results per page).
💡 Use Cases & Prompts
💳 Pricing & Rate Limits
- 1 Credit = 1 successful request (HTTP 200)
- Failed and rate-limited requests do not consume credits.
get_channel_latest_videosis free (no credits charged).- View pricing · Manage credits
🚨 Troubleshooting
Authentication errors (401)
- 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
No credits (402)
- Check your credit balance at the dashboard
- Purchase more credits or upgrade your plan
Video not available (404)
- The video might not have captions/subtitles enabled
- The video might be private or age-restricted
- The video might be region-locked
Rate limiting (429)
- Respect the
Retry-Afterheader - Implement exponential backoff in your client
- Upgrade to a paid plan for higher limits
OAuth issues
- Clear browser cookies and try again
- For ChatGPT, try switching between Dynamic and Static registration
- Ensure popup blockers aren't preventing the auth window
🔗 Also available as a REST API
Building an app instead of an agent? The same backend ships as a JSON REST API.
Base URL: https://transcriptapi.com/api/v2
🤝 Connect
- 🌐 Website: transcriptapi.com
- 📚 Docs: transcriptapi.com/docs
- 🔧 API Reference: transcriptapi.com/docs/api
- 🤖 MCP Setup Guides: Claude · ChatGPT · OpenAI Agent Builder
- 💬 Contact: transcriptapi.com/contact
- 📂 Listed in: awesome-agent-plugins, our directory of verified Agent Plugins on the open standard
📋 MCP Registry
This server is published to the official Model Context Protocol Registry under the name:
© 2026 Zero Point Studio d.o.o. · Released under the MIT License
Source: README.md at commit 228eba5
Tools
0Version history
2- v1.0.1LatestNov 5, 2026
- v1.0.0Sep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts