tube CLI turns any YouTube URL (or media file) into a transcript — txt, srt,
vtt, md or json — straight from your terminal. The same package ships an
MCP server, so AI clients like Claude and Cursor
can transcribe and read YouTube transcripts as a native tool.
You need a TranscribeTube account and an API key. Grab one from your
API key page. Transcription
consumes account credit, same as the web app.
Install
tube binary.
Authenticate
Store your API key once:TUBE_API_KEY environment variable:
tube whoami (prints the account email and remaining credit).
Transcribe a YouTube video
The one-liner most people come for:--wait blocks until processing finishes and prints the transcript. Without it,
the command queues the job and returns the project id so you can poll later.
Choose an output format
txt (default), srt, vtt, md, and json are supported via -f/--format:
Common flags
| Flag | Description |
|---|---|
-w, --wait | Wait for completion and print the transcript |
-f, --format <fmt> | txt | srt | vtt | md | json (default txt) |
-l, --lang <code> | Language hint, e.g. en. Omit to auto-detect |
--webhook <url> | POST to this URL when transcription completes |
--json | Machine-readable JSON output for any command |
Work with projects
Every transcription is a project. Fetch transcripts later, in any format:project transcript also takes --no-speakers and --no-timecodes to strip
speaker labels or timecodes from the output.
MCP server (Claude, Cursor, Claude Code)
The package ships an MCP server over stdio. Point any MCP-capable client attube mcp and it gains three tools:
| Tool | What it does |
|---|---|
transcribe_youtube | Transcribe a YouTube URL and return speaker-labeled, timecoded text |
get_transcript | Fetch an existing project’s transcript by id, in any format |
list_projects | List recent projects with their ids and status |
Claude Desktop / Claude Code
Add this to your MCP config (claude_desktop_config.json, or .mcp.json for
Claude Code). The server reads your key from TUBE_API_KEY:
transcribe_youtube, gets the text, and works with it directly — no
copy-paste.
Cursor
Add the same block undermcpServers in Cursor’s MCP settings. The tools appear
automatically in the agent’s tool list.
The MCP server transcribes synchronously and waits up to 10 minutes for long
videos. For batch or unattended jobs, prefer the CLI with
--webhook.Scripting examples
API early access
Reference
- Full REST API: API Documentation
- Authentication & keys: Authentication
- Project lifecycle (UPLOAD → TRANSCRIPTION → DONE): Lifecycle

