Skip to main content
Glama
Milor123

mcp-youtube-transcript-downloader

by Milor123

šŸŽ¬ MCP YouTube Transcript Downloader

Download YouTube video transcripts directly into your AI workflow — no more copying/pasting!

npm version License: MIT Node.js 18+

A minimalist MCP server that fetches transcripts from YouTube videos using the Supadata API. Perfect for AI assistants that need to analyze video content, create summaries, or extract key information.

⚔ Features

  • šŸŽÆ Two handy tools — get_transcript for quick downloads, get_transcript_and_save for full path control

  • šŸ“¦ Zero dependencies — lightweight and fast

  • šŸ”‘ Flexible auth — token from file or environment variable

  • šŸ›”ļø Basic error handling — clear error messages when things go wrong


Related MCP server: ytt-mcp

šŸš€ Quick Start

Prerequisites

  • Node.js 18 or higher

  • A free Supadata API key

Installation

# Install dependencies
npm install

# Build the project
npm run build

# Or use directly with npx
npx @milor123/mcp-youtube-transcript-downloader

Get Your Free API Key

Sign up at https://supadata.ai

100 requests/month FREE — no credit card required! Perfect for personal projects and experimentation.

Configuration

Create a token_api.txt file in the project root with your API key:

sd_your_api_key_here

Or set an environment variable:

export SUPADATA_API_KEY="sd_your_api_key_here"

šŸ“„ Available Tools

get_transcript

Downloads a YouTube video transcript and saves it to a .txt file. Returns the transcript content and filename for use in subsequent operations.

Parameter

Type

Required

Description

youtube_url

string

āœ…

Full YouTube video URL (e.g., https://www.youtube.com/watch?v=dQw4w9WgXcQ)

filename

string

āŒ

Custom filename without extension. If omitted, uses the video ID

Returns:

  • content — The full transcript text

  • _meta.filename — The filename where transcript was saved

  • _meta.videoId — The extracted YouTube video ID

Example request:

{
  "youtube_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "filename": "rick_roll_transcript"
}

Example response:

{
  "content": [
    {
      "type": "text",
      "text": "Never gonna give you up, never gonna let you down..."
    }
  ],
  "_meta": {
    "filename": "rick_roll_transcript.txt",
    "videoId": "dQw4w9WgXcQ"
  }
}

get_transcript_and_save

Downloads a YouTube video transcript and saves it to a specific filepath of your choice. Great when you need precise control over where files are stored.

Parameter

Type

Required

Description

youtube_url

string

āœ…

Full YouTube video URL

filepath

string

āœ…

Full filepath including .txt extension (e.g., C:/Users/You/Documents/transcript.txt)

Returns:

  • Confirmation message with the filepath where the transcript was saved

Example request:

{
  "youtube_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "filepath": "C:/Users/You/Documents/my_transcripts/rick_roll.txt"
}

Example response:

{
  "content": [
    {
      "type": "text",
      "text": "Transcript saved to C:/Users/You/Documents/my_transcripts/rick_roll.txt"
    }
  ]
}

šŸ’” Tip: This tool automatically creates parent directories if they don't exist!


šŸ¤– AI Client Configuration

OpenCode

{
  "mcpServers": {
    "youtube-transcript": {
      "type": "remote",
      "url": "https://your-remote-mcp-server.com/youtube-transcript",
      "environment": {
        "SUPADATA_API_KEY": "sd_your_api_key_here"
      }
    }
  }
}

Remote hosting allows sharing a single MCP server across multiple users. Contact the maintainer for server access.

Option 2 - Local (npx installation)

{
  "mcpServers": {
    "youtube-transcript": {
      "type": "local",
      "command": ["npx", "@milor123/mcp-youtube-transcript-downloader"],
      "enabled": true,
      "environment": {
        "SUPADATA_API_KEY": "sd_28bee9cd727665ed7a6ceebcf4c90334"
      }
    }
  }
}

Claude Desktop

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "node",
      "args": ["/full/path/to/dist/index.js"],
      "env": {
        "SUPADATA_API_KEY": "sd_your_api_key_here"
      }
    }
  }
}

šŸ’° Supadata Free Tier

Feature

Limit

Requests per month

100

Credit card required

āŒ No

Cost

Free!

Get your API key at https://supadata.ai


šŸ“ Project Structure

@milor123/mcp-youtube-transcript-downloader/
ā”œā”€ā”€ src/
│   └── index.ts          # Main MCP server implementation
ā”œā”€ā”€ dist/                 # Compiled JavaScript output (generated after build)
ā”œā”€ā”€ token_api.txt         # Your API token (never commit this!)
ā”œā”€ā”€ package.json
ā”œā”€ā”€ tsconfig.json
└── README.md

ā¤ļø Credits & Acknowledgments

This project was inspired by a script created by Mutti from GreasyFork. Thank you for the original idea that sparked this MCP server!


šŸ“œ License

MIT License — feel free to use it in your projects!

Related MCP Connectors

Related MCP Servers