Skip to content
Conduit

mcp server

Blender-AI-Agent

Local-first AI-to-3D pipeline: LLM planning, validated Blender generation behind an MCP tool boundary, read-only vision review, semantic motion, and GLB/MP4 export with a FastAPI + Three.js studio.

ahmedsayed1911/Blender-AI-Agentcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

This project does not publish an install method we can turn into a config. Follow the README instead.

README

synced Oct 21, 2026

Blender AI Agent

A local, safety-oriented AI-to-3D pipeline that connects LLM planning, Blender generation, visual review, semantic motion, artifact export, and a browser-based Web Studio.

The project uses MCP (Model Context Protocol) as the tool boundary between the AI layer and Blender. The model does not get unrestricted bpy or arbitrary Python execution during normal operation; it plans against validated, allowlisted tools.

What it does

Prompt
  ↓
LLM planning
  ↓
Semantic structure / generation blueprint
  ↓
Controlled geometry + refinement
  ↓
Blender via MCP bridge
  ↓
Read-only vision review
  ↓
Semantic motion / animation
  ↓
PNG + GLB + MP4 artifacts
  ↓
FastAPI + React / Three.js Web Studio

Current capabilities include:

  • Prompt-driven semantic 3D generation
  • Reusable geometry and refinement systems
  • Creature, robot, vehicle, prop, and architecture workflows
  • Read-only visual critique with Qwen-VL
  • Semantic articulation and motion planning
  • Dragon wing, tail, locomotion, and reference-inspired motion experiments
  • Robot walking and articulated arm actions
  • Spaceship / prop / architecture presentation motion
  • Controlled preview, GLB, and H.264 MP4 artifact generation
  • Job orchestration, revisions, confirmation, rollback, and artifact tracking
  • FastAPI backend and React + Three.js Web Studio

This is an experimental procedural 3D system, not a production sculpting or game-asset pipeline. Geometry and locomotion quality are still being actively improved.

Core idea

A normal LLM tool call is the easy part. The harder problem is building a system around the model that is structured, controllable, measurable, and safe.

This repository therefore keeps Blender mutation behind typed tools, validation, ownership, confirmation, and rollback rather than exposing arbitrary scene scripting.

Architecture

User / Web Studio
        │
        ▼
FastAPI / Job Runtime
        │
        ▼
LLM Planner (Ollama / Qwen)
        │
        ▼
Generation + Refinement + Motion Engines
        │
        ▼
MCP Tool Layer
        │
        ▼
Socket Bridge
        │
        ▼
Blender Runtime
        │
        ├── PNG previews
        ├── GLB exports
        └── MP4 renders

Read-only Vision (Qwen-VL) reviews rendered output but does not mutate Blender directly.

Main packages

PackagePurpose
core/shared models, configuration, DI, tools, bridges, validation
mcp_server/MCP tool registration and server boundary
mcp_client/MCP client / smoke paths
blender_addon/Blender-side runtime and controlled scene operations
generation_engine/generation planning and compilation
general_3d_engine/reusable semantic composition / recipes / camera logic
geometry_engine/controlled geometry representation and planning
shape_refinement_engine/refinement policies, articulation readiness, efficiency
anatomy_engine/reusable anatomy/layout systems
animation_engine/controlled animation/video primitives
motion_engine/semantic motion, interpolation, chains, validation, sequencing
reference_engine/reference-video motion analysis and style extraction
vision_engine/read-only visual critique and comparison
platform_runtime/projects, jobs, revisions, artifacts, workers
web_backend/FastAPI API, SSE, artifact delivery
web_studio/React/Vite product UI
web_viewer/Three.js viewer utilities
tests/unit and Blender integration validation

Requirements

  • Windows is the most-tested development environment
  • Python 3.11+
  • Blender 5.x (parts of the add-on are compatible with 4.2+)
  • Node.js + npm
  • Ollama

Python dependencies:

python -m pip install -r requirements.txt

Frontend dependencies:

cd web_studio
npm install

Local models

Model weights are not stored in this repository. Install them locally with Ollama.

Example setup:

ollama pull qwen3-coder-next:latest
ollama pull qwen3-vl:8b

Optional larger vision audit model:

ollama pull qwen3-vl:32b

The exact model names can be changed through runtime configuration / environment variables.

Quick start

1. Start the Blender bridge

From the repository root, use the bridge runtime appropriate for your local Blender installation. A development example is:

$env:BAA_BLENDER_PORT="8770"
& "C:\path\to\blender.exe" --background --factory-startup --python "tests\blender\run_bridge_runtime.py"

Do not copy that Blender path literally; point it at your own installation.

2. Start the API

Open a second terminal:

cd C:\path\to\Blender-AI-Agent
$env:BAA_BLENDER_PORT="8770"
python -m uvicorn web_backend.app:create_app --factory --host 127.0.0.1 --port 8000

3. Start Web Studio

Open a third terminal:

cd C:\path\to\Blender-AI-Agent\web_studio
npm.cmd run dev

Vite will print the local Web Studio URL (commonly http://127.0.0.1:5174/).

Tests

Python:

python -m pytest -q
python -m unittest discover -s tests -v

Frontend:

cd web_studio
npm.cmd run test
npm.cmd run build

Blender integration validators live under tests/blender/ and require a compatible Blender runtime.

Safety model

Normal operation intentionally avoids exposing:

  • arbitrary model-generated Python
  • unrestricted bpy
  • unrestricted Blender operators / BMesh
  • arbitrary F-curves, drivers, or constraints
  • arbitrary filesystem paths
  • arbitrary FFmpeg arguments

Instead, the project uses bounded semantic structures and allowlisted tools with validation, revision ownership, confirmation, and rollback.

Vision remains read-only.

Generated data

The following are intentionally excluded from Git:

  • Ollama / Qwen model weights
  • node_modules
  • generated artifacts/
  • runtime SQLite databases
  • logs and caches
  • Blender autosaves
  • environment / secret files

See .gitignore.

Documentation

Detailed implementation notes are under docs/, including geometry, animation, vision feedback, backend/API, Web Studio, GLB export, safety-oriented generation, and migration notes.

Project status

This is an active experimental project. The repository currently demonstrates an end-to-end local AI → Blender → Vision → Motion → Web workflow, while areas such as higher-fidelity modeling, contact-aware IK, motion polish, and richer interactive animation export remain ongoing work.

License

GNU General Public License v3.0.

blender_addon/ imports bpy and registers through bl_info, which makes it a Blender add-on rather than an independent program. Blender is GPL-licensed and the Blender Foundation treats add-ons that import bpy as needing to be GPL-compatible, so the repository is released under GPL-3.0 to stay clearly within those terms.

Third-party components keep their own licences and none are vendored here: Blender (GPL), Ollama and the Qwen models it serves, FastAPI, React, and Three.js.

↑↓ navigate openesc close