Skip to main content
Glama
m-hamzaj

YouTube MCP Server

by m-hamzaj

YouTube MCP Server

MCP-сервер, который приносит YouTube в Claude Code — транскрипты видео, поиск, метаданные, информация о каналах, плейлисты, комментарии, популярные видео, аналитика вовлечённости, извлечение глав, интеграция со SponsorBlock и тепловые карты самых пересматриваемых фрагментов. Использует YouTube Data API v3, youtube-transcript и SponsorBlock.

Быстрый старт

Шаг 1: Получите свой API-ключ

  1. Перейдите в Google Cloud Console

  2. Создайте проект (или выберите существующий)

  3. Включите YouTube Data API v3:

  4. Создайте API-ключ:

  5. Скопируйте ключ (он понадобится на шаге 3)

Шаг 2: Установите предварительные требования

Шаг 3: Установите MCP-сервер

3.1 Клонируйте репозиторий

git clone https://github.com/wynandw87/claude-code-youtube-mcp.git
cd claude-code-youtube-mcp

3.2 Установите зависимости

macOS / Linux / Windows:

npm install

Примечание: Зависимости устанавливаются, а сервер собирается автоматически одним шагом.

3.3 Зарегистрируйте сервер в Claude Code

Выберите область установки:

Область

Флаг

Кто может использовать

Пользователь (рекомендуется)

-s user

Вы, в любом проекте

Проект

-s project

Любой, кто клонирует этот репозиторий

Локально

-s local

Только в текущей директории

Замените 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.js

Windows (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.


Related MCP server: youtube-research

Возможности

Транскрипты и субтитры

  • Получение транскрипта (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 видео/канала/плейлиста из любого формата ссылки YouTube


Использование

После установки используйте триггерные фразы для вызова инструментов YouTube:

Триггер

Инструмент

Пример

youtube transcript

Получение транскрипта

«получи транскрипт YouTube для этого видео»

youtube search

Поиск видео

«поиск на YouTube уроков по React»

youtube metadata

Метаданные видео

«получи метаданные YouTube для этого видео»

youtube channel

Информация о канале

«получи информацию о YouTube-канале @ThePrimeagen»

youtube playlist

Элементы плейлиста

«перечисли видео в этом плейлисте YouTube»

youtube comments

Комментарии к видео

«получи комментарии YouTube для этого видео»

youtube trending

Популярные видео

«что сейчас популярно на YouTube в США?»

youtube chapters

Извлечение глав

«извлеки главы из этого видео YouTube»

youtube engagement

Расчёт вовлечённости

«рассчитай вовлечённость YouTube для этого видео»

youtube most replayed

Чаще всего пересматриваемое

«покажи самые пересматриваемые фрагменты этого видео YouTube»

youtube clean transcript

Чистый транскрипт

«получи чистый транскрипт YouTube без рекламных вставок»

youtube search transcript

Поиск по транскрипту

«найди в транскрипте YouTube слово 'authentication'»

Или просто спросите:

  • «Получи транскрипт этого видео YouTube и сделай саммари»

  • «Какие фрагменты этого видео пересматривают чаще всего?»

  • «Найди недавние видео о TypeScript на этом канале»

  • «Сколько просмотров и лайков у этого видео?»

  • «Получи комментарии к этому видео и резюмируй тональность»

  • «Покажи главы для этого урока»

  • «Получи чистый транскрипт без рекламных вставок»

  • «Что сейчас популярно на YouTube в разделе игр?»


Справочник инструментов

parse_youtube_url

Разбирает любой формат ссылки YouTube и извлекает идентификаторы. API-ключ не требуется.

Параметры:

  • url (string, required) — любая ссылка YouTube или ID видео

Поддерживаемые форматы: youtube.com/watch?v=, youtu.be/, /shorts/, /embed/, /playlist?list=, /channel/, /@handle, /c/, /user/, простые ID видео

get_transcript

Получает полный транскрипт/субтитры видео YouTube. API-ключ не требуется.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

  • lang (string, optional) — код языка субтитров (по умолчанию: "en")

Ищет ключевое слово или фразу в транскрипте видео.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

  • query (string, required) — ключевое слово или фраза для поиска

  • lang (string, optional) — код языка субтитров (по умолчанию: "en")

extract_chapters

Извлекает таймкоды глав из описания видео.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

get_clean_transcript

Получает транскрипт без рекламных вставок, интро, аутро и слов-паразитов с помощью SponsorBlock.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

  • lang (string, optional) — код языка субтитров (по умолчанию: "en")

get_most_replayed

Получает данные тепловой карты «самое пересматриваемое», показывающие, какие фрагменты зрители пересматривают чаще всего.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

Примечание: Для наличия данных тепловой карты требуется примерно 50K+ просмотров.

Выполняет поиск по YouTube с полной поддержкой фильтров.

Параметры:

  • query (string, required) — поисковый запрос

  • max_results (number, optional) — количество результатов, 1–50 (по умолчанию: 10)

  • order (string, optional) — "relevance", "date", "viewCount", "rating" (по умолчанию: "relevance")

  • duration (string, optional) — "short" (<4 мин), "medium" (4–20 мин), "long" (>20 мин)

  • upload_date (string, optional) — "hour", "day", "week", "month", "year"

  • type (string, optional) — "video", "channel", "playlist" (по умолчанию: "video")

get_video_metadata

Получает подробные метаданные видео YouTube.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

Возвращает: название, описание, канал, длительность, количество просмотров/лайков/комментариев, теги, категорию, миниатюры, статус прямой трансляции и другое.

get_channel_info

Получает информацию о YouTube-канале.

Параметры:

  • url (string, required) — ссылка на канал YouTube, @handle или ID канала

Возвращает: название, описание, количество подписчиков/видео/просмотров, страну, пользовательский URL и миниатюру.

get_playlist_items

Получает все видео в плейлисте YouTube.

Параметры:

  • url (string, required) — ссылка на плейлист YouTube или ID плейлиста

  • max_results (number, optional) — количество элементов, 1–50 (по умолчанию: 25)

get_channel_videos

Получает последние видео с YouTube-канала.

Параметры:

  • url (string, required) — ссылка на канал YouTube, @handle или ID канала

  • max_results (number, optional) — количество видео, 1–50 (по умолчанию: 25)

  • order (string, optional) — "date", "viewCount" (по умолчанию: "date")

get_trending_videos

Получает актуальные трендовые/популярные видео YouTube.

Параметры:

  • region_code (string, optional) — код страны ISO 3166-1 alpha-2 (по умолчанию: "US")

  • category_id (string, optional) — ID категории YouTube (например, "10" — Музыка, "20" — Игры, "28" — Наука и техника)

  • max_results (number, optional) — количество результатов, 1–50 (по умолчанию: 10)

Ищет видео в конкретном YouTube-канале.

Параметры:

  • url (string, required) — ссылка на канал YouTube, @handle или ID канала

  • query (string, required) — поисковый запрос

  • max_results (number, optional) — количество результатов, 1–50 (по умолчанию: 10)

get_video_comments

Получает комментарии верхнего уровня к видео YouTube.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

  • max_results (number, optional) — количество комментариев, 1–100 (по умолчанию: 20)

  • order (string, optional) — "relevance", "time" (по умолчанию: "relevance")

calculate_engagement

Рассчитывает показатели вовлечённости для видео YouTube.

Параметры:

  • url (string, required) — ссылка на видео YouTube или ID видео

Возвращает: количество просмотров, лайков и комментариев, долю лайков, долю комментариев и общий уровень вовлечённости.


Как это работает

Этот MCP-сервер подключается к Claude Code через stdio-транспорт и предоставляет 15 инструментов:

Инструмент

Источник данных

Нужен API-ключ?

parse_youtube_url

Локальный парсинг

Нет

get_transcript

библиотека youtube-transcript

Нет

search_transcript

библиотека youtube-transcript

Нет

get_clean_transcript

youtube-transcript + SponsorBlock API

Нет

get_most_replayed

страница YouTube (Innertube)

Нет

extract_chapters

YouTube Data API v3

Да

search_videos

YouTube Data API v3

Да

get_video_metadata

YouTube Data API v3

Да

get_channel_info

YouTube Data API v3

Да

get_playlist_items

YouTube Data API v3

Да

get_channel_videos

YouTube Data API v3

Да

get_trending_videos

YouTube Data API v3

Да

search_within_channel

YouTube Data API v3

Да

get_video_comments

YouTube Data API v3

Да

calculate_engagement

YouTube Data API v3

Да

Примечание: 5 инструментов работают без API-ключа (транскрипты, SponsorBlock, тепловые карты, разбор URL). Остальные 10 требуют ключ YouTube Data API v3.


Конфигурация

Переменные окружения

Переменная

Обязательный

По умолчанию

Описание

YOUTUBE_API_KEY

Да

ключ YouTube Data API v3

YOUTUBE_TIMEOUT

Нет

30000

Таймаут API в мс

Квота YouTube API

YouTube Data API v3 имеет дневную квоту 10 000 единиц. Каждый инструмент расходует разное количество:

Операция

Стоимость за вызов

search (search_videos, search_within_channel)

100 единиц

videos.list (get_video_metadata, get_trending, calculate_engagement)

1 единица

channels.list (get_channel_info, get_channel_videos)

1 единица

playlists.list (get_playlist_items)

1 единица

playlistItems.list (get_playlist_items, get_channel_videos)

1 единица

commentThreads.list (get_video_comments)

1 единица

Совет: Операции поиска — самые дорогие. Используйте get_channel_videos (1 единица) вместо search_within_channel (100 единиц), когда вам нужны просто последние загрузки.


Устранение неполадок

Исправление API-ключа

Если вы ввели неверный API-ключ, удалите и переустановите:

claude mcp remove youtube

Затем переустановите с помощью команды из шага 3.3 выше (используйте ту же область видимости, с которой вы изначально устанавливали).

MCP-сервер не отображается

Проверьте, установлен ли сервер:

claude mcp list

Если его нет в списке, выполните шаг 3, чтобы установить его.

Сервер не запускается

  1. Проверьте, что ваш API-ключ действителен в Google Cloud Console

  2. Проверьте, что YouTube Data API включён:

    • Перейдите в API Library

    • Там должно быть указано «Включено»

  3. Проверьте версию Node.js (требуется 18+):

    node --version
  4. Убедитесь, что сервер собран — если dist/index.js отсутствует, снова выполните npm install

Ошибки подключения

  1. Проверьте, что dist/index.js существует — если нет, выполните npm install

  2. Убедитесь, что путь абсолютный в вашей команде claude mcp add

  3. Перезапустите 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

Участие в разработке

Пулл-реквесты приветствуются! Пожалуйста, сохраняйте простоту и доступность для новичков.

Лицензия

MIT


Сделано для сообщества Claude Code

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

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/m-hamzaj/youtube-mcp-bridge'

If you have feedback or need assistance with the MCP directory API, please join our Discord server