YouTube MCP

jkawamoto/mcp-youtube-transcript· Проверено 12.11.2026· 496на GitHub

Даёт агенту субтитры YouTube-видео: текст целиком, с таймкодами или на нужном языке, плюс название и канал. Длинные расшифровки приходят частями, чтобы влезть в контекст.

2 реализации:

Python-сервер на uvx: режет длинные расшифровки на куски по 50 000 знаков, отдаёт данные о видео и умеет работать через прокси.

Как подключить

Что сделать до подключения

1

uv с командой uvx; для Claude Desktop есть готовый пакет .mcpb на странице Releases

2
WEBSHARE_PROXY_USERNAME

по желанию: логин резидентного прокси Webshare, вместе с WEBSHARE_PROXY_PASSWORD

3
SCRAPINGANT_API_TOKEN

по желанию: токен ScrapingAnt; для YouTube нужна платная подписка на Web Scraping API

4
HTTPS_PROXY

по желанию: адрес обычного прокси вида http://логин:пароль@хост:порт

Конфиг для вашего клиента

Команда в терминале, в папке проекта. Флаг --scope user подключит сервер для всех проектов. Подробно о Claude Code

claude mcp add --transport stdio youtube \
  -- uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript

Проверка: claude mcp list показывает статус рядом с каждым сервером: ✔ Connected, ! Needs authentication или ✘ Failed to connect. Внутри сессии то же видно по команде /mcp.

Инструменты сервера

get_transcriptвыгружает текст субтитров
get_timed_transcriptвыгружает субтитры с таймкодами
get_available_languagesпоказывает доступные языки субтитров
get_video_infoчитает название и канал видео

Что попросить агента

«<ссылка на видео> Перескажи главное в пяти пунктах»Агент вызовет get_transcript и перескажет текст; у jkawamoto для длинного видео дочитает остальное через next_cursor
«На какой минуте в <ссылка на видео> говорят про <тема>?»Агент вызовет get_timed_transcript и найдёт фрагмент по таймкодам
«Есть ли у <ссылка на видео> русские субтитры? Выгрузи их»Агент вызовет get_available_languages, затем get_transcript с lang=ru
«<ссылка на видео> Извлеки субтитры»Агент вызовет get_transcript и вернёт текст субтитров
«Что показывают в ролике <прямая ссылка на .mp4>? Речи там нет»Агент вызовет analyze_video с вопросом, если задан TWELVELABS_API_KEY

Для каких задач

Пересказать лекцию, подкаст или доклад по субтитрам
Найти момент в видео по таймкодам и процитировать его
Выгрузить субтитры на нужном языке, включая автоматические
Дочитать расшифровку многочасового видео по частям
Убрать из расшифровки спонсорские вставки по главам

Ограничения

!

Без субтитров у видео расшифровке взяться неоткуда: сервер читает готовые дорожки, звук не распознаёт

!

YouTube блокирует автоматические запросы с адресов облачных провайдеров и дата-центров; на сервере в облаке понадобится резидентный прокси

!

analyze_video принимает только прямую ссылку на файл .mp4, .mov или .webm: страницу просмотра YouTube он не откроет

!

Язык по умолчанию en: для русских субтитров агент должен передать lang=ru

Если не работает

YouTube отвечает блокировкой RequestBlocked или IpBlocked
Сервер запущен с адреса облака или дата-центра. Задайте резидентный прокси Webshare, токен ScrapingAnt или HTTPS_PROXY в env.
Агент получил только начало расшифровки
Длинный текст режется по 50 000 знаков. Попросите агента дочитать через next_cursor или поставьте --response-limit -1 в args.

Какую реализацию выбрать

РеализацияКто делаетЗвёздыЗапускКлючИнструментыОбновлён
YouTube Transcript MCP Serverjkawamoto496локальноне нужен49 ноября 2026
YouTube Transcript Serverkimtaeyoon83603локальноне нужен221 июля 2026

Частые вопросы

Чем отличаются два варианта?
jkawamoto ставится через uvx, отдаёт данные о видео, список языков и субтитры с таймкодами отдельным инструментом. kimtaeyoon83 ставится через npx, понимает Shorts и вырезает рекламу, а с ключом TwelveLabs разбирает картинку.
Расшифровка длинного видео обрывается. Что делать?
У jkawamoto ответ режется на куски по 50 000 знаков, следующий кусок агент берёт через next_cursor. Размер куска меняется флагом --response-limit, значение -1 отдаёт текст целиком.
Можно получить субтитры на русском?
Да, агент передаёт код языка в параметре lang. У jkawamoto список языков, ручных и автоматических, показывает get_available_languages; kimtaeyoon83 сам берёт доступный язык, если нужного нет.
Как дать ссылку на видео?
Подойдёт полный адрес видео. Вариант kimtaeyoon83 принимает ещё ссылки на Shorts и голый ID видео.
Работает ли сервер из России?
Сервер работает на вашем компьютере и обращается к YouTube с вашего IP; ключи для субтитров не нужны, прокси задаётся переменными окружения.

Похожие серверы