YouTube Transcripts

by jkawamoto

19 stars
910 downloads
Not rated
GitHub

About

Integrates with YouTube's transcript API to retrieve and process captions from video URLs, enabling content analysis and information extraction from spoken video content.

Details

Author
jkawamoto
Repository
jkawamoto/mcp-youtube-transcript
GitHub stars
19
Downloads
910
License
MIT License
Categories
AI, Design, Developer Tools, Media, Infrastructure
Tags
#mobile, #integration

- Fetch plain or timestamped YouTube video transcripts.
- Retrieve video metadata (title, description, etc.).
- List available transcript languages for a video.
- Automatic pagination for long transcripts (default 50,000 characters per page).
- Supports proxy servers for restricted environments.
- Works with Claude, goose, and LM Studio.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name YouTube Transcripts
    Command (node, npx, python, etc.) uvx
    Arguments
    • Argument 1 --from
    • Argument 2 git+https://github.com/jkawamoto/mcp-youtube-transcript
    • Argument 3 mcp-youtube-transcript

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

> [!NOTE]
> You'll need uv installed on your system to use uvx command.

get_transcript

Fetches the transcript of a specified YouTube video. Parameters: url (string - required), lang (string - optional), next_cursor (string - optional)

get_timed_transcript

Fetches the transcript of a specified YouTube video with timestamps. Parameters: url (string - required), lang (string - optional), next_cursor (string - optional)

get_video_info

Fetches the metadata of a specified YouTube video. Parameters: url (string - required)

get_available_languages

Retrieves the available languages for the video. Parameters: url (string - required)

This MCP server provides the following tools:

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "youtube transcripts": {
            "env": {},
            "args": [
                "--from",
                "git+https://github.com/jkawamoto/mcp-youtube-transcript",
                "mcp-youtube-transcript"
            ],
            "command": "uvx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
    ],
    "command": "uvx"
}

Macos

{
    "env": [],
    "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
    ],
    "command": "uvx"
}

Windows

{
    "env": [],
    "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
    ],
    "command": "uvx"
}

YouTube Transcript MCP Server

uv
Python Application
pre-commit
GitHub License
Dockerhub

This MCP server retrieves transcripts for given YouTube video URLs.

Tools

This MCP server provides the following tools:

get_transcript

Fetches the transcript of a specified YouTube video.

Parameters

- url (string): The full URL of the YouTube video. This field is required. - lang (string, optional): The desired language for the transcript. Defaults to en if not specified. - next_cursor (string, optional): Cursor to retrieve the next page of the transcript.

get_timed_transcript

Fetches the transcript of a specified YouTube video with timestamps.

Parameters

- url (string): The full URL of the YouTube video. This field is required. - lang (string, optional): The desired language for the transcript. Defaults to en if not specified. - next_cursor (string, optional): Cursor to retrieve the next page of the transcript.

get_video_info

Fetches the metadata of a specified YouTube video.

Parameters

- url (string): The full URL of the YouTube video. This field is required.

get_available_languages

Retrieves the available languages for the video.

Parameters

- url (string): The full URL of the YouTube video. This field is required.

Installation

> [!NOTE] > You'll need uv installed on your system to use uvx command.

For goose

Please refer to this tutorial for detailed installation instructions: YouTube Transcript Extension.

For Claude

Download the latest MCP bundle mcp-youtube-transcript.mcpb from
the Releases page,
then open the downloaded .mcpb file or drag it into the Claude Desktop's Settings window.

<details>
<summary>Manually configuration</summary>

You can also manually configure this server for Claude Desktop.
Edit the claude_desktop_config.json file by adding the following entry under
mcpServers:

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/jkawamoto/mcp-youtube-transcript",
        "mcp-youtube-transcript"
      ]
    }
  }
}
After editing, restart the application.

</details>

For more information,

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.