mcpField
Y
YouTube MCP Server

YouTube MCP Server

ローカル
github.com/nattyrazメディア・デザイン524 週間前に更新

YouTube MCP Server について

YouTube MCP Serverは、動画のメタデータ取得、字幕抽出、Markdown変換を行うMCPサーバーです。動画コンテンツを扱うクライアントやエージェント向けに、複数の出力テンプレートと字幕検索を提供します。

主な機能

  1. 01YouTube動画のメタデータ取得
  2. 02自動生成字幕と手動字幕の抽出
  3. 03英語・フランス語の字幕に対応
  4. 043種類のテンプレートでMarkdown変換
  5. 05動画字幕内の検索

活用シーン

  1. 01閲覧や確認のために字幕を抽出
  2. 02タイムスタンプ付きの動画メモをMarkdownで作成
  3. 03字幕内のキーワードと周辺情報を検索

MCP 対応

動画情報の取得、字幕抽出、Markdown変換、テンプレート一覧のMCPツールを提供します。APIキーまたはOAuth2で認証できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

YouTube MCP サーバー

YouTube 動画を操作するための Model Context Protocol(MCP)サーバーです。このサーバーは、動画メタデータや字幕の抽出、およびさまざまなテンプレートを使った Markdown 形式への変換を行うツールを提供します。

特長

  • 動画メタデータ:動画の包括的な情報を取得します
  • 字幕の抽出:自動生成字幕と手動字幕に対応しています
  • 複数の言語:英語とフランス語を標準でサポートしています
  • テンプレートシステム:組み込みの Markdown テンプレートが 3 種類あります:
    • Basic:シンプルな文字起こし形式
    • Detailed:タイムスタンプ付きの完全なメタデータ
    • Search:コンテキストを含む検索結果のハイライト表示
  • 検索機能:動画の字幕内を検索します
  • 柔軟な認証:API キーと OAuth2 認証の両方に対応しています

前提条件

  • Node.js(v16 以降)
  • npm または yarn
  • YouTube Data API キーおよび/または OAuth2 認証情報

インストール

  1. リポジトリをクローンします:
git clone [repository-url]
cd youtube-mcp
  1. 依存関係をインストールします:
npm install
  1. プロジェクトをビルドします:
npm run build

設定

ルートディレクトリに .env ファイルを作成し、YouTube の認証情報を設定します:

YOUTUBE_API_KEY=your_api_key
YOUTUBE_CLIENT_ID=your_client_id
YOUTUBE_CLIENT_SECRET=your_client_secret
YOUTUBE_REFRESH_TOKEN=your_refresh_token  # Optional, for OAuth2

MCP の設定

MCP 設定ファイル(通常は ~/.config/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json)にサーバーを追加します:

{
  "mcpServers": {
    "youtube": {
      "command": "node",
      "args": ["path/to/youtube-mcp/build/index.js"],
      "env": {
        "YOUTUBE_API_KEY": "your_api_key",
        "YOUTUBE_CLIENT_ID": "your_client_id",
        "YOUTUBE_CLIENT_SECRET": "your_client_secret"
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

使い方

サーバーは次のツールを提供します:

1. 動画情報の取得
use_mcp_tool youtube get_video_info {
  "url": "https://www.youtube.com/watch?v=VIDEO_ID"
}
2. 字幕の取得
use_mcp_tool youtube get_captions {
  "url": "https://www.youtube.com/watch?v=VIDEO_ID",
  "language": "en"  // Optional, defaults to "en"
}
3. Markdown への変換
use_mcp_tool youtube convert_to_markdown {
  "url": "https://www.youtube.com/watch?v=VIDEO_ID",
  "template_name": "detailed",  // Optional, "basic", "detailed", or "search"
  "language": "en",            // Optional
  "options": {                 // Optional
    "include_chapters": true,
    "search_term": "keyword"   // Only for search template
  }
}
4. テンプレートの一覧表示
use_mcp_tool youtube list_templates

依存関係

{
  "dependencies": {
    "@modelcontextprotocol/sdk": "latest",
    "googleapis": "^146.0.0",
    "google-auth-library": "^9.0.0",
    "youtube-captions-scraper": "^2.0.0",
    "express": "^4.18.2",
    "open": "^9.1.0"
  },
  "devDependencies": {
    "@types/node": "^20.0.0",
    "typescript": "^5.0.0",
    "tsx": "^4.0.0"
  }
}

OAuth2 の設定

OAuth2 認証(非公開動画へのアクセスに必要)を設定するには:

  1. Google Cloud Console でプロジェクトを作成します
  2. YouTube Data API v3 を有効にします
  3. OAuth2 認証情報を作成します(ウェブアプリケーションタイプ)
  4. 認証スクリプトを実行します:
node src/get-api-key.js
  1. ブラウザーの案内に従ってアプリケーションを認証します
  2. リフレッシュトークンを設定にコピーします

テンプレートのカスタマイズ

src/index.ts の DEFAULT_TEMPLATES 配列を変更して、カスタムテンプレートを追加できます。テンプレートは次の構造に従います:

interface MarkdownTemplate {
  name: string;
  description: string;
  format: {
    header?: string;
    chapter_format?: string;
    caption_block: string;
    timestamp_format?: string;
    search_result_format?: string;
  }
}

ライセンス

MIT

貢献

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/amazing-feature)
  3. 変更をコミットします(git commit -m 'Add some amazing feature')
  4. ブランチにプッシュします(git push origin feature/amazing-feature)
  5. Pull Request を作成します

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。