Skip to main content
Glama
YoutuberBox

YoutuberBox

by saroby

YoutuberBox

Faceless YouTube video automation MCP server — shorts (9:16) and long-form (16:9).

The connected LLM does the creative work (script, scene beats, image prompts); YoutuberBox does the execution: TTS narration via voicebox, AI images via CodexImage, whisper-timed burned-in captions, and ffmpeg assembly with Ken Burns motion. Built-in quality guardrails push output away from AI slop.

Pipeline

create_project → set_script → generate_narration ┐
                              generate_images    ├→ generate_captions → assemble_video
                                                 ┘

Tool

What it does

create_project

New project (shorts 1080×1920 / long 1920×1080), returns the quality guide

set_script

LLM-authored scenes (narration + 1–3 image prompts each), returns pacing/quality lint warnings

generate_narration

Per-scene TTS via voicebox (/generate/stream); reports durations; per-scene regeneration via sceneIds

generate_images

Per-scene images via CodexImage; 2–3 prompts per scene = intra-scene cuts; consistent style anchor

generate_captions

Word timestamps via mlx_whisper/whisper (proportional fallback) → karaoke word-highlight ASS; position/highlightColor knobs

assemble_video

Ken Burns per still (alternating direction), cuts every few seconds, caption burn-in, looped/ducked BGM, −14 LUFS loudnorm

list_voices

Voicebox voice profiles so the LLM picks a fitting narrator

generate_thumbnail

Text-free thumbnail via CodexImage (add typography yourself — AI text is a slop tell)

project_status

Pipeline state per scene

Resource: guide://quality — the anti-slop guide (hooks, pacing targets, image prompt rules, mix levels).

Related MCP server: Orbixio Studio

Requirements

  • Node.js 20+

  • ffmpeg / ffprobe on PATH

  • voicebox for TTS

  • CodexImage for image generation

  • Optional: mlx_whisper or whisper CLI for word-accurate caption timing

Install

npm install
npm run build

Register with your MCP client (e.g. Claude Code):

{
  "mcpServers": {
    "youtuberbox": {
      "command": "node",
      "args": ["/path/to/YoutuberBox/dist/index.js"]
    }
  }
}

Projects land in ~/YoutuberBox/projects/<id>/ (override with YOUTUBERBOX_HOME).

Configuration

Env var

Default

Purpose

VOICEBOX_URL

http://127.0.0.1:17493

Voicebox REST API (run the Voicebox app)

CODEXIMAGE_URL

— (required)

CodexImage server base URL

CODEXIMAGE_API_KEY

— (required)

CodexImage API token (Bearer)

CODEXIMAGE_QUALITY

medium

low | medium | high

YOUTUBERBOX_HOME

~/YoutuberBox

Where projects and renders are stored

Voice selection: pass voice to create_project/generate_narration as a Voicebox profile name or id; defaults to your first profile.

Captions: if your ffmpeg has libass, captions are burned in (styled, word-group pop for shorts). Otherwise they're muxed as a soft mov_text track and the tool tells you how to upgrade.

Design notes

Ideas borrowed from the best of the ecosystem: granular execution tools the LLM orchestrates (stephengpope/remotion-media-mcp) instead of a single god-tool (gyoridavid/short-video-maker's create-short-video); scene = {narration, visual spec} as the exchange format and dual-aspect maturity (MoneyPrinterTurbo); LLM-authored structure over hidden config (ShortGPT's edit-markup thesis); karaoke captions and voice discovery endpoints (short-video-maker); motion-on-stills + a cut every few seconds — the #1 documented "AI slop" complaint is static visuals.

The deliberate difference: no built-in script generation — the LLM you connect writes the script with full context of your channel and audience, and the server lints it against pacing/quality rules (hook length, words/sec, cliché openers, text-in-image prompts, static-scene warnings) instead of generating generic content itself.

License

MIT

Available Tools

8 tools
assemble_videoA

Render the final video: Ken Burns motion per scene (alternating direction), concat, optional caption burn-in, optional background music (looped, ducked), loudness-normalized to -14 LUFS. Returns the output path.

Inputs: projectId (required), bgmPath, captions, bgmVolumeDb.

create_projectA

Start a new faceless video project. format 'shorts' = 1080x1920 vertical (<60s), 'long' = 1920x1080. Returns the project id used by all other tools, plus the quality guide you should follow when writing the script.

Inputs: title (required), format (required), voice, language, +1 more.

generate_captionsA

Build burned-in captions from the narration audio. Uses whisper word timestamps when available (mlx_whisper or whisper CLI), otherwise proportional timing. Shorts get karaoke word-highlight. Run after generate_narration.

Inputs: projectId (required), position, highlightColor.

generate_imagesB

Generate one image per scene (or the listed sceneIds) with CodexImage, at the project aspect ratio. The project imageStyle is appended to every prompt for visual consistency.

Inputs: projectId (required), sceneIds.

generate_narrationA

Synthesize narration audio for every scene (or the listed sceneIds) with voicebox TTS. Returns per-scene durations.

Inputs: projectId (required), voice, sceneIds.

generate_thumbnailA

Generate a text-free thumbnail image via CodexImage (1536x1024 landscape for long-form, 1024x1536 for shorts). Prompt one dramatic subject with strong lighting — add title text later in an editor.

Inputs: prompt (required), projectId (required).

list_voicesA

List available voicebox voice profiles (name + id) so you can pick a fitting narrator.

Inputs: no named parameters.

set_scriptA

Set (or replace) the full scene list: per scene one narration passage and one image prompt. You are the writer — bring a hook, concrete details, and one idea per scene. Returns pacing/quality warnings; fix them before generating assets.

Inputs: scenes (required), projectId (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a distinct, non-overlapping purpose, covering the entire video creation pipeline. There is no ambiguity about which tool to use for a given task.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern (e.g., create_project, set_script, generate_narration), making them predictable and easy to understand.

    Tool Count5/5

    With 8 tools, the set is well-scoped for a faceless video creation workflow. Each tool serves a necessary step without being too few or too many.

    Completeness4/5

    The tools cover the core workflow (create project, script, generate assets, assemble, thumbnail) but lack scene-level editing or project management features, which are minor gaps.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      An MCP server that automates short-form video production for TikTok, Instagram Reels, and YouTube Shorts, using AI agents and behavioral science to generate production-ready videos from a topic and vibe.
      1
      -