Companion Animation Pipeline MCP Server
Control and monitor a local Blender-based 3D model-to-animation pipeline through MCP tools.
Check the installed runner and Blender without changing configuration (
environment_info).Create an isolated pipeline config for a model and workspace without overwriting an existing config (
pipeline_init).Read cached stages, failures, pending calibration, and review requirements (
pipeline_status).Start/resume pipeline stages as background jobs, optionally through a specified stage (
pipeline_run).Run trusted local Blender Python scripts in a hidden background process (
blender_script).Poll background job completion and read its log tail (
job_status).Record real candidate-bound visual review from an existing evidence JSON file (
record_review).Diagnose and record an established stage failure cause before retrying (
diagnose_stage).Display an existing PNG/JPEG artifact inside a model workspace, up to 10 MiB (
view_artifact).
Provides tools to control background Blender jobs for a 3D character and companion animation pipeline, including inspection, calibration, animation baking, GLB export, numerical verification, probe rendering, and packaging.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Companion Animation Pipeline MCP Server Inspect character.glb, calibrate bones, bake walk cycle, export verified GLB."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
3D model to Animation pipeline
Inspect → calibrate → animate → export → verify → review → package.
A standalone Blender pipeline for 3D characters and companions, with a Python CLI, an installable AI skill, and a local MCP server that controls background Blender jobs. Keep model-specific work resumable, source files intact, and successful export separate from successful animation.
See it work

The public showcase uses only newly generated synthetic geometry. It contains no private models, game code, customer data, or recordings from another product. See the showcase and its evidence.
Related MCP server: bl-mcp
Install once
The installer sets up uv, Python 3.12, the CLI, MCP dependencies, an AI skill, and Blender. It reuses an existing Blender or installs a portable, checksum-verified Blender 4.5.3 build in your user data directory. No separate Blender add-on, Node.js, Git installation, API key, or subscription is required.
Windows PowerShell
Invoke-RestMethod https://raw.githubusercontent.com/arabianguy08/3d-model-to-animation-pipeline/v0.1.1/install.ps1 -OutFile install.ps1
.\install.ps1 -Client codexmacOS / Linux
curl -LsSf https://raw.githubusercontent.com/arabianguy08/3d-model-to-animation-pipeline/v0.1.1/install.sh -o install.sh
sh install.sh --client codexChoose codex, claude-code, claude-desktop, cursor, or generic instead.
The first four configure their MCP connection automatically; restart the AI
client afterward. That client's normal tool-approval rules still apply.
auto registers a uniquely detected Codex/Claude CLI; otherwise it writes a
portable companion-mcp.json rather than guessing which app to change.
Use -ManagedBlender / --managed-blender to install the pinned build even when
Blender is already present. Use -Blender / --blender for your own executable.
Client applications themselves are not installed. See setup details.
First run
companion-animation doctor
companion-animation demo ./my-first-demoThe demo creates an original synthetic rig and face, bakes real actions, exports a GLB, reopens it, verifies deformation/timing and renders inspection evidence. Packaging still requires real visual review. Nothing is uploaded.
For your own model:
companion-animation init model.json --model ./character.glb --workspace ./work
companion-animation inspect model.json
companion-animation status model.jsonTell your agent:
Use the companion-animation-pipeline skill and MCP tools. Inspect my model, calibrate its anatomy and named bones, preserve its original proportions and authored motion, and produce a numerically verified GLB with playback for review.
Then follow the usage guide.
What is automated—and what needs judgment
Shared stages: inspection, job isolation, baking, GLB export, numerical checks, probe rendering, cache invalidation, resumption and packaging.
Model-specific work: anatomical fitting, weights, bone mapping, clip selection, facial geometry and believable motion. An AI can do this through the included Blender tools, but an arbitrary upload is not a guaranteed one-click rig.
Numerical certification checks the persisted GLB, not just an animation name. Temporal/artistic quality still needs inspection. Supplied clips keep their exact timing, loop/hold behavior and action-slot binding.
VFX examples show presentation and timing. Projectile movement, collision, combat logic and mobile performance belong to the consuming application.
Developers
python -m pip install .
python -m unittest discover -s tests -v
python tests/test_pipeline.py --blender /path/to/blender BlenderTests -vThe runner itself uses the Python standard library; Blender supplies bpy,
NumPy and mathutils. The MCP interface uses the official MCP Python SDK 1.x.
Verification distinguishes real Blender checks, unit
tests, visual review and untested platforms.
Local execution and licensing
The MCP server uses stdio and opens no HTTP port. blender_script executes
trusted local Python with your account permissions; this is not a sandbox.
Adapters and models stay local unless you explicitly share them. Read install
scripts before running downloaded code.
Pipeline code and synthetic showcase material: MIT. Blender is a separate application with its own license. Dependency licenses remain with their respective projects.
Available Tools
9 toolsblender_scriptB
Run a trusted local Blender Python script in a hidden background process.
The script must be inside workspace; scripts have normal user permissions, not a security sandbox. Author to derivative paths; never overwrite the source. sys.argv after -- contains the workspace path.
Inputs: script (required), workspace (required), blend_file.
diagnose_stageC
Record an established failure cause before retrying a stage. Does not relax tolerances.
Inputs: note (required), stage (required), config (required).
environment_infoB
Check the installed runner and Blender without changing configuration.
Inputs: no named parameters.
job_statusB
Read background job completion and its log tail. Does not infer visual approval.
Inputs: job_id (required).
pipeline_initA
Create an isolated config for a supplied model; never overwrite an existing config.
Inputs: model (required), config (required), workspace (required).
pipeline_runB
Start/resume stages as a background job. Poll job_status; exit 2 means work/review remains.
Inputs: config (required), through.
pipeline_statusC
Read cached stages, failures, pending calibration and review requirements.
Inputs: config (required).
record_reviewC
Record real candidate-bound visual review from an existing evidence JSON file.
Inputs: config (required), evidence (required).
view_artifactB
Display an existing PNG/JPEG inside a model workspace; maximum 10 MiB.
Inputs: path (required), workspace (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 9 tools
Tools are mostly distinct, but pipeline_status and job_status both report status at different scopes, and blender_script vs pipeline_run may be confused by an agent deciding between custom scripting and managed stages. Descriptions clarify the intended separation, but the overlap prevents perfect clarity.
All names use snake_case consistently, with readable prefixes such as pipeline_* and job_*. However the set mixes noun-first names (environment_info, pipeline_status) with verb-first names (record_review, diagnose_stage, view_artifact), so the pattern is not fully uniform.
Nine tools is well-scoped for an animation pipeline: setup, execution, monitoring, review, diagnosis, and artifact viewing each have a clear place. The count avoids both thinness and bloat.
The core pipeline lifecycle is covered, but pipeline_status references pending calibration while no tool records or resolves calibration. There is also no explicit stop/cancel for background jobs or cleanup/reset operation, creating potential dead ends.
Maintenance
Related MCP Connectors
3D avatar/asset foundry: text/image -> rigged, validated, engine-ready GLB via x402.
Connect your AI assistant to Blender for 3D modeling, Geometry Nodes, materials, lighting, animation, rendering and export. Inspect real scenes and viewport images, refine the result and restore checkpoints. OAuth connects your chat to Blender Bridge Desktop on an online Windows 10/11 x64 computer running Blender 4.2+. The chat can run on another device. Requires an active Blender Bridge account; 7-day trial available. AI model access is separate.
Turn text or an image into an animation-ready 3D model (GLB): generate, rig, animate, retexture.
Blender-as-a-service for agents: search 3D assets, run Blender Python, or brief the studio agent.
Related MCP Servers
- FlicenseAqualityCmaintenanceEnables AI agents to inspect and drive Blender scenes directly, either through a live editor bridge on port 8190 or automatically via headless background CLI when Blender is closed. Provides token-efficient tools for scene outlining, object creation and modification, modifiers, materials, rendering, asset export, and arbitrary bpy script execution.11-
- AlicenseAqualityBmaintenanceEnables an AI agent to drive a live Blender session, building, sculpting, measuring, checking, rigging, lighting, rendering and exporting 3D models through safe operations in world units. Every geometry-changing call reports achieved dimensions, open edges and failures as numbers and review images, so modelling mistakes become visible instead of silent.113MIT
- AlicenseNot gradedqualityCmaintenanceLets an AI engine drive a Blender instance the user runs themselves over stdio JSON-RPC, enabling scene inspection, viewport capture and picking, sandboxed code execution, and gated asset search/import and 3D generation. Telemetry is disabled before import, outbound tools are withheld until per-run network consent, and VRAM gating plus a surface-policy tool report what is live and what a station has cleared.Business Source 1.1
- AlicenseNot gradedqualityBmaintenanceConnects an AI agent to Blender 5.2 LTS over stdio, letting it read the scene hierarchy, create and transform primitive meshes, assign Principled BSDF materials, delete objects, save .blend files, and run raw bpy scripts through 12 tools. A two-process socket bridge keeps bpy calls on Blender's main thread, so no pip packages or admin rights are needed inside Blender.MIT