J

mcp-server-youtube-transcript

...
Created 11/29/2024bykimtaeyoon83

Language:

JavaScript

Stars:

135

Forks:

19

YouTube Transcript Server

smithery badge

A Model Context Protocol server that enables retrieval of transcripts from YouTube videos. This server provides direct access to video captions and subtitles through a simple interface.

Installing via Smithery

To install YouTube Transcript Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @kimtaeyoon83/mcp-server-youtube-transcript --client claude

Components

Tools

  • get_transcript
    • Extract transcripts from YouTube videos
    • Inputs:
      • url (string, required): YouTube video URL or video ID
      • lang (string, optional, default: "en"): Language code for transcript (e.g., 'ko', 'en')

Key Features

  • Support for multiple video URL formats
  • Language-specific transcript retrieval
  • Detailed metadata in responses

Configuration

To use with Claude Desktop, add this server configuration:

{
  "mcpServers": {
    "youtube-transcript": {
      "command": "npx",
      "args": ["-y", "@kimtaeyoon83/mcp-server-youtube-transcript"]
    }
  }
}

Install via tool

mcp-get A command-line tool for installing and managing Model Context Protocol (MCP) servers.

npx @michaellatman/mcp-get@latest install @kimtaeyoon83/mcp-server-youtube-transcript

Awesome-mcp-servers

awesome-mcp-servers A curated list of awesome Model Context Protocol (MCP) servers.

Development

Prerequisites

  • Node.js 18 or higher
  • npm or yarn

Setup

            Install dependencies:
npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Testing

npm test

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector for development:

npm run inspector

Error Handling

The server implements robust error handling for common scenarios:

  • Invalid video URLs or IDs
  • Unavailable transcripts
  • Language availability issues
  • Network errors

Usage Examples

  1. Get transcript by video URL:
await server.callTool("get_transcript", {
  url: "https://www.youtube.com/watch?v=VIDEO_ID",
  lang: "en"
});
  1. Get transcript by video ID:
await server.callTool("get_transcript", {
  url: "VIDEO_ID",
  lang: "ko"
});
  1. How to Extract YouTube Subtitles in Claude Desktop App
chat: https://youtu.be/ODaHJzOyVCQ?si=aXkJgso96Deri0aB Extract subtitles

Security Considerations

The server:

  • Validates all input parameters
  • Handles YouTube API errors gracefully
  • Implements timeouts for transcript retrieval
  • Provides detailed error messages for troubleshooting

License

This MCP server is licensed under the MIT License. See the LICENSE file for details.

Last updated: 3/10/2025

Publisher info

kimtaeyoon83's avatar
Korea, Seoul
5
followers
1
following
13
repos

More MCP servers built with JavaScript

mcp-server-semgrep

MCP Server Semgrep is a [Model Context Protocol](https://modelcontextprotocol.io) compliant server that integrates the powerful Semgrep static analysis tool with AI assistants like Anthropic Claude. It enables advanced code analysis, security vulnerability detection, and code quality improvements directly through a conversational interface.

By Szowesgad9
protonmail-mcp

This MCP server provides email sending functionality using Protonmail's SMTP service. It allows both Claude Desktop and Cline VSCode extension to send emails on your behalf using your Protonmail credentials.

By amotivv6
agentql-mcp

Model Context Protocol server that integrates AgentQL's data extraction capabilities.

By tinyfish-io45