Fetch video transcripts, subtitles, metadata, and chapters across 11 platforms with Whisper fallback and pagination support.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
One-click editor setup isnβt available for this listing yet β we donβt have a confirmed install command, and weβd rather show nothing than point your editor at the wrong package or host. Follow the projectβs own setup instructions, linked above.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Transcriptor MCP.
get_transcriptCleaned plain text (first chunk)
get_raw_subtitlesRaw SRT/VTT, paginated
get_available_subtitlesList official/auto languages
get_video_infoExtended metadata
get_video_chaptersChapter markers
get_video_frameSingle frame image at timestamp
Connect one server. Then ask Claude, ChatGPT or etc about a video: the transcript, the chapters, the metadata, or a single frame. It works with 11 platforms, not only YouTube.
Connect Β· What to ask Β· Widgets Β· Platforms Β· Self-host
The hosted endpoint is:
Then run /mcp and approve the sign-in in the browser. After this, claude mcp list shows β Connected.
| Client | What to do |
|---|---|
| Claude (web and desktop) | Open Settings β Customize β Connectors. Select Add β Add custom connector, paste https://transcriptor.gateway.mcpal.io/mcp, then select Add. |
| ChatGPT | Open Settings β Security and login and turn on Developer mode. Then open Plugins, select +, and paste https://transcriptor.gateway.mcpal.io/mcp. |
| Codex | Add the block below to ~/.codex/config.toml, then run codex mcp login transcriptor. The CLI, the IDE extension and the ChatGPT desktop app share this file. |
Note: ChatGPT developer mode is available on the web, for paid plans. Some releases show this control as Settings β Apps & Connectors β Advanced.
Note:
codex mcp addregisters stdio servers only, so a hosted server goes intoconfig.toml. See the Codex MCP docs.
If your client is not in the list above, add the server with this configuration:
If you want to run the server yourself, read Self-host. The tools are the same and you need no account.
| Ask for this | Tool |
|---|---|
| "Summarize this video for me" | get_transcript |
| "Give me the subtitles as an SRT file" | get_raw_subtitles |
| "Is there a German track for this video?" | get_available_subtitles |
| "Who published this and how many views?" | get_video_info |
| "Go to the part about pricing" | get_video_chapters |
| "Show me the screen at 4:12" | get_video_frame |
| "Get transcripts for the first 5 videos in this playlist" | get_playlist_transcripts |
| "Find recent videos about X" | search_videos (YouTube) |
Long transcripts come in parts. Each response gives a cursor for the next part, so no text is lost.
Each tool that takes a video accepts url. This is a link from a supported platform or a plain YouTube ID. Each tool returns content (text for the chat) and structuredContent (typed JSON for your code).
get_transcriptClean plain text, without timestamps, HTML, or speaker names. The tool finds the type and the language for you.
Response: videoId, type, lang, text, is_truncated, total_length, start_offset, end_offset. When more text is available, the response also has next_cursor.
get_raw_subtitlesRaw SRT or VTT content, in parts.
Input:
type β official or autolang β a language coderesponse_limit β default 50000, minimum 1000, maximum 200000next_cursor β the cursor of the previous responseResponse: the fields of get_transcript, plus format (srt or vtt) and content.
get_available_subtitlesResponse: official and auto. Each field is a sorted list of language codes. Use this tool first, then give type and lang to the tools above.
get_video_infoExtended metadata from yt-dlp:
videoId, title, description, webpageUrluploader, uploaderId, channel, channelId, channelUrlduration, uploadDate, viewCount, likeCount, commentCounttags, categories, liveStatus, isLive, wasLive, availabilitythumbnail and thumbnailsget_video_chaptersResponse: chapters. Each item has startTime, endTime, and title. When the video has no chapters, the list is empty.
get_video_frameInput:
timecode β "MM:SS" or "HH:MM:SS.mmm"seconds β an alternative to timecode. Give one of the two, not bothformat β jpeg (default) or pngwidth β default 1280, maximum 1920, never larger than the sourcequality β 2 to 31, for jpeg onlyResponse: an image block, plus timestampSeconds, timestamp, mimeType, sizeBytes, and width. This tool needs ffmpeg. The Docker image includes it.
get_playlist_transcriptsInput:
url β a playlist URL, or a watch URL with list=type, lang, format β the same as get_raw_subtitlesplaylistItems β a yt-dlp -I value such as 1:5, 1,3,7, or -1maxItems β the maximum number of videosResponse: results. Each item has videoId and text.
search_videosInput:
query β the search textlimit β default 10, maximum 50offset β the number of results to skipuploadDateFilter β hour, today, week, month, or yearresponse_format β json (default) or markdownResponse: results. Each item has videoId, title, url, duration, uploader, viewCount, and thumbnail.
Four tools have an interactive interface: get_transcript, get_video_info, get_video_frame, and search_videos. Clients that support MCP Apps and the ChatGPT Apps SDK show this interface in the chat. Other clients get the same data as text and JSON.
|
|
|
|
YouTube Β· Twitter/X Β· Instagram Β· TikTok Β· Twitch Β· Vimeo Β· Facebook Β· Bilibili Β· VK Β· Dailymotion Β· Reddit
Each tool that takes a video accepts a link from these 11 platforms. The tool search_videos works with YouTube only, through yt-dlp ytsearch.
The server does not download video or audio files for you. It returns text, metadata, and single frames.
The tools are the same as on the hosted endpoint. You need no account.
Run the server with Docker. The image serves Streamable HTTP on port 4200:
Then point your client at http://localhost:4200/mcp.
For stdio, give the image an explicit command:
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/samson-art-transcriptor-mcp)<a href="https://allmcps.com/mcp/samson-art-transcriptor-mcp"><img src="https://allmcps.com/api/badge/samson-art-transcriptor-mcp?style=directory" alt="Transcriptor MCP on AllMCPs" /></a>