YouTube Search & Download MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| YT_MCP_LOG_LEVEL | No | Logging level (DEBUG, INFO, WARNING, ERROR) | INFO |
| YT_MCP_DOWNLOAD_DIR | No | Directory where videos/audio will be saved | downloads |
| YT_MCP_DEFAULT_MAX_RESULTS | No | Number of search results to return by default | 10 |
| YT_MCP_DEFAULT_VIDEO_QUALITY | No | Default video quality (best, high, medium, low) | best |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_videosB | Search YouTube for videos matching a query. |
| get_video_infoA | Get detailed information about a specific YouTube video. Args: video_id: YouTube video ID (11 characters, e.g., "dQw4w9WgXcQ") output_format: Output format - "json" or "markdown" (default: "json") Returns: Detailed video information including description, tags, and statistics Example: get_video_info("dQw4w9WgXcQ", output_format="markdown") |
| search_playlistsA | Search YouTube for playlists matching a query. Args: query: Search query string (e.g., "python tutorial playlist") max_results: Maximum number of results to return (1-50, default: 10) output_format: Output format - "json" or "markdown" (default: "json") Returns: Formatted search results with playlist metadata Example: search_playlists("machine learning course", max_results=5, output_format="json") |
| get_playlist_infoA | Get detailed information about a specific YouTube playlist. Args: playlist_id: YouTube playlist ID (e.g., "PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf") output_format: Output format - "json" or "markdown" (default: "json") Returns: Detailed playlist information including title, creator, video count, and description Example: get_playlist_info("PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf", output_format="markdown") |
| get_playlist_videosB | Get list of videos from a YouTube playlist. Args: playlist_id: YouTube playlist ID (e.g., "PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf") max_results: Maximum number of videos to return (None for all videos, default: None) output_format: Output format - "json" or "markdown" (default: "json") Returns: List of videos in the playlist with metadata Example: get_playlist_videos("PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf", max_results=20) |
| download_videoA | Download a YouTube video with configurable quality. Args: video_id: YouTube video ID (11 characters) quality: Quality preset - "best", "high" (1080p), "medium" (720p), "low" (480p) output_dir: Download directory path (uses config default if not specified) format: Output format - "mp4", "webm", "mkv" (default: "mp4") Returns: JSON with download status, file path, file size, and metadata Example: download_video("dQw4w9WgXcQ", quality="high", format="mp4") |
| download_audioA | Download audio only from a YouTube video. Args: video_id: YouTube video ID (11 characters) quality: Audio quality preset - "best", "high" (320kbps), "medium" (192kbps), "low" (128kbps) output_dir: Download directory path (uses config default if not specified) format: Output format - "mp3", "m4a", "opus", "wav" (default: "mp3") Returns: JSON with download status, file path, file size, and metadata Example: download_audio("dQw4w9WgXcQ", quality="high", format="mp3") |
| validate_providerB | Validate that the YouTube search provider is working correctly. Returns: JSON with validation status and provider information Example: validate_provider() |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_current_config | Get current server configuration. Returns: Formatted configuration information |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/easyhak/youtube-search-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server