youtube-mcp
YouTube MCP Server
Реализация сервера Model Context Protocol (MCP) для YouTube, позволяющая языковым моделям ИИ взаимодействовать с контентом YouTube через стандартизированный интерфейс.
Сайт: zubeidhendricks.github.io/youtube-mcp-server
Доступные инструменты
Сервер в настоящее время предоставляет 10 инструментов MCP.
Инструмент | Описание | Обязательные параметры | Необязательные параметры |
| Получить подробную информацию о видео на YouTube |
|
|
| Искать видео на YouTube |
|
|
| Получить транскрипт видео на YouTube |
|
|
| Получить информацию о канале YouTube |
| Нет |
| Получить информацию о нескольких каналах YouTube |
|
|
| Искать каналы YouTube по handle, имени или запросу |
|
|
| Находить каналы создателей по упоминаниям в видео с фильтрами по размеру и активности канала |
|
|
| Получить видео с конкретного канала |
|
|
| Получить информацию о плейлисте YouTube |
| Нет |
| Получить видео в плейлисте YouTube |
|
|
Параметры инструментов
videos_getVideo
videoId(string): Идентификатор видео на YouTube.parts(string[], необязательный): Конкретные части ресурса видео для получения.
videos_searchVideos
query(string): Поисковый запрос.maxResults(number, необязательный): Максимальное количество результатов для возврата.order(string, необязательный): Порядок результатов, напримерrelevanceилиdate.publishedAfter(string, необязательный): Включать только видео, опубликованные после этой даты ISO 8601.publishedBefore(string, необязательный): Включать только видео, опубликованные до этой даты ISO 8601.channelId(string, необязательный): Ограничить результаты конкретным каналом.uniqueChannels(boolean, необязательный): Возвращать только одно видео для каждого уникального канала.channelMinSubscribers/channelMaxSubscribers(number, необязательный): Фильтровать подходящие видео по диапазону подписчиков их канала.channelLastUploadAfter/channelLastUploadBefore(string, необязательный): Фильтровать подходящие видео по активности последних загрузок их канала.creatorOnly(boolean, необязательный): Ограничить результаты каналами, эвристически классифицированными как создатели.sortBy(string, необязательный): Поддерживаетrelevance,subscribers_asc,subscribers_desc,indie_priorityиrecent_activity.
transcripts_getTranscript
videoId(string): Идентификатор видео на YouTube.language(string, необязательный): Код языка транскрипта. При отсутствии используетсяYOUTUBE_TRANSCRIPT_LANGилиen.
channels_getChannel
channelId(string): Идентификатор канала YouTube.
Ответы теперь включают:
latestVideoPublishedAtnormalizedMetadataвключает
country,defaultLanguage,joinedAt,customUrl,emailsFound,contactLinksи эвристические поля, отличающие создателей от брендов
channels_getChannels
channelIds(string[]): Список идентификаторов каналов YouTube.includeLatestUpload(boolean, необязательный): Включать лиlatestVideoPublishedAt. По умолчанию —true.
channels_searchChannels
query(string): Поисковый запрос по каналу или handle.maxResults(number, необязательный): Максимальное количество каналов для возврата.order(string, необязательный): Порядок результатов, напримерrelevance.channelType(string, необязательный): Ограничить поиск типом канала.minSubscribers/maxSubscribers(number, необязательный): Фильтровать каналы по диапазону подписчиков.lastUploadAfter/lastUploadBefore(string, необязательный): Фильтровать каналы по активности последних загрузок.creatorOnly(boolean, необязательный): Ограничить результаты каналами, эвристически классифицированными как создатели.sortBy(string, необязательный): Поддерживаетrelevance,subscribers_asc,subscribers_desc,indie_priorityиrecent_activity.
channels_findCreators
query(string): Запрос по теме, игре или упоминанию для поиска каналов по подходящим видео.videoPublishedAfter/videoPublishedBefore(string, необязательный): Фильтры по давности публикации для подходящих видео.channelMinSubscribers/channelMaxSubscribers(number, необязательный): Фильтры по диапазону подписчиков для возвращаемых каналов.channelLastUploadAfter/channelLastUploadBefore(string, необязательный): Фильтры по активности последних загрузок для возвращаемых каналов.creatorOnly(boolean, необязательный): Ограничить результаты каналами, эвристически классифицированными как создатели.sortBy(string, необязательный): Поддерживаетrelevance,subscribers_asc,subscribers_desc,indie_priorityиrecent_activity.sampleVideosPerChannel(number, необязательный): Сколько подходящих видео включать для каждого возвращаемого канала.
channels_listVideos
channelId(string): Идентификатор канала YouTube.maxResults(number, необязательный): Максимальное количество видео для возврата.
playlists_getPlaylist
playlistId(string): Идентификатор плейлиста YouTube.
playlists_getPlaylistItems
playlistId(string): Идентификатор плейлиста YouTube.maxResults(number, необязательный): Максимальное количество элементов плейлиста для возврата.
Related MCP server: mcp-server-youtube
Установка
Быстрая настройка для Claude Desktop
Установите пакет:
npm install -g zubeid-youtube-mcp-serverДобавьте в конфигурацию Claude Desktop (
~/Library/Application Support/Claude/claude_desktop_config.jsonв macOS или%APPDATA%\Claude\claude_desktop_config.jsonв Windows):
{
"mcpServers": {
"zubeid-youtube-mcp-server": {
"command": "zubeid-youtube-mcp-server",
"env": {
"YOUTUBE_API_KEY": "your_primary_youtube_api_key",
"YOUTUBE_API_KEY2": "your_secondary_youtube_api_key",
"YOUTUBE_API_KEY3": "your_tertiary_youtube_api_key"
}
}
}
}Альтернативный вариант: использование NPX (установка не требуется)
Добавьте это в конфигурацию Claude Desktop:
{
"mcpServers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "your_primary_youtube_api_key",
"YOUTUBE_API_KEY2": "your_secondary_youtube_api_key",
"YOUTUBE_API_KEY3": "your_tertiary_youtube_api_key"
}
}
}
}Установка через Smithery
Чтобы автоматически установить YouTube MCP Server для Claude Desktop через Smithery:
npx -y @smithery/cli install @ZubeidHendricks/youtube --client claudeКонфигурация
Задайте следующие переменные окружения:
YOUTUBE_API_KEY: основной ключ YouTube Data APIYOUTUBE_API_KEY2: дополнительный резервный ключ APIYOUTUBE_API_KEY3: третий резервный ключ APIYOUTUBE_TRANSCRIPT_LANG: язык транскриптов по умолчанию (необязательно, по умолчанию — 'en')
Должен быть задан хотя бы один из ключей YOUTUBE_API_KEY, YOUTUBE_API_KEY2 или YOUTUBE_API_KEY3. Если запрос завершается ошибкой из-за исчерпания квоты ключа, сервер повторяет тот же запрос со следующим настроенным ключом.
Использование с VS Code
Для установки в один клик нажмите одну из кнопок установки ниже:
Установка вручную
Если вы предпочитаете установку вручную, сначала посмотрите на кнопки установки в верхней части этого раздела. В противном случае выполните следующие шаги:
Добавьте следующий блок JSON в файл User Settings (JSON) в VS Code. Для этого нажмите Ctrl + Shift + P и введите Preferences: Open User Settings (JSON).
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "YouTube API Key",
"password": true
}
],
"servers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "${input:apiKey}"
}
}
}
}
}При желании вы можете добавить его в файл .vscode/mcp.json в вашем рабочем пространстве:
{
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "YouTube API Key",
"password": true
}
],
"servers": {
"youtube": {
"command": "npx",
"args": ["-y", "zubeid-youtube-mcp-server"],
"env": {
"YOUTUBE_API_KEY": "${input:apiKey}"
}
}
}
}Разработка
# Install dependencies
npm install
# Build
npm run build
# Start the server (requires at least one configured YouTube API key)
npm start
# Development mode with auto-rebuild
npm run devDocker
Входящий в комплект образ Docker по умолчанию запускает сервер через HTTP.
Транспорт по умолчанию:
httpКонечная точка по умолчанию:
http://localhost:8088/mcpКонечная точка готовности:
http://localhost:8088/readyРежим по умолчанию: без состояния
Сборка Docker копирует .env в образ времени выполнения, и сервер автоматически загружает его при запуске. Это означает, что контейнер может работать без передачи учётных данных API во время docker run, если .env присутствовал во время docker build.
docker build -t youtube-mcp-server .
docker run --rm -p 8088:8088 youtube-mcp-serverКонтейнер по умолчанию использует:
MCP_TRANSPORT=http
MCP_HOST=0.0.0.0
MCP_PORT=8088
MCP_STATELESS=trueУчастие
Информацию о том, как внести вклад в этот репозиторий, см. в файле CONTRIBUTING.md.
Лицензия
Этот проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
YouTube transcripts, search, channel/playlist listings and upload tracking for AI agents. No signup.
YouTube transcripts, search, channels, playlists and bulk transcript jobs for AI agents. 14 tools.
YouTube video search with transcript extraction as first-class output.
Personal YouTube AI knowledge base powered by RAG. Query your subscribed YouTube channels.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to access YouTube data in real-time, with capabilities for searching videos, analyzing channels, retrieving video details, and extracting transcripts.12MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to search videos, read channels, browse playlists, fetch comments, and get transcripts from YouTube using the YouTube Data API v3 and InnerTube API for captions.2GPL 3.0
- FlicenseAqualityDmaintenanceEnables fetching YouTube video transcripts in various formats via the Model Context Protocol, allowing LLMs to access and process YouTube video transcripts securely.1
- AlicenseAqualityDmaintenanceEnables AI tools to access YouTube content, including transcript extraction, video/channel info, and search.427MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/AfsheenMahmood/youtube-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server