1.0.0 • Published 7 months ago
@coyasong/youtube-mcp-server v1.0.0
YouTube MCP Server
A Model Context Protocol (MCP) server for interacting with YouTube data. This server provides resources and tools to query YouTube videos, channels, comments, and transcripts through stdio interface.
Features
- Search for YouTube videos
- Get detailed information about specific videos
- Retrieve channel information
- Fetch video comments
- Get video transcripts/captions
- Uses stdio for communication with clients
Prerequisites
- Node.js (v16+)
- YouTube Data API key
Installation
Installing via Smithery
To install YouTube MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @coyaSONG/youtube-mcp-server --client claudeInstalling Manually
Clone this repository:
git clone https://github.com/coyaSONG/youtube-mcp-server.git cd youtube-mcp-serverInstall dependencies:
npm installCreate a
.envfile in the root directory:YOUTUBE_API_KEY=your_youtube_api_key_here
Usage
Building and Running
빌드하기:
npm run build서버 실행:
npm start개발 모드로 실행:
npm run dev빌드 산출물 정리:
npm run clean
API
Resources
youtube://video/{videoId}- Get detailed information about a specific videoyoutube://channel/{channelId}- Get information about a specific channelyoutube://transcript/{videoId}- Get transcript for a specific video- Optional query parameter:
?language=LANGUAGE_CODE(e.g.,en,ko,ja)
- Optional query parameter:
Tools
search-videos- Search for YouTube videos based on a queryget-video-comments- Get comments for a specific videoget-video-transcript- Get transcript for a specific video with optional language parameter
Prompts
video-analysis- Prompt for analyzing a YouTube videotranscript-summary- Prompt for summarizing a video's transcript
Examples
Accessing a video transcript
youtube://transcript/dQw4w9WgXcQGetting a transcript in a specific language
youtube://transcript/dQw4w9WgXcQ?language=enUsing the transcript summary prompt
{
"type": "prompt",
"name": "transcript-summary",
"parameters": {
"videoId": "dQw4w9WgXcQ",
"language": "en"
}
}Error Handling
The server handles various error conditions, including:
- Invalid API key
- Video not found
- Transcript not available
- Network issues
License
MIT
Acknowledgements
1.0.0
7 months ago