Skip to main content
Glama

Edutube MCP

🌐 プロジェクトサイト(GitHub Pages): https://engmohammeda.github.io/edutube-mcp/ — 実際に抽出されたレッスンのライブエクスプローラーを含みます。

YouTube のプレイリストと動画を、構造化されたレッスン、分析、フレーム、クイズに変換します — Google Gemini と自動モデルローテーション対応。

AI エージェントと LMS パイプラインのための MCP stdio サーバー + CLI。プレイリストの URL を貼り付けるだけで、レッスンごとの JSON を取得できます: アラビア語翻訳付きの逐語対話、重要表現、語彙、文化的/発音ノート、10 問のクイズ — キャプションだけでなく、実際の音声映像から抽出されます。

playlist URL ──▶ Edutube ──▶ lesson-01.json … lesson-NN.json + lessons-all.json

機能

  • URL によるプレイリストインポート — YouTube のプレイリスト URL(またはプレイリスト ID、単一動画 URL)を貼り付けるだけ。YOUTUBE_API_KEY が設定されている場合は YouTube Data API 経由でエントリを解決し、それ以外の場合は yt-dlp --flat-playlist で自動的に解決します(追加キー不要)。

  • 構造化レッスン抽出 — 組み込みの LMS スキーマ(dialogue / key_expressions / global_vocabulary / lesson_notes / quiz)と、独自フォーマット用のカスタムスキーマオプションを備えています。

  • ウィンドウフォールバック付き長尺動画パイプライン — まず全動画パスを試行。失敗した場合(クォータ、期限、非常に長い VOD など)は、自動的に 150 秒ウィンドウ抽出に切り替え、マージと重複排除を行います。

  • 自動モデルローテーション — 各 Gemini モデルには独自の無料枠クォータプールがあります。429 RESOURCE_EXHAUSTED が発生すると、同じリクエストが透過的に次の利用可能なモデルで再試行されます。モデルカタログは Gemini API からライブで検出されるため、新しいモデル(例: gemini-3.6-flashgemini-3.7-*)はコード変更なしでローテーションに参加します。

  • マルチモーダル分析ツールanalyze_youtube_video(音声 + 映像)、analyze_youtube_video_audio(音声優先)、yt-dlp + ffmpeg による正確な JPEG フレーム抽出、YouTube Data API によるメタデータ。

  • 長尺 VOD とセッション — タスクベースの analyze_long_youtube_video、再利用可能な sessionId フォローアップ、互換性のあるバックグラウンドジョブ(start_long_youtube_analysis → ポーリング → 結果 → キャンセル)。

  • 再開セーフなバッチ — 有効なレッスンファイルはスキップされ、中断された実行は中断箇所から続行されます。

  • CLI モードedutube-mcp extract <url> は MCP クライアントなしで動作します。

Related MCP server: YT-NINJA

要件

  • Node.js ≥ 20

  • Google Gemini API キー(GEMINI_API_KEY

  • 任意: YOUTUBE_API_KEY(メタデータツール + 高速プレイリストインポート)

  • 任意だが推奨: PATH 上の yt-dlpffmpeg(または YT_DLP_PATH

クイックスタート(MCP クライアント)

{
  "mcpServers": {
    "edutube": {
      "command": "npx",
      "args": ["-y", "@engmohammeda/edutube-mcp"],
      "env": {
        "GEMINI_API_KEY": "your_gemini_key_here",
        "YOUTUBE_API_KEY": "optional_youtube_key_here"
      }
    }
  }
}

ソースから:

git clone https://github.com/engmohammeda/edutube-mcp.git
cd edutube-mcp
npm install && npm run build
cp .env.example .env   # fill GEMINI_API_KEY
npm start              # MCP stdio server

クイックスタート(CLI)

# extract a whole playlist into ./edutube-output
edutube-mcp extract "https://www.youtube.com/playlist?list=PL..." --out ./edutube-output --max 20

# or a single video
edutube-mcp extract "https://www.youtube.com/watch?v=VIDEO_ID" --out ./lessons

標準出力はクリーンな JSON です(進行状況は stderr に出力されるため、スクリプトや LMS インポーターに直接パイプできます)。

ツール(15)

ツール

目的

start_edutube_extraction

プレイリスト/動画 URL を貼り付けoutputDir に構造化レッスンを書き込むバックグラウンドジョブ

get_edutube_job_status / get_edutube_job_result / cancel_edutube_job

edutube ジョブのポーリング、取得、キャンセル

analyze_youtube_video

マルチモーダル分析(音声 + 映像)、カスタムプロンプトと JSON スキーマ、クリップウィンドウ

analyze_youtube_video_audio

文字起こしセグメント付きの音声優先分析

get_youtube_video_frame

タイムスタンプでの正確な高解像度 JPEG フレーム(任意の Gemini タイムスタンプ精緻化)

get_youtube_video_metadata

YouTube Data API による正規化されたメタデータ

get_youtube_analyzer_capabilities

ローカルの yt-dlp/ffmpeg/temp サポートを検査

analyze_long_youtube_video

長尺 VOD を MCP タスクとして処理。再利用可能な sessionId を返します

continue_long_video_analysis

キャッシュされたセッションに対するフォローアップ質問

start_long_youtube_analysis / get_long_..._status / get_long_..._result / cancel_long_...

固定タイムアウトのクライアント向け互換性ジョブワークフロー

設定

変数

目的

GEMINI_API_KEY

必須

YOUTUBE_API_KEY

任意(Data API 経由のメタデータ + プレイリスト)

GEMINI_MODEL

優先モデル(デフォルト gemini-2.5-flash、無料枠で推奨)

GEMINI_MODEL_ROTATION

任意の明示的なローテーション順序(カンマ区切り)

EDUTUBE_OUTPUT_DIR

デフォルトのレッスン出力ディレクトリ

YT_DLP_PATH

明示的な yt-dlp 実行可能ファイル

クライアント統合

Claude Code

claude mcp add edutube --transport stdio -- node /path/to/edutube-mcp/dist/index.js

Cursor~/.cursor/mcp.json

{
  "mcpServers": {
    "edutube": {
      "command": "node",
      "args": ["/path/to/edutube-mcp/dist/index.js"],
      "env": { "GEMINI_API_KEY": "..." }
    }
  }
}

Codex~/.codex/config.toml

[mcp_servers.edutube]
command = "node"
args = ["/path/to/edutube-mcp/dist/index.js"]
env = { GEMINI_API_KEY = "..." }

ドキュメント

プライバシーと制限

メディア、URL、プロンプトは Google Gemini に送信されます。無料枠キーにはモデルごとに少量の日次クォータがあります(約 20 リクエスト/日/モデル)。自動ローテーションにより、キー上のすべてのモデルに作業が分散されます。本番バッチには有料(従量課金)キーを使用してください。非公開、年齢制限付き、DRM、または地域制限付きの動画は失敗する可能性があります。YouTube と Gemini の利用規約を遵守する責任はあなたにあります。

ライセンス

MIT — LICENSE を参照してください。


日本語

Edutube MCP — YouTube のプレイリストと動画を、LMS にインポート可能な構造化レッスンに変換します: アラビア語翻訳付きの完全な対話、キー表現、必須例文付きの語彙、文化的/発音ノート(アラビア語)、複数タイプの 10 問クイズ — テキストキャプションだけでなく、実際の音声映像から抽出されます。

主な機能:

  • リンクを貼り付けるだけでプレイリストをインポートstart_edutube_extraction ツール(または CLI コマンド edutube-mcp extract)を使用し、完了済みレッスンをスキップする自動再開機能付き。

  • Gemini モデル間の自動ローテーション: モデルのクォータが尽きると(429)、リクエストは自動的に次のモデルで再試行され、キーで利用可能な新しいモデルを動的に検出します。

  • 長尺動画パス + 失敗時の 150 秒ウィンドウ代替、マージと重複排除。

  • マルチモーダル分析、正確な JPEG フレーム抽出、メタデータ、固定タイムアウトのクライアント向けバックグラウンド機能を含む 15 の MCP ツール。

クイックスタート: .env.example.env にコピーして GEMINI_API_KEY を設定し、npm install && npm run build && npm start を実行するか、CLI を直接使用します。詳細と Claude Code、Cursor、Codex との連携については、上記のドキュメントを参照してください。

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Transforms YouTube into a queryable knowledge source with search, video details, transcript analysis, and AI-powered tools for summaries, learning paths, and knowledge graphs. Features quota-aware API access with caching and optional OpenAI/Anthropic integration for advanced content analysis.
    10
    590
    1
    MIT
  • F
    license
    B
    quality
    D
    maintenance
    Enables AI-powered YouTube video analysis including transcript management, video summaries, chapter generation, keyword extraction, and playback control. Supports searching videos, retrieving channel/playlist information, and translating transcripts using Google Gemini AI.
    14
  • F
    license
    A
    quality
    C
    maintenance
    Enables analysis of YouTube videos using the Gemini API to generate summaries and answer specific questions via direct URLs. It supports standard videos and shorts, allowing users to interact with video content without requiring manual downloads.
    5
    4

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/engmohammeda/edutube-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server