video-agent-mcp
Video Learning Agent
Video Learning Agent automatisiert „Lernen durch Videos“ zu einer Engineering-Pipeline.
Du gibst ihm einen Bilibili/YouTube-Videolink, einen Sammellink oder eine Videolistendatei. Es versucht zuerst, Untertitel zu bekommen; wenn es keine Untertitel gibt, sendet es die Aufgabe an deine gemietete GPU-Cloud-Maschine, um ASR auszuführen; nach Abschluss der Transkription werden die Ergebnisse lokal abgerufen, ein Markdown-Lerndokument wird generiert und ein lokaler Suchindex wird aufgebaut.
B站 / YouTube 链接或列表
-> 优先获取字幕
-> 无字幕时上传任务到 GPU 云主机
-> GPU 下载音频并跑 faster-whisper ASR
-> 拉回 transcript.md / segments.jsonl
-> 生成可学习、可操作的 Markdown 总结
-> 建 SQLite / Chroma 搜索索引Für wen geeignet
Personen, die Kursvideos in großen Mengen konsumieren möchten
Personen, die öffentliche Videos in Lerndokumente umwandeln möchten
Personen, die automatisch „Wissenspunkte + Beispiele + Tool-Befehle + GitHub-Projekte + KI-Praxisprojekte“ generieren möchten
Personen, die möchten, dass Claude, Codex, WorkBuddy diesen Ablauf über MCP aufrufen
Related MCP server: Open CLAW Knowledge Distiller
Funktionen
Unterstützt Bilibili und YouTube
Unterstützt Einzelvideos, Sammellisten, Playlists, TSV/CSV-Videolisten
Bevorzugt Untertitel abrufen, ASR nur wenn Untertitel nicht verfügbar
Unterstützt das manuelle Mieten einer GPU-Cloud-Maschine und die Übergabe der SSH-Informationen an den Agenten zur automatischen Verarbeitung
Remote-ASR verwendet
faster-whisperStandardmodell
mediumStandard-GPU-Modus
cuda + float16Standardmäßig 20 Videos pro Batch
Standardmäßig kann eine 4090 3 ASR-Worker parallel versuchen
Echtzeit-Anzeige des Download-/ASR-Fortschritts
Nach dem lokalen Abruf der Ergebnisse wird ein Markdown-Lerndokument generiert
Lokale SQLite-Suche, optionale Chroma-Semantiksuche
Bietet MCP-Server
Installation
git clone https://github.com/hahahng/video-learning-agent.git
cd video-learning-agent
python3 -m pip install -e '.[remote,mcp,test,yaml]'Das System benötigt:
ffmpeg
yt-dlp
python >= 3.10Unter macOS kann man es so installieren:
brew install ffmpeg yt-dlpEinfachste Verwendung: Videos mit Untertiteln
Wenn das Video Untertitel hat, ist keine GPU erforderlich.
video-agent ingest "https://www.bilibili.com/video/BVxxx"Der Befehl erstellt ein Aufgabenverzeichnis:
work/jobs/<job_id>/Status anzeigen:
video-agent status <job_id>Zusammenfassung generieren:
video-agent digest <job_id> --indexSuchen:
video-agent search "文件系统"Was tun, wenn keine Untertitel vorhanden sind: GPU mieten und ASR ausführen
Wenn das Video keine Untertitel hat oder die Untertitelqualität zu schlecht ist, miete eine Cloud-Maschine mit NVIDIA-GPU, um ASR auszuführen.
Dieses Projekt kauft die Maschine nicht automatisch für dich. Du startest selbst eine GPU-Instanz auf der Cloud-Plattform und trägst die SSH-Informationen in die Konfiguration ein.
Empfohlene Konfiguration:
GPU: RTX 4090 / A10 / A100 / L40S sind alle geeignet
System: Ubuntu 20.04 / 22.04
Speicher: mindestens 50GB, für Batch-Verarbeitung empfohlen 100GB+
Netzwerk: Zugriff auf Bilibili / YouTube / Hugging Face Modell-Download-Adressen
Anmeldemethode: SSH-Passwort oder SSH-Key
1. GPU-Cloud-Maschine mieten
Wähle eine beliebige GPU-Cloud-Plattform mit SSH-Unterstützung. Zum Beispiel die AutoDL-Konsole:
https://www.autodl.com/console/instance/listDer allgemeine Ablauf ist:
GPU-Instanz auswählen, z. B. 4090.
Ubuntu-Image auswählen.
Einschalten.
SSH-Verbindungsinformationen in der Konsole finden:
host port user password 或 private keyLokal zuerst bestätigen, dass man sich anmelden kann:
ssh -p <port> <user>@<host>
Solange dieser Schritt funktioniert, kann der Agent die anschließende Installation von Abhängigkeiten, das Hochladen von Aufgaben, das Ausführen von ASR und das Abrufen der Ergebnisse übernehmen.
Weitere Details: GPU-ASR-Anleitung
AutoDL-Beispiel
Bei Verwendung von AutoDL:
AutoDL-Instanzliste öffnen.
Eine GPU-Instanz neu erstellen oder starten.
Empfohlen: 4090 wählen, System-Image Ubuntu wählen.
In die Instanzdetailseite gehen und die SSH-Anmeldeinformationen kopieren.
Du erhältst Informationen ähnlich wie diese:
host: connect.xxx.autodl.com 或平台提供的连接地址 port: 具体端口 user: root password: 实例密码Zuerst lokal testen:
ssh -p <port> root@<host>Wenn die Anmeldung funktioniert, host/port/user in
video-agent.config.yamleintragen und das Passwort in die Umgebungsvariable setzen.
2. GPU-SSH konfigurieren
Konfigurationsdatei kopieren:
cp video-agent.config.example.yaml video-agent.config.yamlvideo-agent.config.yaml bearbeiten:
jobs_root: work/jobs
data_root: data
gpu_profiles:
my_4090:
host: your.gpu.ssh.host
port: 22
user: root
remote_root: /root/autodl-tmp/video-learning-agent
password_env: VIDEO_GPU_PASSWORDDas Passwort nicht in die Konfigurationsdatei schreiben. In die Umgebungsvariable setzen:
export VIDEO_GPU_PASSWORD='你的 GPU SSH 密码'Bei Verwendung von SSH-Key:
gpu_profiles:
my_4090:
host: your.gpu.ssh.host
port: 22
user: root
remote_root: /root/autodl-tmp/video-learning-agent
key_filename: /Users/you/.ssh/id_ed255193. Videoliste in Batches verarbeiten
TSV-Format-Beispiel:
index bv title url duration
1 BVxxxx 第一节 https://www.bilibili.com/video/BVxxxx
2 BVyyyy 第二节 https://www.bilibili.com/video/BVyyyy Starten:
video-agent ingest ./videos.tsv \
--gpu-profile my_4090 \
--batch-size 20 \
--asr-workers 3Wenn du bereits einen Job erstellt hast, aber das Remote-ASR noch nicht gestartet hast:
video-agent run-remote-asr <job_id> \
--gpu-profile my_4090 \
--batch-size 20 \
--asr-workers 34. Fortschritt in Echtzeit anzeigen
video-agent status <job_id> --gpu-profile my_4090 --watchAusgabe ähnlich wie:
进度:ASR 中
音频:51 / 73
转写:18 / 73
当前:BVxxxx
GPU:82%,显存 17.4G / 24.0G
音频占用:3.9G
数据盘剩余:46G
错误:无5. Ergebnisse abrufen
video-agent pull <job_id> --gpu-profile my_4090Lokale Ergebnisse befinden sich in:
work/jobs/<job_id>/transcripts/Jedes Video enthält:
transcript.md
segments.jsonl6. Lerndokument generieren
video-agent digest <job_id> --indexAusgabe:
work/jobs/<job_id>/digests/
data/video_learning.sqliteWenn OPENAI_API_KEY gesetzt ist, wird das große Sprachmodell aufgerufen, um eine umfangreichere Zusammenfassung zu generieren:
export OPENAI_API_KEY='你的 OpenAI API Key'
video-agent digest <job_id> --indexOhne API-Key wird ein strukturell vollständiger lokaler Entwurf generiert.
Vorlage für Zusammenfassungsdokument
Für jedes Video wird ein Markdown-Dokument generiert:
# 编号|总结标题
## 0. 这节课的主线流程图
## 1. 知识点
## 2. 老师例子
## 3. 中间用了什么工具、命令、工作流,我们可以学什么
## 4. GitHub 可复现项目
## 5. 我们利用 AI 可以做什么项目
## 6. 今天可以动手做什么
## 7. 学完这节应该留下什么Abschnitt 7 versucht, möglichst Folgendes abzudecken:
落地产物
输入
步骤
命令
验收标准
效率提升MCP-Verwendung
MCP-Server starten:
video-agent-mcpBereitgestellte Tools:
ingest_urljob_statusrun_remote_asrpull_transcriptsdigest_transcriptssearch_notes
Claude, Codex, WorkBuddy können diese Tools aufrufen, solange sie MCP unterstützen.
Optionale Chroma-Vektordatenbank
Die Standardsuche ist SQLite-Chinesisch-n-gram und läuft offline.
Für semantische Suche:
python3 -m pip install chromadb
video-agent index --docs work/jobs/<job_id>/digests --chroma
video-agent search "能做什么 AI 项目" --chromaSicherheitshinweise
SSH-Passwort nicht in
video-agent.config.yamlschreiben..env,video-agent.config.yaml,work/jobs/nicht committen.Die GPU-Cloud-Maschine ist nur für das Herunterladen von Audio und ASR zuständig; die Zusammenfassung läuft standardmäßig lokal.
Das aktuelle Projekt kauft, stoppt oder zerstört keine Cloud-Maschinen automatisch.
Entwicklung und Tests
python3 -m compileall video_learning_agent tests
python3 -m pytest -qThis server cannot be installed
Maintenance
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
- AlicenseNot gradedqualityCmaintenanceTransforms YouTube videos into LLM-ready knowledge bases through transcription, semantic chunking, and vector embedding services. It provides 12 specialized MCP tools for video processing, semantic search, and SEO intelligence analysis.MIT
- AlicenseNot gradedqualityDmaintenanceConverts YouTube and Bilibili videos into structured knowledge articles using local transcription or subtitle extraction combined with AI-powered summarization. It supports multiple summary styles and provides tools to process URLs, track job status, and retrieve results directly within MCP-compatible agents.63MIT
- FlicenseNot gradedqualityBmaintenanceMCP server that converts PDF, video, web, and audio inputs into structured Markdown notes with support for checkpointing, batch processing, and Obsidian integration.
- AlicenseAqualityAmaintenanceMCP server that converts video links into AI-generated Markdown notes, with tools for task management, transcription engines, and LLM providers.22248MIT
Related MCP Connectors
Multimodal video analysis MCP — transcription, vision, and OCR for any video URL.
Any social-video URL → transcript, metadata, frames, OCR, summary, search, Q&A. MCP server + x402.
MCP server for Clipkit — gives AI agents a video toolbox via the Clipkit schema.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/hahahng/video-learning-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server