MCP 문서 관리

메뉴

YouTube

YouTube

YouTube MCP 서버는 프록시 지원을 통한 YouTube 비디오 정보 추출 기능을 제공합니다. 이 서버를 통해 LLM은 YouTube 비디오의 제목, 설명, 자막, 메타데이터 등에 접근하여 콘텐츠 분석, 요약, 번역 등 다양한 작업을 수행할 수 있습니다. 또한 일부 구현에서는 비디오 관리, 쇼츠 제작, 분석 기능까지 지원합니다.

특징

  • 비디오 정보 추출: 제목, 설명, 썸네일, 업로드 날짜 등 비디오 메타데이터 접근
  • 자막 추출: 비디오 자막 텍스트 추출 및 처리
  • 프록시 지원: 다양한 지역 제한을 우회할 수 있는 프록시 서버 지원
  • 고급 구현(일부 버전): 비디오 관리, 쇼츠 제작, 분석 기능
  • LLM 친화적 포맷: Markdown 변환으로 LLM이 쉽게 처리할 수 있는 형태로 정보 제공

API

도구

기본 비디오 정보

  • get_video_info: 비디오 기본 정보 검색
  • 입력: 비디오 ID 또는 URL
  • 출력: 제목, 설명, 채널, 날짜, 시청 수 등 정보

  • get_video_subtitles: 비디오 자막 추출

  • 입력: 비디오 ID 또는 URL, 언어 코드(선택적)
  • 출력: 자막 텍스트 또는 Markdown 형식의 자막

고급 기능(일부 구현)

  • search_videos: 검색어를 기반으로 비디오 검색
  • 입력: 검색어, 필터 옵션
  • 출력: 검색 결과 목록

  • get_channel_info: 채널 정보 검색

  • 입력: 채널 ID 또는 URL
  • 출력: 채널 이름, 설명, 구독자 수 등 정보

  • analyze_video: 비디오 콘텐츠 분석

  • 입력: 비디오 ID 또는 URL, 분석 유형
  • 출력: 분석 결과 데이터

비디오 관리(확장 구현)

  • upload_video: 비디오 업로드
  • 입력: 비디오 파일, 제목, 설명 등
  • 출력: 업로드 성공 여부 및 비디오 ID

  • create_shorts: 쇼츠 형식 비디오 생성

  • 입력: 미디어 파일, 설정
  • 출력: 생성된 쇼츠 정보

사용 방법

설치

여러 구현이 있으므로 일반적인 설치 방법은 다음과 같습니다:

# npm을 통한 설치
npm install -g youtube-mcp-server

# 또는 uvx 사용
uvx youtube-mcp

# 또는 Python 기반 구현
pip install mcp-youtube

구성

Claude Desktop에서 이 서버를 사용하려면 다음과 같이 설정 파일에 추가할 수 있습니다:

{
  "mcpServers": {
    "youtube": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/author/mcp-youtube", "mcp-youtube"]
    }
  }
}

고급 기능을 사용하려면 YouTube API 키가 필요할 수 있습니다:

{
  "mcpServers": {
    "youtube": {
      "command": "npx",
      "args": ["-y", "youtube-mcp-server"],
      "env": {
        "YOUTUBE_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

필요 조건

자막 추출 기능을 사용하는 구현의 경우 yt-dlp 도구가 로컬에 설치되어 있어야 할 수 있습니다:

# Homebrew 사용(macOS)
brew install yt-dlp

# WinGet 사용(Windows)
winget install yt-dlp

사용 예시

// 비디오 기본 정보 가져오기
const videoInfo = await get_video_info("https://www.youtube.com/watch?v=dQw4w9WgXcQ");
console.log(videoInfo.title);

// 비디오 자막 가져오기
const subtitles = await get_video_subtitles("dQw4w9WgXcQ");
console.log(subtitles);

// 채널 정보 가져오기(고급 구현)
const channelInfo = await get_channel_info("UCuAXFkgsw1L7xaCfnd5JJOw");
console.log(channelInfo.subscriberCount);

연결된 구성 요소

  • Markdownify - PPTX, HTML, PDF, YouTube 트랜스크립트 등을 Markdown으로 변환
  • Video Editor - 비디오 추가, 편집 및 검색을 위한 MCP 서버
  • ElevenLabs - 텍스트 음성 변환 API와의 통합으로 오디오 작업 가능