mcpField
Y
YouTube-MCP

YouTube-MCP

Local
github.com/CodeWizzard01Media & Design2Updated 70w ago

About YouTube-MCP

YouTube-MCP is a YouTube MCP server built with the Java MCP SDK and Spring AI. It is for users who need to search videos or retrieve channel, playlist, and video information through MCP, and it can also extract transcripts.

Key features

  1. 01Search YouTube videos by query
  2. 02Extract video transcripts
  3. 03Retrieve video details, thumbnails, and public comments
  4. 04Look up channel information, sections, and playlists
  5. 05View public channel activities
  6. 06List video categories by region

Use cases

  1. 01Search for videos on a topic
  2. 02Extract a video transcript for review
  3. 03Retrieve a channel’s playlists and public activities

MCP support

The MCP server exposes tools for YouTube search, transcript extraction, and video and channel data retrieval. It supports connections via SSE or stdio.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"youtube-mcp-server-codewizzard01": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"YOUTUBE_API_KEY",
"codewizard01/youtube-mcp:latest"
],
"env": {
"YOUTUBE_API_KEY": "<YOUTUBE_API_KEY>"
}
}
}
}
Run commanddocker run -i --rm -e YOUTUBE_API_KEY codewizard01/youtube-mcp:latest
Environment variables to set
YOUTUBE_API_KEYSecret

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
ocicodewizard01/youtube-mcp:latest

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

YouTube-MCP

MCP(Model Context Protocol) server for Youtube search, transcript etc built using Java MCP SDK and Spring AI. For transcript extraction alone Javascript is used.

This is certified by MCP Review : youtube-mcp-server

Exposed Tools

  • youtube_search: Search for videos on YouTube using a query string.
  • youtube_transcript: Get transcript for a YouTube video by video ID.
  • youtube_video_details: Get details of a YouTube video using its video ID.
  • youtube_video_thumbnails: Get thumbnail URLs for a YouTube video by video ID.
  • youtube_video_comments: List comments for a YouTube video by video ID. (Public comments only)
  • youtube_channel_info: Get information about a YouTube channel by channel ID.
  • youtube_channel_playlists: List playlists for a YouTube channel by channel ID.
  • youtube_channel_sections: List channel sections (shelves) for a YouTube channel by channel ID.
  • youtube_playlist_items: List videos in a YouTube playlist by playlist ID.
  • youtube_activities: List activities for a YouTube channel by channel ID. (Public activities only)
  • youtube_video_categories: List video categories available in a region.

Video

https://youtu.be/glXZ-T38hJg

Blog

YouTube-MCP: A Model Context Protocol Server for YouTube

Running MCP Server and then connecting to it from MCP host

Running MCP Server as docker container

Docker image is available on docker hub - https://hub.docker.com/r/codewizard01/youtube-mcp

Prerequisites
  • Docker
docker run -e YOUTUBE_API_KEY=<your_api_key_here> -p 8085:8080 codewizard01/youtube-mcp:latest

This will start the MCP server on port 8085.

Then add the following to your mcp config file to interact via SSE:

{
  "youtube": {
    "mcp_server": "http://localhost:8085"
  }
}
Running the MCP server from an IDE
Prerequisites
  • Java 24
  • Maven 3.8.1
  • Node
  1. Clone the repository
  2. Open the project in your IDE
  3. Run the following command to build the project
mvn clean install
npm install
  1. Run the following command to start the server
mvn spring-boot:run
  1. The server will start on port 8080 by default. You can change the port in the application.properties file.

Interacting with the MCP server via standard input output

Enable the below commented properties in the application.properties file to enable standard input output.

# For integration using stdio enable the below
#spring.ai.mcp.server.stdio=true
#spring.main.banner-mode=off
#spring.main.web-application-type=none
#logging.pattern.console=
#logging.file.name=youtube-mcp-spring.log

Run mvn package to build the jar file. The jar file will be created in the target directory.

Now add the below to your MCP config file in any MCP host like Claude desktop or Github Copilot to interact via stdio:

  "youtube-mcp": {
    "command": "java",
    "args": [
      "-jar", 
      "/Users/codewiz/youtube-mcp/target/youtube-mcp-0.0.1-SNAPSHOT.jar"
    ],
    "env": {
      "YOUTUBE_API_KEY": "<your_api_key_here>"
    }
  }

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.