YouTube MCP Server
YouTube MCP Server
Адаптированный YouTube MCP-сервер на основе оригинального репозитория claude-code-youtube-mcp. Эта версия поддерживает оба транспорта — STDIO и Streamable HTTP, поэтому её можно запускать локально для Claude Code или разворачивать удалённо для пользовательского коннектора Claude.ai.
Сервер предоставляет инструменты YouTube Data API v3 для поиска видео, метаданных, информации о каналах, плейлистов, комментариев, трендовых видео, аналитики вовлечённости, транскриптов, глав, очистки через SponsorBlock и тепловых карт повторных просмотров.
Адаптировано из: https://github.com/wynandw87/claude-code-youtube-mcp
Запуск локально
npm install
npm run build
npm run start:httpЭндпоинты:
GET /health
POST /mcpRelated MCP server: YouTube MCP Server
Переменная окружения
YOUTUBE_API_KEY=your_key_hereНе коммитьте ваш API-ключ в GitHub. Храните его в локальном окружении, в .env или в переменных окружения платформы развёртывания.
Развёртывание на Railway
Разверните этот GitHub-репозиторий на Railway.
Добавьте переменную окружения
YOUTUBE_API_KEYв Railway.Установите команду запуска:
npm run start:httpИспользуйте публичный MCP-эндпоинт:
https://your-domain/mcpБыстрый старт
Шаг 1: Получите API-ключ
Перейдите в Google Cloud Console
Создайте проект (или выберите существующий)
Включите YouTube Data API v3:
Перейдите в API Library
Нажмите Enable
Создайте API-ключ:
Перейдите в Credentials
Нажмите Create Credentials > API key
Скопируйте ключ (он понадобится на шаге 3)
Шаг 2: Установите необходимые компоненты
Node.js 18+ — Скачать здесь
Claude Code CLI — Руководство по установке
Шаг 3: Установите MCP-сервер
3.1 Клонируйте репозиторий
git clone https://github.com/wynandw87/claude-code-youtube-mcp.git
cd claude-code-youtube-mcp3.2 Установите зависимости
macOS / Linux / Windows:
npm installПримечание: Зависимости устанавливаются, а сервер собирается автоматически за один шаг.
3.3 Зарегистрируйте в Claude Code
Выберите область установки:
Область | Флаг | Кто может использовать |
Пользователь (рекомендуется) |
| Вы, в любом проекте |
Проект |
| Любой, кто клонирует этот репозиторий |
Локально |
| Только в текущей директории |
Замените YOUR_API_KEY на ваш реальный ключ YouTube Data API и используйте полный путь к dist/index.js.
Совет: Чтобы получить полный путь, выполните из клонированной директории:
macOS/Linux:
echo "$(pwd)/dist/index.js"Windows:
echo %cd%\dist\index.js
macOS / Linux:
claude mcp add -s user youtube -e YOUTUBE_API_KEY=YOUR_API_KEY -- node /full/path/to/dist/index.jsWindows (CMD):
claude mcp add -s user youtube -e "YOUTUBE_API_KEY=YOUR_API_KEY" -- node "C:\full\path\to\dist\index.js"Windows (PowerShell):
claude mcp add -s user youtube -e "YOUTUBE_API_KEY=YOUR_API_KEY" '--' node "C:\full\path\to\dist\index.js"Альтернатива: используйте npm-хелпер (если API-ключ задан в окружении)
export YOUTUBE_API_KEY=YOUR_API_KEY
npm run install:claudeШаг 4: Перезапустите Claude Code
Закройте и снова откройте Claude Code, чтобы изменения вступили в силу.
Шаг 5: Проверьте установку
claude mcp listВы должны увидеть youtube в списке со статусом Connected.
Возможности
Транскрипты и субтитры
Получить транскрипт (
get_transcript) — получить полный транскрипт видео с таймкодами, поддержка нескольких языковПоиск по транскрипту (
search_transcript) — найти, где в видео встречается ключевое слово или фраза, с таймкодамиОчищенный транскрипт (
get_clean_transcript) — транскрипт без спонсорских вставок, интро, аутро и лишнего контента через SponsorBlockИзвлечь главы (
extract_chapters) — извлечь таймкоды глав из описания видео
Поиск и обнаружение
Поиск видео (
search_videos) — полный поиск по YouTube с фильтрами по дате, длительности, типу и порядку сортировкиПоиск внутри канала (
search_within_channel) — поиск видео конкретного автораТрендовые видео (
get_trending_videos) — актуальные трендовые видео по региону и категорииВидео канала (
get_channel_videos) — последние загрузки канала, отсортированные по дате или просмотрам
Информация о видео и канале
Метаданные видео (
get_video_metadata) — название, описание, длительность, просмотры, лайки, теги и другоеИнформация о канале (
get_channel_info) — количество подписчиков, количество видео, описание, странаЭлементы плейлиста (
get_playlist_items) — все видео в плейлисте с позициями и метаданными
Аналитика и вовлечённость
Расчёт вовлечённости (
calculate_engagement) — коэффициент лайков, коэффициент комментариев и общий уровень вовлечённости на основе публичной статистикиЧаще всего пересматривают (
get_most_replayed) — данные тепловой карты, показывающие, какие части зрители пересматривают чаще всегоКомментарии к видео (
get_video_comments) — топ-комментарии с количеством лайков и ответов
Утилиты
Разбор URL YouTube (
parse_youtube_url) — извлечение ID видео/канала/плейлиста из любого формата URL YouTube
Использование
После установки используйте триггерные фразы для вызова инструментов YouTube:
Триггер | Инструмент | Пример |
| Получить транскрипт | "получи youtube-транскрипт для этого видео" |
| Поиск видео | "youtube search для туториалов по React" |
| Метаданные видео | "получи youtube-метаданные для этого видео" |
| Информация о канале | "получи информацию о youtube-канале @ThePrimeagen" |
| Элементы плейлиста | "перечисли видео в этом youtube-плейлисте" |
| Комментарии к видео | "получи youtube-комментарии для этого видео" |
| Трендовые видео | "что сейчас в тренде на youtube в США?" |
| Извлечь главы | "извлеки главы из этого youtube-видео" |
| Расчёт вовлечённости | "рассчитай youtube-вовлечённость для этого видео" |
| Чаще всего пересматривают | "покажи части этого youtube-видео, которые пересматривают чаще всего" |
| Очищенный транскрипт | "получи очищенный youtube-транскрипт без спонсоров" |
| Поиск по транскрипту | "найди в youtube-транскрипте 'authentication'" |
Или задавайте вопросы естественным языком:
"Получи транскрипт этого YouTube-видео и сделай краткое изложение"
"Какие части этого видео пересматривают чаще всего?"
"Найди недавние видео о TypeScript на этом канале"
"Сколько просмотров и лайков у этого видео?"
"Получи комментарии к этому видео и обобщи настроения"
"Покажи главы для этого туториала"
"Получи очищенный транскрипт без спонсорских вставок"
"Что сейчас в тренде на YouTube в игровой сфере?"
Справочник инструментов
parse_youtube_url
Разбор любого формата URL YouTube и извлечение идентификаторов. API-ключ не требуется.
Параметры:
url(строка, обязательно) — любой URL YouTube или ID видео
Поддерживаемые форматы: youtube.com/watch?v=, youtu.be/, /shorts/, /embed/, /playlist?list=, /channel/, /@handle, /c/, /user/, одиночные ID видео
get_transcript
Получение полного транскрипта/субтитров YouTube-видео. API-ключ не требуется.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видеоlang(строка, необязательно) — код языка субтитров (по умолчанию:"en")
search_transcript
Поиск по транскрипту видео по ключевому слову или фразе.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видеоquery(строка, обязательно) — ключевое слово или фраза для поискаlang(строка, необязательно) — код языка субтитров (по умолчанию:"en")
extract_chapters
Извлечение таймкодов глав из описания видео.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видео
get_clean_transcript
Получение транскрипта без спонсорских вставок, интро, аутро и лишнего контента через SponsorBlock.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видеоlang(строка, необязательно) — код языка субтитров (по умолчанию:"en")
get_most_replayed
Получение данных тепловой карты "чаще всего пересматривают", показывающих, какие части зрители пересматривают чаще всего.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видео
Примечание: Для наличия данных тепловой карты требуется примерно 50 000+ просмотров.
search_videos
Поиск по YouTube с полной поддержкой фильтров.
Параметры:
query(строка, обязательно) — поисковый запросmax_results(число, необязательно) — количество результатов, 1–50 (по умолчанию:10)order(строка, необязательно) —"relevance","date","viewCount","rating"(по умолчанию:"relevance")duration(строка, необязательно) —"short"(<4 мин),"medium"(4–20 мин),"long"(>20 мин)upload_date(строка, необязательно) —"hour","day","week","month","year"type(строка, необязательно) —"video","channel","playlist"(по умолчанию:"video")
get_video_metadata
Получение подробных метаданных YouTube-видео.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видео
Возвращает: название, описание, канал, длительность, количество просмотров/лайков/комментариев, теги, категорию, миниатюры, статус трансляции и другое.
get_channel_info
Получение информации о YouTube-канале.
Параметры:
url(строка, обязательно) — URL YouTube-канала, @handle или ID канала
Возвращает: название, описание, количество подписчиков/видео/просмотров, страну, пользовательский URL и миниатюру.
get_playlist_items
Получение всех видео в YouTube-плейлисте.
Параметры:
url(строка, обязательно) — URL YouTube-плейлиста или ID плейлистаmax_results(число, необязательно) — количество элементов, 1–50 (по умолчанию:25)
get_channel_videos
Получение последних видео с YouTube-канала.
Параметры:
url(строка, обязательно) — URL YouTube-канала, @handle или ID каналаmax_results(число, необязательно) — количество видео, 1–50 (по умолчанию:25)order(строка, необязательно) —"date","viewCount"(по умолчанию:"date")
get_trending_videos
Получение актуальных трендовых/популярных YouTube-видео.
Параметры:
region_code(строка, необязательно) — код страны ISO 3166-1 alpha-2 (по умолчанию:"US")category_id(строка, необязательно) — ID категории YouTube (например,"10"для музыки,"20"для игр,"28"для науки и технологий)max_results(число, необязательно) — количество результатов, 1–50 (по умолчанию:10)
search_within_channel
Поиск видео в пределах конкретного YouTube-канала.
Параметры:
url(строка, обязательно) — URL YouTube-канала, @handle или ID каналаquery(строка, обязательно) — поисковый запросmax_results(число, необязательно) — количество результатов, 1–50 (по умолчанию:10)
get_video_comments
Получение топ-уровневых комментариев к YouTube-видео.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видеоmax_results(число, необязательно) — количество комментариев, 1–100 (по умолчанию:20)order(строка, необязательно) —"relevance","time"(по умолчанию:"relevance")
calculate_engagement
Расчёт метрик вовлечённости для YouTube-видео.
Параметры:
url(строка, обязательно) — URL YouTube-видео или ID видео
Возвращает: количество просмотров, количество лайков, количество комментариев, коэффициент лайков, коэффициент комментариев и общий уровень вовлечённости.
Как это работает
Этот MCP-сервер подключается к Claude Code через stdio-транспорт и предоставляет 15 инструментов:
Tool | Источник данных | Нужен API-ключ? |
| Локальный разбор | Нет |
| библиотека youtube-transcript | Нет |
| библиотека youtube-transcript | Нет |
| youtube-transcript + SponsorBlock API | Нет |
| Страница YouTube (Innertube) | Нет |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
| YouTube Data API v3 | Да |
Примечание: 5 инструментов работают без API-ключа (транскрипты, SponsorBlock, тепловые карты, разбор URL). Остальные 10 требуют ключ YouTube Data API v3.
Конфигурация
Переменные окружения
Переменная | Обязательная | По умолчанию | Описание |
| Да | — | Ключ YouTube Data API v3 |
| Нет |
| Таймаут API в мс |
Квота YouTube API
YouTube Data API v3 имеет дневную квоту 10 000 единиц. Каждый инструмент использует разное количество:
Операция | Стоимость за вызов |
| 100 единиц |
| 1 единица |
| 1 единица |
| 1 единица |
| 1 единица |
| 1 единица |
Совет: Операции поиска самые дорогие. Используйте
get_channel_videos(1 единица) вместоsearch_within_channel(100 единиц), когда вам нужны просто недавние загрузки.
Устранение неполадок
Исправление API-ключа
Если вы ввели неправильный API-ключ, удалите и переустановите:
claude mcp remove youtubeЗатем переустановите, используя команду из шага 3.3 выше (используйте ту же область, с которой вы изначально устанавливали).
MCP-сервер не отображается
Проверьте, установлен ли сервер:
claude mcp listЕсли его нет в списке, следуйте шагу 3, чтобы установить его.
Сервер не запускается
Проверьте, что ваш API-ключ действителен в Google Cloud Console
Проверьте, что YouTube Data API включен:
Перейдите в API Library
Там должно быть написано "Enabled"
Проверьте версию Node.js (нужна 18+):
node --versionУбедитесь, что сервер собран — если
dist/index.jsотсутствует, выполнитеnpm installснова
Ошибки подключения
Проверьте, что
dist/index.jsсуществует — если нет, выполнитеnpm installУбедитесь, что путь абсолютный в вашей команде
claude mcp addПерезапустите Claude Code после любых изменений конфигурации
Превышена квота
Если вы видите ошибки "quotaExceeded":
Подождите до полуночи по тихоокеанскому времени (квота сбрасывается ежедневно)
Используйте другой API-ключ
Предпочитайте недорогие инструменты (
get_video_metadataза 1 единицу) поисковым инструментам (100 единиц)
Транскрипт недоступен
У некоторых видео транскрипты отключены. Инструмент get_transcript вернёт понятное сообщение об ошибке. Попробуйте:
Другой код языка (например,
lang: "es")Автоматически сгенерированные субтитры могут быть доступны, даже если ручные отсутствуют
Ошибки таймаута
Увеличьте переменную окружения YOUTUBE_TIMEOUT для медленных соединений:
claude mcp add -s user youtube -e YOUTUBE_API_KEY=YOUR_KEY -e YOUTUBE_TIMEOUT=60000 -- node /path/to/dist/index.jsПросмотр текущей конфигурации
claude mcp listУчастие в разработке
Принимаются pull request'ы! Пожалуйста, сохраняйте простоту и доступность для новичков.
Лицензия
MIT
Сделано для сообщества Claude Code
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 Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search YouTube for videos, channels, and playlists while retrieving detailed analytics and metrics through the YouTube Data API v3. Supports advanced filtering options and provides comprehensive statistics for content discovery and analysis.1MIT
- AlicenseAqualityCmaintenanceEnables AI models to interact with YouTube content including video details, transcripts, channel information, playlists, and search functionality through the YouTube Data API.73510MIT
- 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
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants to search videos, channels, and playlists, retrieve video metadata, transcripts, and comments via the YouTube Data API v3.73
Related MCP Connectors
YouTube transcripts, search, channels, playlists and bulk transcript jobs for AI agents. 14 tools.
Provide token-optimized, structured YouTube data to enhance your LLM applications. Access efficien…
YouTube transcripts, subtitles, and video metadata as structured JSON via an Apify Actor.
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/rai-wasif/growlyze-youtube-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server