/ 디렉터리 / 플레이그라운드 / mcp-youtube-transcript
● 커뮤니티 jkawamoto ⚡ 바로 사용

mcp-youtube-transcript

제작: jkawamoto · jkawamoto/mcp-youtube-transcript

Pull transcripts (with timestamps), metadata, and language lists from any YouTube video — so Claude can summarize, quote, or timestamp an hour of video in seconds.

mcp-youtube-transcript exposes 4 tools to get raw transcripts, timed transcripts, video metadata, and available languages. Long transcripts auto-paginate at 50k chars. Supports Webshare / custom HTTP proxies when YouTube rate-limits or blocks your IP.

왜 쓰나요

핵심 기능

라이브 데모

실제 사용 모습

youtube-transcript.replay ▶ 준비됨
0/0

설치

클라이언트 선택

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "mcp-youtube-transcript"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config 열기. 저장 후 앱 재시작.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "mcp-youtube-transcript"
      ],
      "_inferred": true
    }
  }
}

Cursor는 Claude Desktop과 동일한 mcpServers 스키마 사용. 프로젝트 설정이 전역보다 우선.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "mcp-youtube-transcript"
      ],
      "_inferred": true
    }
  }
}

Cline 사이드바의 MCP Servers 아이콘 클릭 후 "Edit Configuration" 선택.

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "youtube-transcript": {
      "command": "uvx",
      "args": [
        "mcp-youtube-transcript"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop과 같은 형식. Windsurf 재시작 후 적용.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "youtube-transcript",
      "command": "uvx",
      "args": [
        "mcp-youtube-transcript"
      ]
    }
  ]
}

Continue는 맵이 아닌 서버 오브젝트 배열 사용.

~/.config/zed/settings.json
{
  "context_servers": {
    "youtube-transcript": {
      "command": {
        "path": "uvx",
        "args": [
          "mcp-youtube-transcript"
        ]
      }
    }
  }
}

context_servers에 추가. 저장 시 Zed가 핫 리로드.

claude mcp add youtube-transcript -- uvx mcp-youtube-transcript

한 줄 명령. claude mcp list로 확인, claude mcp remove로 제거.

사용 사례

실전 활용법: mcp-youtube-transcript

Turn a 60-minute YouTube talk into a 10-bullet summary with timestamps

👤 Researchers, content marketers, students ⏱ ~10 min beginner

언제 쓸까: You can't watch the full video but need the key points (and to cite them with timestamps).

흐름
  1. Fetch timed transcript
    Get timed transcript for https://www.youtube.com/watch?v=VIDEO_ID.✓ 복사됨
    → Transcript with [MM:SS] markers
  2. Summarize with citations
    Give me 10 bullets summarizing the main argument. Each bullet should end with a [MM:SS] pointer to where it's made in the video.✓ 복사됨
    → Bulleted summary with clickable-style timestamps

결과: Digestible summary you can share with a team Slack in 2 minutes.

함정
  • Auto-generated captions have errors on technical terms — For accuracy-critical quotes, verify against the actual video at the timestamp
함께 쓰기: notion

Index a YouTube podcast's back catalog for semantic search

👤 Podcast fans, researchers following a specific show ⏱ ~45 min intermediate

언제 쓸까: You want to ask 'which episode did they talk about X?' across 100+ episodes.

흐름
  1. List episode URLs
    Here's the playlist URL. Get the 50 most recent video IDs.✓ 복사됨
    → Video ID list
  2. Fetch + index
    For each video, get_transcript and get_video_info (title, date). Ingest into local-rag as one doc per episode.✓ 복사됨
    → Indexed corpus
  3. Query
    In which episodes did the hosts discuss 'ring attention'? Give episode number and timestamp.✓ 복사됨
    → Hits with episode metadata

결과: A searchable podcast library you own and control.

함정
  • Some videos have no captions — get_available_languages first; skip if empty
함께 쓰기: local-rag

Translate a talk from one language to another

👤 Non-English speakers, content localizers ⏱ ~10 min beginner

언제 쓸까: You want to read a Spanish talk in English without running ML translation yourself.

흐름
  1. Grab original language transcript
    get_available_languages for this URL. Use Spanish if available.✓ 복사됨
    → Spanish transcript
  2. Translate
    Translate this transcript to English, preserving paragraph breaks.✓ 복사됨
    → English text

결과: Read-worthy translated transcript.

함정
  • Tonal / idiomatic content translates awkwardly — For commercial localization, have a human pass

조합

다른 MCP와 조합해 10배 효율

youtube-transcript + local-rag

Ingest a channel's transcripts into a searchable local index

For each video in this playlist, get transcript + metadata, then ingest_data into local-rag with source URL.✓ 복사됨
youtube-transcript + notion

Publish video summaries to a Notion knowledge DB

Summarize this talk and create a Notion page in 'Talks' with title, channel, date, and summary.✓ 복사됨

도구

이 MCP가 노출하는 것

도구입력언제 호출비용
get_transcript url_or_id: str, language?: str You want text only, no timestamps free
get_timed_transcript url_or_id, language? You need timestamps for citations or chapter generation free
get_video_info url_or_id Metadata for context / indexing free
get_available_languages url_or_id Check caption availability before attempting fetch free

비용 및 제한

운영 비용

API 쿼터
YouTube doesn't officially expose transcripts — expect IP rate limits
호출당 토큰
Transcripts 1k-50k tokens depending on length; paginated at 50k by default
금액
Free; proxies (Webshare) cost a few $/mo if you need them
Transcripts are often huge. Truncate via --response-limit or just ask for a specific time range.

보안

권한, 시크릿, 파급범위

자격 증명 저장: Proxy credentials if you use Webshare — env var
데이터 외부 송신: Outbound to youtube.com (possibly via proxy)

문제 해결

자주 발생하는 오류와 해결

HTTP 429 Too Many Requests

Your IP is rate-limited by YouTube. Configure Webshare proxy via env vars or wait 30-60 minutes.

확인: Try the same URL from another IP
No transcript available

Video has no captions. Call get_available_languages first; if empty, skip.

Age-restricted / region-locked video

Not supported by this MCP. No workaround — use official YouTube Data API with auth.

Python install issues (uvx)

Install uv first: curl -LsSf https://astral.sh/uv/install.sh | sh. Requires Python 3.10+.

확인: uv --version

대안

mcp-youtube-transcript 다른 것과 비교

대안언제 쓰나단점/장점
YouTube Data API + official MCP wrapperYou need official, authenticated accessRequires Google API key; quota limits; doesn't directly give transcript text
yt-dlp MCPYou also want video/audio download, not just transcriptsHeavier; downloads media files

더 보기

리소스

📖 GitHub에서 공식 README 읽기

🐙 열린 이슈 보기

🔍 400+ MCP 서버 및 Skills 전체 보기