Blender Copilot MCP Server

Blender Copilot MCP Server

Comprehensive MCP server for Blender with 308 tools across 25 modules, enabling AI-powered 3D creation and full VRChat avatar pipeline.

Category
Visit Server

README

Blender Copilot

The most comprehensive Blender MCP server — AI-powered 3D creation with 308 tools across 25 modules. Full zero-to-published VRChat avatar pipeline.

最全面的 Blender MCP 伺服器 — AI 驅動的 3D 創作,308 種工具橫跨 25 模組。完整的從零到上傳 VRChat Avatar 流水線。

License: MIT Python 3.10+ Blender 4.0+


Features / 功能特色

Core Tools (82 tools in server.py)

Category Tools Description
Scene Inspection 4 Get scene info, object details, analysis, viewport screenshots
Object Creation 4 Primitives, curves, 3D text, armatures
Transforms 6 Translate, rotate, scale, apply, snap to ground, set origin
Object Management 9 Duplicate, delete, select, parent, visibility, hierarchy, rename
Mesh Editing 14 Boolean, join, separate, subdivide, extrude, bevel, inset, decimate, remesh, normals, fill holes
Modifiers 5 Add/apply/remove modifiers, linear array, circular array
Materials 9 PBR materials, glass, metal, emission, texture, Principled BSDF, list, batch assign
World/Environment 4 Background color, HDRI, procedural sky, volumetric fog
Camera & Lighting 3 Camera setup, studio lighting presets, custom lights
Render & Export 3 Render to image, configure settings, export (glTF/OBJ/FBX/STL/USD/PLY)
Collections 4 Create, move objects, list, visibility
Constraints 2 Add/remove constraints (Track To, Copy Location, etc.)
Batch Operations 5 Batch transform, delete, align, distribute, center
Animation 4 Keyframes, animation range, set frame, clear animation
Physics 4 Rigid body, cloth, particles, bake physics
UV Mapping 2 Smart UV project, UV unwrap
Code Execution 1 Sandboxed Python execution inside Blender
Optimization 1 Clean orphan data, merge duplicate vertices

Asset Integration (20 tools in server.py)

Source Tools Description
PolyHaven 4 Search/download free HDRIs, textures, and 3D models from polyhaven.com
Sketchfab 4 Search/preview/download models from Sketchfab (API key required)
Hyper3D (Rodin) 4 AI text/image-to-3D generation via Rodin API
Hunyuan3D 4 Tencent's text/image-to-3D generation
Wrappers 4 Convenience tools for text-to-3D and image-to-3D workflows

VRC Avatar Pipeline (23 tools in vrc_tools.py)

Category Tools Description
Validation 2 Performance rank check (PC/Quest), export readiness
Rigging 5 Humanoid armature, bone renaming, auto-weight, weight check
Visemes & Eyes 2 15 VRC visemes from base shapes, eye tracking setup
PhysBones 3 Chain setup, physics config (hair/tail/ears/skirt), dynamics budget
Accessories 2 Auto-align imported accessories, attach to bones
Optimization 3 Smart decimate (preserves shape keys), material merge, texture atlas bake
Avatar Features 4 Expression menu, contacts (headpat/boop), gestures, animator generation
Import/Export 2 VRC-correct FBX import and export

Advanced Mesh Tools (10 tools in blender_master_tools.py)

Tool Description
bmesh_operation Low-level BMesh operations (dissolve, collapse, merge, knife)
topology_edge_loops Edge loop analysis and insertion
procedural_generate Parametric mesh generation
precision_weight_paint Vertex-level weight painting with smoothstep interpolation
build_material_nodes Programmatic Shader Editor node trees
smart_uv_tools Advanced UV tools (LSCM, angle-based, pack islands)
rig_tools IK/FK chains, stretch-to, custom shapes
retopology Quad-based retopology from high-poly
boolean_cleanup Post-boolean topology repair
create_facial_topology Face topology from landmarks

Sculpt & Texture Bake (14 tools in sculpt_bake_tools.py)

Category Tools Description
Sculpt Mode 6 Enter sculpt, brush strokes, masking, remesh, detail flood, face set extract
Shape Keys 2 Sculpt to shape key, cloth sim to shape key
Texture Bake 4 Normal map, AO, diffuse atlas, general bake (Cycles)
Paint & Sim 2 Texture paint fill, cloth simulation for modeling

Face Tracking — ARKit 52 + Unified (10 tools in face_tracking_tools.py)

Tool Description
ft_setup_face_vertex_groups Auto-detect facial landmarks → 28 vertex groups
ft_create_arkit_shapes Create all 52 ARKit blend shapes (procedural/template/from_existing)
ft_create_unified_expressions Generate 70+ VRCFT Unified Expressions
ft_sculpt_shape_key AI-guided shape key sculpting via vertex displacement
ft_validate_shapes Validate against ARKit/Unified standard
ft_mirror_shape_key Mirror Left↔Right shape keys
ft_combine_shape_keys Combine multiple shapes with weights
ft_setup_tongue_tracking Tongue bone chain + blend shapes
ft_setup_eye_tracking_full Extended eye tracking (12 shapes)
ft_export_shape_key_report Shape key report (JSON/markdown)

Rigify Integration (6 tools in rigify_tools.py)

Tool Description
rigify_create_metarig Generate Rigify meta-rig (human/quadruped/bird/etc.)
rigify_fit_metarig Auto-fit meta-rig to mesh proportions (proportional/snap)
rigify_generate_rig Generate production rig from meta-rig
rigify_to_vrc Convert DEF-bones to VRC/Unity Humanoid naming
rigify_add_face_rig Add face rig bones (full/basic/eyes_only)
rigify_configure_ik Configure IK for VRC full-body tracking (3/6/10-point)

Unity Automation (15 tools in unity_tools.py)

Category Tools Description
Project Setup 1 Verify Unity project, VRC SDK presence
Import 1 Import FBX with humanoid rig, extract materials/textures
Avatar Config 2 Avatar Descriptor setup, pipeline manager
Expressions 2 Expression Menu and Parameters .asset generation
Animation 3 Animator controller, animation clips, gesture layer
Shaders 2 Configure Poiyomi/lilToon/UTS2, material preset generation
Dynamics 2 PhysBone components, ContactSender/Receiver
Build & Publish 2 Build validation, publish to VRChat (CLI + GUI fallback)

Script Execution (4 tools in script_tools.py)

Tool Description
execute_script_headless Run Python in headless Blender subprocess (bypasses TCP timeout)
execute_script_on_file Execute code on an existing .blend file
build_scene_from_json JSON scene description → bpy script → headless execute
generate_scene_script Generate bpy script from JSON without executing

Render Presets (8 tools in render_tools.py)

Tool Description
render_list_presets List 7 presets (cycles/eevee preview/default/high, workbench)
render_apply_preset One-click render preset application
render_set_output Configure output path, format, quality
render_still Render single frame
render_animation Render animation (image sequence or FFMPEG video)
render_set_camera Set/create active render camera
render_get_settings Get current render config
render_set_world Set world background (solid color or HDRI)

Scene Profiles (9 tools in scene_tools.py)

Tool Description
scene_list_profiles List 10 profiles (preview to 4K, Instagram, YouTube, VRC)
scene_apply_profile Apply resolution/engine/samples profile
scene_setup_turntable 360° camera turntable animation
scene_create_collection Create collections with color tags
scene_move_to_collection Move objects between collections
scene_cleanup Remove unused materials/meshes/images
scene_stats Comprehensive scene statistics
scene_set_units Configure unit system (metric/imperial)
scene_set_visibility Control object viewport/render visibility

Modifier Registry (9 tools in modifier_tools.py)

Tool Description
modifier_list_types List 15 modifier types with validated parameters
modifier_add Add modifier with type-safe parameter validation
modifier_apply Apply (finalize) a modifier
modifier_remove Remove modifier without applying
modifier_list List all modifiers on an object
modifier_reorder Move modifier in stack
modifier_apply_all Apply all modifiers at once
modifier_batch_add Add same modifier to multiple objects
modifier_preset_smooth_shade One-click SubD + Smooth + WeightedNormal

Animation (9 tools in animation_tools.py)

Tool Description
anim_insert_keyframe Insert keyframe on any property
anim_insert_keyframes_batch Insert multiple keyframes at once
anim_delete_keyframe Delete keyframe
anim_clear_all Clear all animation from object
anim_set_interpolation Set interpolation type (Bezier, Linear, etc.)
anim_set_frame_range Set frame range and FPS
anim_bounce Bouncing animation preset
anim_orbit Orbital/circular motion preset
anim_get_info Get animation data summary

Materials (7 tools in material_tools.py)

Tool Description
material_list_presets List 12 presets (metals, glass, skin, fabric, etc.)
material_create_preset Create material from preset
material_create_pbr Full PBR material with all parameters
material_assign Assign material to object
material_list List materials on object or in scene
material_duplicate Duplicate existing material
material_set_texture Add image texture (albedo, normal, roughness, etc.)

UV Mapping (8 tools in uv_tools.py)

Tool Description
uv_smart_unwrap Smart UV Project (auto, angle-based)
uv_unwrap Standard unwrap (follows seams)
uv_project_from_view Cube/cylinder/sphere projection
uv_mark_seams Mark UV seams (manual or auto by angle)
uv_pack_islands Pack UV islands efficiently
uv_get_info Get UV layer info
uv_add_layer Add new UV layer
uv_remove_layer Remove UV layer

Curves (7 tools in curve_tools.py)

Tool Description
curve_create_bezier Create Bezier curve with custom points
curve_create_nurbs Create NURBS curve
curve_create_path Create NURBS path (for follow-path)
curve_create_circle Create circle curve (bevel profile)
curve_create_text Create 3D text object
curve_to_mesh Convert curve to mesh
curve_set_bevel Set curve bevel (tube/pipe effect)

Physics (7 tools in physics_tools.py)

Tool Description
physics_add_rigid_body Rigid body physics (active/passive)
physics_add_cloth Cloth simulation
physics_add_collision Collision surface for cloth/particles
physics_add_particle_system Particle emitter
physics_add_soft_body Soft body physics
physics_bake Bake all physics simulations
physics_remove Remove physics from object

Armature & Bones (7 tools in armature_tools.py)

Tool Description
armature_create Create new armature
armature_add_bone Add individual bone
armature_add_bones_chain Add connected bone chain (spine, arm, finger)
armature_add_constraint Add pose bone constraint (IK, Copy Rot, etc.)
armature_auto_weight Parent mesh to armature with automatic weights
armature_list_bones List all bones with hierarchy
armature_set_pose Set bone rotations/positions

File I/O (6 tools in io_tools.py)

Tool Description
io_import_file Import any 3D file (auto-detect: FBX, OBJ, glTF, STL, USD, PLY, ABC)
io_export_fbx Export FBX (VRChat-optimized defaults)
io_export_gltf Export glTF/GLB (web-ready)
io_export_obj Export OBJ (universal mesh)
io_export_stl Export STL (3D printing)
io_export_usd Export USD (Pixar format)

Lighting (5 tools in lighting_tools.py)

Tool Description
light_add Add any light type (point, sun, spot, area)
light_setup_three_point Classic 3-point lighting rig
light_setup_studio Professional studio softbox setup
light_list List all lights with properties
light_modify Modify existing light properties

Measurement & Verification (6 tools in measurement_tools.py)

Tool Description
measure_distance Distance between objects
measure_dimensions Object bounding box and mesh stats
measure_overlap Bounding box overlap detection
measure_symmetry Mesh symmetry analysis
mesh_quality_check Non-manifold, loose verts, degenerate faces, dupes
measure_alignment Check multi-object axis alignment

Pipeline Orchestration (5 tools in pipeline_tools.py)

Tool Description
pipeline_avatar_from_mesh Full Blender-side: mesh → armature → shape keys → FBX
pipeline_blender_to_unity Full Unity-side: FBX → import → descriptor → build
pipeline_face_tracking_setup Complete: vertex groups → ARKit 52 → Unified → validate
pipeline_validate_full Comprehensive go/no-go report for VRC upload
pipeline_generate_blueprint Export all config JSONs alongside FBX

Blender Addon (112 commands, 2915 lines)

The addon (addon/__init__.py) runs inside Blender and handles all commands via TCP. Includes full UI panels for:

  • PolyHaven Browser — search and import HDRIs, textures, models
  • Sketchfab Browser — search, preview, download models
  • Hyper3D (Rodin) — text/image to 3D generation with progress tracking
  • Hunyuan3D — Tencent's 3D generation pipeline
  • Copilot Panel — connection management, port config

Architecture / 架構

┌─────────────────┐    stdio/MCP     ┌──────────────────┐    TCP:9876    ┌──────────────┐
│  AI (Claude,    │ ◄──────────────► │  MCP Server      │ ◄────────────► │  Blender     │
│  Cursor, etc.)  │                  │  (server.py)     │                │  Addon       │
└─────────────────┘                  └──────────────────┘                └──────────────┘
                                     │
                                     ├── vrc_tools.py (23 VRC tools)
                                     ├── blender_master_tools.py (10 advanced tools)
                                     ├── sculpt_bake_tools.py (14 sculpt/bake tools)
                                     ├── face_tracking_tools.py (10 ARKit/Unified tools)
                                     ├── rigify_tools.py (6 Rigify tools)
                                     ├── unity_tools.py (15 Unity automation tools)
                                     └── pipeline_tools.py (5 orchestration tools)
  • MCP Server (server.py): FastMCP server exposing 185 tools via stdio transport
  • VRC Tools (vrc_tools.py): VRChat avatar pipeline — validation, rigging, visemes, PhysBones, export
  • Master Tools (blender_master_tools.py): Advanced mesh — BMesh, retopology, procedural generation
  • Sculpt & Bake (sculpt_bake_tools.py): Sculpt mode, brush strokes, texture baking (normal/AO/diffuse)
  • Face Tracking (face_tracking_tools.py): ARKit 52 blend shapes, VRCFT Unified Expressions, tongue/eye tracking
  • Rigify (rigify_tools.py): Meta-rig generation, fitting, VRC bone conversion, IK configuration
  • Unity (unity_tools.py): C# EditorScript generation, Unity CLI automation, avatar descriptor, animator, shaders
  • Pipeline (pipeline_tools.py): End-to-end orchestration — mesh-to-FBX, FBX-to-Unity, face tracking setup
  • Blender Addon (addon/__init__.py): TCP socket server + CommandExecutor with cmd_ dispatch pattern

Installation / 安裝

1. Install the MCP Server / 安裝 MCP 伺服器

# Using uv (recommended / 推薦)
uv pip install -e .

# Or using pip
pip install -e .

2. Install the Blender Addon / 安裝 Blender 外掛

Option A: Copy directly / 直接複製

Copy addon/__init__.py to your Blender addons directory:

# Windows
%APPDATA%\Blender Foundation\Blender\<version>\scripts\addons\blender_copilot.py

# macOS
~/Library/Application Support/Blender/<version>/scripts/addons/blender_copilot.py

# Linux
~/.config/blender/<version>/scripts/addons/blender_copilot.py

Option B: Blender Extension (4.2+) / Blender 擴展

Copy the entire addon/ folder to your extensions directory:

# Windows
%APPDATA%\Blender Foundation\Blender\<version>\extensions\user\blender_copilot\

3. Enable the Addon / 啟用外掛

  1. Open Blender → Edit → Preferences → Add-ons
  2. Search for "Blender Copilot"
  3. Enable it
  4. In the 3D Viewport sidebar (N key) → Copilot tab → Click "Connect to AI"

4. Configure Your AI Client / 配置 AI 客戶端

Add to your .mcp.json or MCP config:

{
  "mcpServers": {
    "blender-copilot": {
      "command": "uv",
      "args": ["--directory", "/path/to/blender-copilot", "run", "blender-copilot"]
    }
  }
}

Or if installed globally:

{
  "mcpServers": {
    "blender-copilot": {
      "command": "blender-copilot"
    }
  }
}

Auto-Start (Optional) / 自動啟動(可選)

Create a startup script to automatically start the Copilot server when Blender launches:

Save as mcp_autostart.py in Blender's startup folder:

# Windows: %APPDATA%\Blender Foundation\Blender\<version>\scripts\startup\
# macOS: ~/Library/Application Support/Blender/<version>/scripts/startup/
# Linux: ~/.config/blender/<version>/scripts/startup/
import bpy

def _auto_start():
    try:
        bpy.context.scene.copilot_port = 9876
        bpy.ops.copilot.start()
        print("[Copilot] Auto-started")
    except:
        pass
    return None

def register():
    bpy.app.timers.register(_auto_start, first_interval=3.0)

def unregister():
    pass

Environment Variables / 環境變數

Variable Default Description
BLENDER_HOST localhost Blender addon TCP host
BLENDER_PORT 9876 Blender addon TCP port

Compatibility / 相容性

  • Blender: 4.0+ (tested on 4.2, 5.0, 5.1)
  • Python: 3.10+
  • OS: Windows, macOS, Linux
  • AI Clients: Claude Code, Claude Desktop, Cursor, Windsurf, Cline, or any MCP-compatible client

Documentation / 文檔

  • docs/MODELER_KNOWLEDGE_BASE.md — VRChat avatar pipeline reference (performance ranks, export settings, weight painting rules)
  • docs/MAYO_VRC_MANUAL.md — Complete operation manual for the Mayo avatar project

License / 授權

MIT License - see LICENSE

Credits / 致謝

Original work by DWGX. Not a fork.

Inspired by the Blender MCP ecosystem, with features consolidated and expanded from research across 17+ community projects.

本項目為原創作品,非 fork。靈感來自 Blender MCP 生態系統,整合並擴展了 17+ 個社群項目的功能。

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured