transcriptor-mcp
Description
An MCP server (stdio + HTTP/SSE) that fetches video transcripts/subtitles via yt-dlp, with pagination for large responses. Supports YouTube, Twitter/X, Instagram, TikTok, Twitch, Vimeo, Facebook, Bilibili, VK, Dailymotion. Whisper fallback — transcribes audio when subtitles are…
About
An MCP server (stdio + HTTP/SSE) that fetches video transcripts/subtitles via yt-dlp, with pagination for large responses. Supports YouTube, Twitter/X, Instagram, TikTok, Twitch, Vimeo, Facebook, Bilibili, VK, Dailymotion. Whisper fallback — transcribes audio when subtitles are unavailable (local or OpenAI API). Works…
Details
- Author
- samson-art
- Categories
- Web Scraping, Other, AI
Jump to
Setup
Install transcriptor-mcp in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/samson-art/transcriptor-mcp
Follow the installation instructions in the repository README, then restart your MCP client.
🎬 Now your AI assistant can watch videos!
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
https://gateway.mcpal.io/mcp/transcriptor
claude mcp add --transport http transcriptor https://gateway.mcpal.io/mcp/transcriptor
Then run/mcpand approve the sign-in in the browser. After this,claude mcp listshows✔ Connected.
[mcp_servers.transcriptor] url = "https://gateway.mcpal.io/mcp/transcriptor" auth = "oauth"
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 theCodex MCP docs.
If your client is not in the list above, add the server with this configuration:
{ "mcpServers": { "transcriptor": { "url": "https://gateway.mcpal.io/mcp/transcriptor" } } }
If you want to run the server yourself, readSelf-host. The tools are the same and you need no account.
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 acceptsurl. This is a link from asupported platformor a plain YouTube ID. Each tool returnscontent(text for the chat) andstructuredContent(typed JSON for your code).
Clean 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 hasnext_cursor.
- type—officialorauto
- lang— a language code
- response_limit— default50000, minimum1000, maximum200000
- next_cursor— the cursor of the previous response
Response: the fields ofget_transcript, plusformat(srtorvtt) andcontent.
Response:officialandauto. Each field is a sorted list of language codes. Use this tool first, then givetypeandlangto the tools above.
- identity —videoId,title,description,webpageUrl
- author —uploader,uploaderId,channel,channelId,channelUrl
- numbers —duration,uploadDate,viewCount,likeCount,commentCount
- classification —tags,categories,liveStatus,isLive,wasLive,availability
- images —thumbnailandthumbnails
Response:chapters. Each item hasstartTime,endTime, andtitle. When the video has no chapters, the list is empty.
- timecode—"MM:SS"or"HH:MM:SS.mmm"
- seconds— an alternative totimecode. Give one of the two, not both
- format—jpeg(default) orpng
- width— default1280, maximum1920, never larger than the source
- quality—2to31, for jpeg only
Response: an image block, plustimestampSeconds,timestamp,mimeType,sizeBytes, andwidth. This tool needsffmpeg. The Docker image includes it.
- url— a playlist URL, or a watch URL withlist=
- type,lang,format— the same asget_raw_subtitles
- playlistItems— a yt-dlp-Ivalue such as1:5,1,3,7, or-1
- maxItems— the maximum number of videos
Response:results. Each item hasvideoIdandtext.
- query— the search text
- limit— default 10, maximum 50
- offset— the number of results to skip
- uploadDateFilter—hour,today,week,month, oryear
- response_format—json(default) ormarkdown
Response:results. Each item hasvideoId,title,url,duration,uploader,viewCount, andthumbnail.
Four tools have an interactive interface:get_transcript,get_video_info,get_video_frame, andsearch_videos. Clients that supportMCP Appsand the ChatGPT Apps SDK show this interface in the chat. Other clients get the same data as text and JSON.
search_videos·"model context protocol MCP server production"
get_video_frame· an architecture slide at 3:30
get_transcript· a 3-minute MCP explainer, official captions
get_video_info· channel, views, likes, and 169 caption languages
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 toolsearch_videosworks with YouTube only, through yt-dlpytsearch.
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:
docker run --rm -p 4200:4200 artsamsonov/transcriptor-mcp:latest
Then point your client athttp://localhost:4200/mcp.
For stdio, give the image an explicit command:
docker run --rm -i artsamsonov/transcriptor-mcp:latest npm run start:mcp
{ "mcpServers": { "transcriptor": { "command": "docker", "args": ["run", "--rm", "-i", "artsamsonov/transcriptor-mcp:latest", "npm", "run", "start:mcp"] } } }
The server starts with no environment variables. Each variable below is optional.
The same port servesGET /healthandGET /metrics. The metrics are in Prometheus format and include themcp_counters.
Transport.The server acceptsPOST /mcponly.GETandDELETEreturn405. The server is stateless and sends noMcp-Session-Id.
The Node process does not check bearer tokens. Put a reverse proxy or a gateway in front of it for authentication and TLS. The hosted endpoint works this way.
REST API.A second image gives the same extraction over plain HTTP:
docker run --rm -p 3000:3000 artsamsonov/transcriptor-mcp-api:latest
The Swagger interface is athttp://localhost:3000/docs. For a full stack with the API and the MCP server, readdocker-compose.example.yml.
npm ci npm run build npm run dev:mcp # stdio, hot reload npm run dev:mcp:http # Streamable HTTP, hot reload npm test
You need Node.js 20 or later, andyt-dlpin your PATH. Frame capture also needsffmpeg. Other scripts:lint,type-check,format,test:coverage,test:e2e:api, andtest:e2e:mcp.
Releases.The version comes frompackage.jsonat runtime, throughsrc/version.ts. Change this version, move the[Unreleased]entries of the changelog into the new version, then push avtag. CI builds both images and publishes theMCP Registryentry fromserver.json.
Layout.src/mcp.ts(stdio entry),src/mcp-http.ts(Streamable HTTP),src/mcp-core.ts(tools, prompts, widgets),src/youtube.ts(yt-dlp),src/whisper.ts,src/cache.ts,src/index.ts(REST API),load/(k6), andsrc/e2e/(Docker smoke tests).
Pull requests are welcome. Fork the repository, make a branch, and make sure thatnpm testandnpm run lintpass. Then open a pull request.
The hosted endpoint atgateway.mcpal.iois governed by theTerms of Serviceand thePrivacy Policy.
A server you host yourself is not covered by those documents. It is governed by the MIT License only.
Generate and edit images and create video (Veo, Sora, Seedance) from any AI agent via OpenRouter or any OpenAI-compatible API — files saved to disk with inline previews.
OpenAI-compatible MCP gateway for 787+ chat, image, and video models.
An MCP server for AI video generation. MCP server for AI video generation. Lets Claude, ChatGPT, OpenClaw , Hermes & other agents create AI videos and publish them to YouTube, TikTok, Instagram etc..
Atlas Cloud MCP Server (Image / Video / LLM APIs)
A powerful MCP server for AI image, video, and LLM APIs. Integrate models like Seedance and Nano Banana into your workflow with a simple, unified interface powered by Atlas Cloud.
Generate AI images, video & music inside Claude, ChatGPT, Cursor — any AI agent
Trim, watermark, extract audio from, and convert any video to 9:16 vertical — via REST API or MCP tools for Claude, Cursor, and other AI agents.
Transcribe audio and video files using the mocoVoice API, with integration for Claude Desktop.
Create editable image and video projects with Claude, Cursor or Codex, then review and publish them in Picorn.
MCP server that gives AI agents (Claude, Cursor, Codex, etc.) access to the full Runware.ai API — image generation, video generation, audio generation, 3D, upscaling, background removal, captioning, and more.
Add one endpoint and Claude, Cursor, or any MCP client can make video, images, music, and speech in chat. 100+ models, one API key.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




