Skip to main content
Glama

yt

YouTube CLI для агентов — поиск, транскрипты, метаданные и локальный кэш FTS5 для извлечения контекста для ИИ. Обертка над yt-dlp с JSON-конвертами, потоковой передачей NDJSON и MCP-бинарником.

Никаких ключей YouTube Data API. Никаких квот. Никаких ограничений по скорости на стандартном пути.

██╗   ██╗████████╗
╚██╗ ██╔╝╚══██╔══╝
 ╚████╔╝    ██║
  ╚██╔╝     ██║
   ██║      ██║
   ╚═╝      ╚═╝

Зачем

Существующие инструменты для YouTube либо:

  • Созданы для людей (интерактивные TUI, такие как ytfzf),

  • Созданы для создателей контента (нишевая аналитика, аудит конкурентов),

  • Либо заперты внутри MCP-серверов.

yt создан для агентов — Claude Code, Cursor, Codex, Gemini CLI и ваших bash-скриптов. Один вызов (yt context <url>) передает LLM все необходимое для анализа видео.

Установка

# Requires yt-dlp on PATH
brew install yt-dlp

# From source
git clone https://github.com/progrmoiz/yt-cli
cd yt-cli
npm install && npm run build && npm link

Проверка работоспособности:

yt doctor

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

# Search
yt search "rust async" --limit 5

# Grok a single video (the 80% agent use case)
yt context https://www.youtube.com/watch?v=dQw4w9WgXcQ

# Fetch transcript
yt transcript https://www.youtube.com/watch?v=dQw4w9WgXcQ --text

# Query everything you've cached
yt find "borrow checker"

# List a channel's recent videos
yt channel @ThePrimeTimeagen --limit 20

Перенаправление вывода автоматически переключает его в JSON (паттерн redis-cli):

yt search "typescript" | jq '.data[0].url'
yt context <url> | jq '.data.transcript.full_text'

Команды

Команда

Описание

yt search <query>

Поиск по YouTube, без API-ключа. --limit, --since 7d.

yt transcript <url>

Транскрипт с метками времени в формате JSON. Кэшируется. --lang en, --text.

yt info <url>

Метаданные: название, канал, главы, длительность. Кэшируется.

yt context <url>

Основная функция. Информация + транскрипт + главы для агентов в один запрос.

yt find <query>

Поиск FTS5 по кэшированным транскриптам. Результаты на уровне строк с метками времени.

yt channel <handle|id|url>

Последние видео с канала.

yt doctor [--deep]

Диагностика: yt-dlp, кэш, обнаружение агента.

yt self-test

Набор регрессионных тестов — отслеживает изменения в эндпоинтах YouTube.

yt schema <cmd>

JSON-схема для вывода этой команды.

yt mcp serve

Stdio MCP-сервер. Сопутствующий бинарник.

Интеграция с агентами

Claude Code / Cursor / и т.д. — MCP

// .mcp.json
{
  "mcpServers": {
    "yt": { "command": "yt", "args": ["mcp", "serve"] }
  }
}

Инструменты представлены 1:1 с командами CLI: search, info, transcript, context, find, channel, whoami.

Скрипты / оболочка

# Ingest the top 10 search hits into the local cache
yt search "machine learning ops" --limit 10 --json \
  | jq -r '.data[].url' \
  | xargs -I{} yt transcript {} --json >/dev/null

# Then query across all of them
yt find "feature store" --limit 5

Кэш

База данных SQLite в ~/.cache/yt/yt.db. Содержимое:

  • videos — одна строка на видео (метаданные).

  • transcripts — одна строка на пару (видео, язык).

  • transcript_segments_fts — виртуальная таблица FTS5 по каждому сегменту транскрипта.

Переопределите с помощью YT_CACHE_DIR=/path/to/dir.

Каждый вызов transcript / info / context сначала проверяет кэш. Используйте --refresh для принудительного обновления.

Формат вывода

Стандартный конверт (v2):

{
  "version": "2",
  "status": "success",
  "command": "context",
  "cli": { "name": "yt", "version": "0.1.0" },
  "data": { /* command payload */ },
  "metadata": {
    "elapsed_ms": 1200,
    "cached": true,
    "has_transcript": true,
    "agent": "CLAUDECODE"
  }
}

Используйте --raw для получения «чистых» данных. Полная JSON-схема доступна через yt schema <command>.

Коды выхода

0 ок · 1 общая ошибка · 2 использование · 3 проверка · 4 авторизация · 5 ограничение скорости · 6 сеть · 7 не найдено · 75 временный сбой

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

Переменная

Назначение

YT_CACHE_DIR

Директория кэша (по умолчанию: ~/.cache/yt)

YT_DLP_BIN

Переопределение пути к бинарному файлу yt-dlp

YT_NO_RETRY

Установите 1, чтобы отключить автоматическую повторную попытку при RATE_LIMIT/NETWORK/TIMEOUT

YT_JSON=1

Принудительный вывод в формате JSON

YT_API_KEY

Зарезервировано для будущих дополнений Data API

NO_COLOR

Отключить ANSI-цвета

CI

Принудительный неинтерактивный режим

Лицензия

MIT.

Related MCP Connectors

  • YouTube transcripts, search, channel browsing, and playlists for AI agents via MCP.

  • An MCP server that gives any LLM or agent clean YouTube transcripts on demand: a single video, a whole channel, or a playlist, plus AI cleanup of auto-generated captions. API-key auth, credit-based, same backend as the public v1 API. Get a free API key with 25 free credits at youtubetranscriptdownload.com/account.

  • YouTube transcripts, search, channel/playlist listings and upload tracking for AI agents.

  • Your agent needs to find video — which channels own a topic, which videos rank for a phrase, what exists in a given country and language. **What you can ask for** • "Which videos rank for 'rag pipeline tutorial' in the US this month?" • "Find channels publishing about MCP, sorted by relevance." • "What playlists cover this subject in Japanese?" • "Search videos uploaded this week only." **How to use it** Point any MCP client at https://mcp.aisa.one/youtube-search/mcp and sign in with OAuth — there is no key to create or paste. One search tool covering videos, channels and playlists, narrowed by country, language, upload date, duration and sort order. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Find the video here, then ask the same agent what the channel's site traffic is or what the same phrase does in Google — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/social/mcp for X plus Instagram, Reddit, Pinterest and YouTube; https://mcp.aisa.one/gtm/mcp for those plus Similarweb and Apollo.