VOOZH about

URL: https://glama.ai/mcp/servers/aTreeFrog/videolab-mcp?locale=de-DE

⇱ videolab-mcp by aTreeFrog | Glama


videolab-mcp

Ein MCP-Server, der Claude (oder jeden anderen MCP-Host) in einen praktischen Video-Editor für Kurzvideos verwandelt. Durchsuche eine Musikbibliothek oder generiere neue Tracks. Animiere Standbilder mit Veo oder erstelle Lippen-Synchronisation für Porträts mit OmniHuman. Schreibe und überarbeite Skripte. Synthetisiere Voiceover mit ElevenLabs. Setze die Timeline mit FFmpeg zusammen, spiele das Ergebnis ab und iteriere kostengünstig, indem du die Musik, das Voiceover oder einen einzelnen Clip austauschst – ohne alles von Grund auf neu rendern zu müssen.

Er enthält außerdem eine Text-zu-Dokumentation-Funktion, die lange Texte (PDFs, Bücher, Dokumente) in strukturierte Dokumentarvideos mit KI-generiertem Voiceover, Untertiteln und B-Roll umwandelt.

Eigenständig, portabel, konfigurierbar. Bringe deine eigenen API-Schlüssel mit.

Was ist enthalten

Tools für den gesamten Workflow:

Kategorie

Tools

Musik

list_music, preview_music, generate_music

B-Roll

list_broll, preview_broll

Szenen-Assets

list_scene_assets, get_scene_asset

Bilder

generate_image, list_images, get_image

Voiceover (ElevenLabs)

list_voices, generate_voiceover, preview_voiceover, list_voiceovers

Skript (Anthropic)

generate_script, rewrite_script, get_script, list_scripts

Videoschnitt (FFmpeg)

assemble_promo, swap_music, swap_voiceover, swap_clip, play_render, list_recent_renders, describe_render

Animation (Veo)

animate_image_to_video

Talking Heads (Fal OmniHuman)

generate_talking_head

Dokumentation

extract_pdf, split_chapters, plan_documentary_scenes, validate_attention

Diagnose

ping, describe_capabilities

Ressourcen zum Durchsuchen ohne Tool-Aufrufe: library://music, library://broll, library://renders, library://voiceovers, library://scripts, library://scenes.

Prompts für geführte mehrstufige Abläufe: make-scene-promo, remix-render, compose-music-for-scene.

Skills in skills/: text-to-documentary — PDF/Buch → kapitelweise Dokumentarvideos mit strukturierten Erzählbögen.

Related MCP server: ffmpeg-mcp

Anforderungen

  • Node.js 18+

  • FFmpeg in deinem PATH (oder setze ffmpeg.binary auf einen absoluten Pfad in der Konfiguration)

  • API-Schlüssel für die verwendeten Anbieter (keine sind vorab erforderlich — Lazy-Init erst beim ersten Aufruf)

Schnellstart

git clone <this-repo> videolab-mcp
cd videolab-mcp
npm install
npm run build
cp videolab.config.example.json videolab.config.json
cp .env.example .env # then fill in keys you have

Binde es in Claude Desktop ein (~/Library/Application Support/Claude/claude_desktop_config.json unter macOS, %AppData%\Claude\claude_desktop_config.json unter Windows):

{
 "mcpServers": {
 "videolab": {
 "command": "node",
 "args": ["C:\\path\\to\\videolab-mcp\\build\\index.js"],
 "env": {
 "ELEVENLABS_API_KEY": "...",
 "ANTHROPIC_API_KEY": "...",
 "GOOGLE_VEO_API_KEY": "...",
 "FAL_KEY": "...",
 "VIDEOLAB_CONFIG": "C:\\path\\to\\videolab-mcp\\videolab.config.json"
 }
 }
 }
}

Starte Claude Desktop neu. Öffne einen Chat und rufe ping auf, um die Verbindung zu bestätigen.

Konfiguration

Zwei Dateien. .env nur für Geheimnisse:

ELEVENLABS_API_KEY=
ANTHROPIC_API_KEY=
GOOGLE_VEO_API_KEY=
FAL_KEY=

videolab.config.json für alles andere (Speicher, Anbieter, FFmpeg-Flags, Standardwerte). Die Beispieldatei ist sinnvoll und ohne Abhängigkeiten: lokaler Speicher, JSON-Index, ElevenLabs/Anthropic/Veo/Fal-Anbieter, Mobile-Standardwerte (9:16).

Walkthrough — Erstelle eine Promo von Grund auf

In Claude Desktop, bei verbundenem MCP-Server:

User: Make a 20-second mobile promo for the test scene.

Claude:
 → list_scene_assets({ sceneRef: { key: "test-scene" } })
 → 3 assets: magenta, cyan, orange

 → generate_script({
 context: "Test scene with three coloured backdrops",
 durationSeconds: 20, tone: "punchy"
 })
 → scriptId: script_a3f, slot breakdown shown

 → generate_voiceover({ text: "<the script>" })
 → voiceoverId: vo_8d2

 → generate_music({
 prompt: "driving electronic, slow build, retro synth pad",
 durationMs: 20000
 })
 → trackId: music_4e1

 → assemble_promo({
 timeline: {
 platform: "mobile",
 slots: [
 { source: { kind: "scene", id: "asset-test-magenta" }, durationMs: 7000 },
 { source: { kind: "scene", id: "asset-test-cyan" }, durationMs: 7000 },
 { source: { kind: "scene", id: "asset-test-orange" }, durationMs: 6000 }
 ]
 },
 voiceoverId: "vo_8d2",
 musicId: "music_4e1"
 })
 → renderId: render_94c, autoplays in default video player

User: Make the music more chill.

Claude:
 → generate_music({ prompt: "soft ambient pad, gentle rhythm", durationMs: 20000 })
 → trackId: music_c70
 → swap_music({ renderId: "render_94c", newMusicId: "music_c70" })
 → renderId: render_d11 (rev of render_94c) — only re-mixes audio (~2s)

User: Replace the orange shot with a Veo animation of the magenta image zooming in.

Claude:
 → animate_image_to_video({
 imageSource: { kind: "scene", id: "asset-test-magenta" },
 prompt: "slow camera push-in, dust particles drifting"
 })
 → clipId: broll_veo_a8b
 → swap_clip({
 renderId: "render_d11",
 slotIndex: 2,
 newSource: { kind: "broll", id: "broll_veo_a8b" }
 })
 → renderId: render_2f9 (rev of render_d11)

Die Iterationsschleife

Das ist der Teil, der den Workflow so angenehm macht:

  • assemble_promo schreibt Zwischenschritte pro Slot (slot_*.mp4), ein stummes visuals.mp4, den Audiomix und das finale output.mp4 — alles unter media/renders/<renderId>/.

  • swap_music / swap_voiceover verwenden das visuals.mp4 des übergeordneten Elements wieder und mischen nur den Ton neu. Typische Dauer: ~2 Sekunden.

  • swap_clip baut den visuellen Stream neu auf + mischt den Ton neu. Typische Dauer: ~5–10 Sekunden.

  • Jeder Render ist eine neue renderId, die über parentId verknüpft ist — du verlierst nie eine frühere Version.

Text-zu-Dokumentation-Modus

Der skills/text-to-documentary/ Skill verwandelt ein PDF, ein Buch oder eingefügten langen Text in eine Reihe von ca. 5-minütigen Dokumentarvideos — eines pro Kapitel. Jedes Video hat einen strukturierten Erzählbogen (Hook → Kernidee → Beispiele → Pattern Interrupts → Mikro-Zusammenfassungen → Cliffhanger), Karaoke-Untertitel basierend auf ElevenLabs-Zeitstempeln und KI-generiertes B-Roll.

Verwendete Tools: extract_pdf, split_chapters, plan_documentary_scenes, validate_attention, generate_voiceover, generate_image, animate_image_to_video, generate_music, assemble_promo.

Wenn du Claude Code oder einen anderen Host verwendest, der Skills unterstützt, wird der Skill automatisch geladen, wenn er ausgelöst wird („verwandle dieses PDF in eine Dokumentation“, „erstelle Videos aus diesem Buch“ usw.). Andernfalls lies skills/text-to-documentary/SKILL.md für die vollständige Schrittliste und rufe die Tools direkt auf.

Benutzerdefinierter Szenen-Asset-Anbieter

Der Server ist anbieterunabhängig für Szenen-Assets. Der mitgelieferte json-manifest-Anbieter liest aus einer JSON-Datei. Alles Komplexere (dein CMS, eine Datenbank, eine API) wird als SceneAssetProvider implementiert:

export interface SceneAssetProvider {
 readonly kind: string;
 describeRefShape(): string; // shows up in the tool description so the host knows what to send
 listAssets(ref: SceneRef): Promise<SceneAsset[]>;
 getAsset(id: string): Promise<SceneAsset | null>;
}

Lege deine Implementierung in src/providers/scene-assets/<dein-name>.ts ab, registriere sie in src/providers/factory.ts unter buildSceneAssets und füge sie dem Konfigurationsschema in src/config.ts hinzu. Das gleiche Muster funktioniert für Speicher-Backends (S3, Azure) — siehe src/providers/types.ts:StorageProvider.

Anbieter-Matrix

Was

Standard-Anbieter

Umgebungsvariable

Konfigurationsfeld

Speicher

lokal

storage.kind

Index (Asset-Metadaten)

json

index.kind

Musikgenerierung

ElevenLabs Music

ELEVENLABS_API_KEY

providers.musicGen

TTS

ElevenLabs

ELEVENLABS_API_KEY

providers.tts

Skript-LLM

Anthropic Claude

ANTHROPIC_API_KEY

providers.llm

Bildgenerierung

Gemini Nano Banana

GOOGLE_VEO_API_KEY

providers.imageGen

Bild-zu-Video

Google Veo

GOOGLE_VEO_API_KEY

providers.animate

Talking-Head

Fal OmniHuman

FAL_KEY

providers.talkingHead

Szenen-Assets

json-manifest

providers.sceneAssets

Optionale Modell-Überschreibungen via Umgebungsvariablen: ANTHROPIC_MODEL, ELEVENLABS_MUSIC_MODEL, VEO_MODEL, VEO_ENDPOINT, VEO_POLL_INTERVAL_MS, VEO_POLL_TIMEOUT_MS, FAL_OMNIHUMAN_MODEL, PROMO_VIDEO_LOG_LEVEL.

Lizenz

MIT — siehe LICENSE.

A
license - permissive license
-
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.

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/aTreeFrog/videolab-mcp'

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