A Model Context Protocol server that gives any MCP client (Claude Desktop, Cursor, and others) access to the TranscriptFetch API: a production transcript API for YouTube, TikTok and Instagram, with AI transcription when captions are missing. Fetch transcripts, search videos, list channels and playlists, and check your credit balance.
- Create a free account at transcriptfetch.com. No card needed.
- Open Dashboard, then API keys and create a key. It starts with
tf_live_. - Put it in
TRANSCRIPTFETCH_API_KEYin the client configuration below.
Every account gets 50 free credits a month. Failures are free: a fetch that returns no transcript is never charged.
Runs locally over stdio and calls the TranscriptFetch API with your key. Prefer a hosted, remote server? Point your client at https://transcriptfetch.com/mcp instead (OAuth or API key). The hosted server waits inline for short-form AI transcription, so no polling is needed there.
| Tool | What it does |
|---|---|
get_transcript |
Transcript for a video: YouTube, TikTok, Instagram, or a direct media URL. When a video has no captions but has speech, the audio is transcribed automatically; ai_fallback: true goes straight to the audio. Optional markdown (timestamped, linked paragraphs), chunks (about 500 tokens each, for a vector store) and timestamps: false for text only |
search_videos |
Search YouTube (default), TikTok or Instagram. On YouTube, filter by upload_date, duration and captions, and sort by views |
search_channels |
Find YouTube channels (default) or playlists by keyword |
list_channel_videos |
A YouTube channel's videos, Shorts or live streams (tab), sorted newest, popular or oldest, or searched with query; also a TikTok or Instagram profile |
list_channel_playlists |
A YouTube channel's playlists, or its podcasts |
list_playlist_videos |
A YouTube or TikTok playlist's videos |
get_credits |
Remaining credit balance for the key. Never billed |
These are the same seven tools, with the same inputs, as the hosted server at https://transcriptfetch.com/mcp: npm run sync-tools regenerates them from its public card.
Pricing is per successful result: a caption fetch or a video list costs 1 credit, and AI transcription of the audio costs 1 credit per started 5 minutes of audio, charged only on delivery. Failed, blocked and empty results are never charged, which matters on short-form video where many clips have no speech at all.
No install needed. Run it on demand with npx:
TRANSCRIPTFETCH_API_KEY=tf_live_... npx -y transcriptfetch-mcpOr install globally:
npm install -g transcriptfetch-mcpRequires Node 18+.
git clone https://github.com/TranscriptFetch/mcp-server
cd mcp-server && npm install && npm run buildThen point your client at the built entrypoint with "command": "node" and
"args": ["/absolute/path/to/mcp-server/dist/index.js"].
Add this to claude_desktop_config.json (Settings then Developer then Edit Config):
{
"mcpServers": {
"transcriptfetch": {
"command": "npx",
"args": ["-y", "transcriptfetch-mcp"],
"env": { "TRANSCRIPTFETCH_API_KEY": "tf_live_..." }
}
}
}Add the same block under mcpServers in your Cursor MCP settings.
Restart the client, and the five tools appear.
Once connected, ask your assistant naturally:
Get the transcript for https://youtu.be/aircAruvnKk and summarize the key points.
Search YouTube for "how transformers work" and list the top 5 videos.
List the latest videos from @lexfridman and pull the transcript of the newest one.
How many TranscriptFetch credits do I have left?
The assistant picks the matching tool and works from the returned transcript or video list.
| Env var | Required | Default |
|---|---|---|
TRANSCRIPTFETCH_API_KEY |
yes | none |
TRANSCRIPTFETCH_BASE_URL |
no | https://transcriptfetch.com |
The server speaks MCP over stdio, so there is no port to expose. -i is
required: without an attached stdin the transport closes immediately and the
container looks like it crashed.
docker build -t transcriptfetch-mcp .
docker run --rm -i -e TRANSCRIPTFETCH_API_KEY=tf_live_... transcriptfetch-mcp- API docs: https://transcriptfetch.com/docs?utm_source=github&utm_medium=mcp&utm_campaign=youtube-tiktok-instagram-transcript-mcp
- MCP docs: https://transcriptfetch.com/docs/mcp?utm_source=github&utm_medium=mcp&utm_campaign=youtube-tiktok-instagram-transcript-mcp
- Node SDK: https://github.com/TranscriptFetch/transcript-api-node
- Python SDK: https://github.com/TranscriptFetch/transcript-api-python
MIT
