youtube-collector

1
0
Source

유튜브 채널을 등록하고 새 컨텐츠를 수집하여 자막 기반 요약을 생성하는 skill. 사용자가 (1) 유튜브 채널 등록/관리를 요청하거나, (2) 등록된 채널의 새 영상 수집을 요청하거나, (3) 유튜브 영상 요약을 요청할 때 사용. 데이터는 .reference/ 폴더에 YAML 형식으로 저장됨.

Install

mkdir -p .claude/skills/youtube-collector && curl -L -o skill.zip "https://mcp.directory/api/skills/download/6127" && unzip -o skill.zip -d .claude/skills/youtube-collector && rm skill.zip

Installs to .claude/skills/youtube-collector

About this skill

YouTube Collector

등록된 유튜브 채널의 새 컨텐츠를 수집하고 자막 기반 요약을 생성.

사전 요구사항

필수 패키지:

pip install google-api-python-client youtube-transcript-api pyyaml

API 키 설정: 보안을 위해 API 키는 사용자 홈 디렉토리에 저장됨.

# API 키 설정 (대화형)
python3 scripts/setup_api_key.py

# 또는 직접 지정
python3 scripts/setup_api_key.py --api-key YOUR_API_KEY

# 현재 설정 확인
python3 scripts/setup_api_key.py --show

설정 파일 경로:

  • macOS/Linux: ~/.config/youtube-collector/config.yaml
  • Windows: %APPDATA%\youtube-collector\config.yaml

워크플로우

1. 채널 등록

채널 URL 또는 핸들로 등록:

# 핸들로 등록
python3 scripts/register_channel.py --channel-handle @channelname --output-dir .reference/

# URL로 등록
python3 scripts/register_channel.py --channel-url "https://youtube.com/@channelname" --output-dir .reference/

결과: .reference/channels.yaml에 채널 정보가 추가됨.

2. 컨텐츠 수집

스크립트가 영상 목록 조회 + 자막 수집 + YAML 파일 저장을 자동으로 처리:

# 특정 채널 수집
python3 scripts/collect_videos.py --channel-handle @channelname --output-dir .reference/ --max-results 10

# 등록된 모든 채널 수집
python3 scripts/collect_videos.py --all --output-dir .reference/

결과: .reference/contents/{channel_handle}/{video_id}.yaml 파일들이 생성됨.

3. 요약 생성

수집 결과 JSON에서 새로 추가된 영상 확인 후, 각 영상의 YAML 파일에 summary 필드 추가:

summary:
  source: "transcript"  # 또는 "description" (자막 없을 때)
  content: |
    ## 서론
    - 문제 제기 또는 주제 소개
    - 영상의 목적/배경

    ## 본론
    - 핵심 내용 상세 설명
    - 해결책, 방법론, 예시 등
    - 주요 포인트별 정리

    ## 결론
    - 핵심 요약
    - 시사점 또는 다음 단계

요약 생성 기준:

  • transcript.available: true → 자막 기반 요약, summary.source: "transcript"
  • transcript.available: false → 설명 기반 요약, summary.source: "description"

4. 데이터 조회

수집된 컨텐츠 확인:

  • .reference/contents/ 폴더 구조 확인
  • 특정 채널/영상의 YAML 파일 읽어서 정보 제공

스크립트 옵션

register_channel.py

옵션설명
--channel-handle채널 핸들 (@username)
--channel-url채널 URL
--channel-id채널 ID (UC...)
--output-dir저장 디렉토리 (기본: .reference)

collect_videos.py

옵션설명
--channel-handle특정 채널 핸들
--channel-id특정 채널 ID
--allchannels.yaml의 모든 채널 처리
--output-dir저장 디렉토리 (기본: .reference)
--max-results채널당 최대 수집 개수 (기본: 10)
--language자막 우선 언어 (기본: ko)
--no-skip-existing기존 파일 덮어쓰기

데이터 구조

상세 스키마: references/data-schema.md

영상 데이터 예시

video_id: "abc123"
title: "영상 제목"
published_at: "2025-12-10T10:00:00Z"
url: "https://youtube.com/watch?v=abc123"
thumbnail: "https://..."
description: "영상 설명..."
duration: "PT10M30S"
collected_at: "2025-12-13T15:00:00Z"
transcript:
  available: true
  language: "ko"
  text: "자막 전체..."
summary:
  source: "transcript"
  content: |
    ## 서론
    - 영상의 배경 및 목적

    ## 본론
    - 핵심 내용 1
    - 핵심 내용 2

    ## 결론
    - 핵심 요약

에러 처리

상황안내 메시지
API 키 미설정"YouTube Data API 키가 필요합니다. python3 scripts/setup_api_key.py로 설정해주세요."
채널 미등록"등록된 채널이 없습니다. 먼저 채널을 등록해주세요."
패키지 미설치"필요한 패키지를 설치해주세요: pip install google-api-python-client youtube-transcript-api pyyaml"
API 할당량 초과"YouTube API 할당량이 초과되었습니다. 내일 다시 시도해주세요."

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

643969

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

591705

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

318399

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

340397

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

452339

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

304231

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.