bitxbyte-studio MCP server
Makes BitXbyte "tech explained" reels end to end: script → Gemini voice → line timings → 3D (three.js) or 2D (phone-mockup) visuals → stills check → background render → music mix → final mp4.
Lives in BitXbyteStudio/studio-mcp/ and works on the folders in BitXbyteStudio/reels/. Posting stays with the facebook MCP (create_reel).
Tools
| Tool | Does |
|---|---|
list_reels, reel_status |
What exists, what is done, the next step |
| `create_reel(slug, title, engine='3d', template='blank' | '360-camera')` |
write_script(reel, lines, title, caption, comment) |
Save narration + caption; warns about long lines / digits |
generate_voice(reel, voice='Iapetus') |
Gemini TTS → voice.wav (key from BitXbyteStudio/.env) |
align_voice(reel), set_line_times(reel, times) |
When each line is spoken → vo_times.json (+ 3d/timing.js) |
list_files, read_file, write_file |
Read/write reel code (3d/*.js, scenes.js, reel.json) |
render_stills(reel, times) |
Contact sheet image of chosen frames — look before rendering |
start_render, render_status, cancel_render |
Full render in the background (+ music/voice mix) |
finish_reel(reel) |
Re-mix music + voice onto the rendered video |
preview_video(reel), compress_video(reel, max_mb) |
Check the final mp4; make a smaller copy |
3D reel contract (files in <reel>/3d/, loaded in the order of reel.json → files)
world.js— build the scene (scene,R,ENV,camexist already).pipeline.js(optional) —PANELS.<kind> = p => {...}draws a panel inside its rectangle;WARM.push(fn)runs once before frame 0.shots.js—const SHOTS=[{at:T(line, offset), f(lt){...}}];RESET.push(fn)clears per-frame state.- Helpers:
look(pos, target, fov),orbit(r, h, angle),topLook(h),W2S(point),E()/O()easing,V(x,y,z), overlayov.callout / tag / frame / ring / cross / line / rect / big / brand.S.mainVP= 3D viewport,S.panels= extra views. templates/360-camerais the full worked example (simulated fisheye cameras, top-down mapping, stitching).
Install on the Mac (once)
brew install ffmpeg(skip ifffmpeg -versionworks).- Browser for rendering:
uv run --with playwright==1.56.0 playwright install chromium - Add to
~/Library/Application Support/Claude/claude_desktop_config.jsonundermcpServers(use the sameuvpath as yourbitxbyte-voiceentry):"bitxbyte-studio": { "command": "uv", "args": ["run", "--script", "/Users/user/Movies/BitXbyteStudio/studio-mcp/server.py"] }
- Quit Claude (Cmd+Q) and reopen. First start downloads Python packages (~1 min).
Env options: BX_GL=gpu|swiftshader (default: GPU on Mac, falls back to software), BX_STUDIO=<path> (default: parent folder).
Metadata
Release files for video-generation-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| video_generation_mcp-0.1.0.tar.gz | 313.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| video_generation_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 632.1 kB
Release files / video_generation_mcp-0.1.0.tar.gz
| Download URL | video_generation_mcp-0.1.0.tar.gz |
|---|---|
| Size | 313.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
390da0ff016b35159b8a5172c121c00f9a62c0acc1bbde4712f14688cfba9290
|
|
BLAKE2b-256 checksum How to use checksums |
164da56c27d23df57e90cfdb8feb42adbb3ae07246aecbb7b252867225ce5cd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.4 {"installer":{"name":"uv","version":"0.11.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / video_generation_mcp-0.1.0-py3-none-any.whl
| Download URL | video_generation_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 319.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
933fdc51c46cd55d17da9b129565c970a41df4fe66f04b1ad521a1cddd4f2566
|
|
BLAKE2b-256 checksum How to use checksums |
b8df1506b9d6993e6188988bbffff1f4ea5e495e7e8a45f9de3e40221db36b20
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.4 {"installer":{"name":"uv","version":"0.11.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for video-generation-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.