Blender Antigravity MCP
This MCP server lets an AI inspect and control a live Blender session, run arbitrary Python, capture viewport screenshots, and pull or generate 3D assets from external services.
Scene inspection: read current scene details, and get detailed info about any named object.
Code execution: run Python code directly in Blender (intended to be broken into small steps).
Viewport capture: take screenshots of the Blender 3D viewport with an optional max pixel size.
PolyHaven integration: check status, list categories, search assets (HDRIs/textures/models), download and import assets at a chosen resolution/format, and apply textures to objects.
Sketchfab integration: check status, search models (with category, count, downloadable filters), and download/import a model by UID.
Hyper3D Rodin integration: check status, generate 3D assets from text prompts or images (with optional bounding-box ratio), poll job status, and import the generated asset.
Hunyuan3D integration: check status, generate a 3D asset from text or an image URL, poll job status, and import the generated asset by ZIP URL.
Provides AI-driven 3D modeling and reconstruction in Blender, including procedural scene generation, render comparison, closed-loop geometry refinement, and material/texture synthesis.
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., "@Blender Antigravity MCP Reconstruct the bottle from reference_bottle.jpg into 3D and give me the report."
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.
Blender MCP Reconstruction Harness & Multi-Project Pipeline
A production-grade, multi-modal 2D Reference Image to 3D Blender Reconstruction & Self-Refining Harness with integrated Model Context Protocol (MCP) server for AI-driven 3D modeling in Google Antigravity.
π Architecture Overview
The codebase is split into two cleanly separated tiers:
The Reusable Harness (
harness/): An analysis, comparison, and iterative self-refining engine that is completely object-agnostic.Isolated Project Workspaces (
projects/<name>/): Standalone project directories containing reference inputs, Blender scripts, and generated outputs.
Blender-MCP/
βββ harness/ # Reusable Reconstruction Engine
β βββ __main__.py # CLI: python -m harness run <project>
β βββ config.py # Global defaults & convergence thresholds
β βββ project_loader.py # Manifest parser & workspace discovery
β βββ pipeline/ # 6-Stage Orchestration
β β βββ stage_analyze.py # Stage 1: Computer vision & feature extraction
β β βββ stage_generate.py # Stage 2: Blender model synthesis
β β βββ stage_capture.py # Stage Capture: Multi-viewport 360Β° orbit & montage
β β βββ stage_compare.py # Stage 3: Render vs reference multi-modal comparison
β β βββ stage_refine.py # Stage 4: Closed-loop parameter correction
β β βββ stage_report.py # Stage 5: Diagnostics, verdicts & summary docs
β βββ capture/ # Multi-Viewport 360Β° Capture Engine
β β βββ multi_viewport_renderer.py # 14-camera orbit controller & socket bridge
β β βββ contact_sheet_generator.py # 4x4 visual montage builder (PIL)
β β βββ blender_scripts/ # Inside-Blender bpy camera scripts
β β βββ multi_viewport_render.py
β βββ analyzers/ # Vision & Profiling Modules
β β βββ gemini_analyzer.py # Multi-modal semantic & typography extraction
β β βββ geometry_analyzer.py # Radial profile mesh, aspect ratios, landmarks
β β βββ structural_geometry_analyzer.py # 7-Step BMesh profiling, symmetry & primitives
β β βββ color_texture_analyzer.py # CIE L*a*b* K-Means, Gabor filters, BSDF synthesis
β β βββ placement_report_generator.py # Multi-viewpoint spatial element placement
β β βββ viewport_analyzer.py # 360Β° silhouette, coverage & symmetry analyzer
β βββ comparators/ # Verification Engine
β β βββ render_geometry_comparator.py # 100-level radial mesh, CIEDE2000 ΞE, Procrustes
β βββ materials/ # PBR Texture Retrieval & Synthesis Engine
β β βββ pbr_engine.py # PolyHaven / ambientCG REST client & ranking
β β βββ material_node_builder.py # Procedural bpy Principled BSDF node trees
β βββ refiners/ # Closed-Loop Feedback Optimization Engine
β β βββ base_refiner.py # Abstract controller, render triggers & convergence
β β βββ refiner_generator.py # Spec-driven refiner synthesizer (zero hardcoding)
β β βββ template_refiner.py # LLM generation blueprint for projects
β βββ blender/ # Blender Communication Layer
β β βββ client.py # Socket client (port 9876)
β β βββ addon.py # Blender MCP connect addon
β βββ utils/ # Shared Mathematics & Tools
β βββ color_math.py # Canonical sRGB β XYZ β Lab & CIEDE2000
β
βββ projects/ # Per-Project Workspaces
β βββ bottle/ # Example: Water Bottle Project
β βββ project.yaml # Project manifest declaring scripts & tolerances
β βββ reference/ # Input reference imagery
β β βββ reference_bottle.jpg
β βββ scripts/ # Procedural Blender construction & tuning
β β βββ generate_bottle_3d.py # 3D scene construction (bpy)
β β βββ refine_geometry.py # Closed-loop tuner (subclasses BaseRefinementEngine)
β β βββ verify_and_refine_bottle.py
β βββ outputs/ # Generated artifacts
β βββ renders/ # Viewport & Cycles renders (plus viewports/ 14 angles)
β βββ specs/ # JSON design specifications
β βββ reports/ # Markdown summaries, contact sheets & collages
β βββ textures/ # Downloaded / synthesized PBR textures
β
βββ mcp_server/ # Antigravity Model Context Protocol Server
βββ server.py # Windows-native binary stdio server
βββ addon.py # Blender socket add-onRelated MCP server: Blender MCP
π Quick Start
1. Installation
Clone the repository and install dependencies:
pip install -r requirements.txt2. Configure Blender Add-on
Open Blender (4.0+ recommended).
Go to
Edit > Preferences > Add-ons > Install....Select
mcp_server/addon.py(or rootaddon.py).Enable "3D Gen: Blender MCP Connect".
Ensure the add-on server is running (defaults to
localhost:9876).
3. Connect Antigravity MCP Server
Add the following to your Antigravity MCP configuration (mcp_config.json):
{
"mcpServers": {
"blender": {
"command": "C:/Path/To/Your/python.exe",
"args": [
"C:/Users/PC/myapps/Blender works/mcp_server/server.py"
],
"env": {
"PYTHONUTF8": "1"
}
}
}
}β‘ Using the Harness CLI
Discover Projects
python -m harness listOutput:
Found 1 project(s):
- bottle: Abhinav Bottle (v1.0.0) [bottle]Inspect Project Configuration
python -m harness info bottleExecute the Full 5-Stage Pipeline
python -m harness run bottleExecute a Specific Stage
# Stage 1: Computer Vision & Feature Extraction
python -m harness run bottle --stage analyze
# Stage 2: Blender 3D Model Generation
python -m harness run bottle --stage generate
# Stage: Multi-Viewport 360Β° Capture & Analysis
python -m harness run bottle --stage capture
# Stage 3: Render vs Reference Comparison
python -m harness run bottle --stage compare
# Stage 4: Closed-Loop Refinement Loop
python -m harness run bottle --stage refine
# Stage 5: Final Quality Report & Metrics
python -m harness run bottle --stage reportDry Run
python -m harness run bottle --dry-run㪠The 6-Stage Pipeline Explained
Stage | Name | Key Algorithms & Operations | Output Artifacts |
Stage 1 | Analyze | β’ Radial profile mesh (100 elevation slices)β’ CIE L*a*b* K-Means palette clusteringβ’ Gabor filter anisotropy & frequency analysisβ’ Spatial coordinate mapping from 6 orthographic views |
|
Stage 2 | Generate | β’ Procedural mesh synthesis in Blenderβ’ Principled BSDF shader setupβ’ Procedural PBR texture bakingβ’ Studio lighting & camera framing | Active 3D Blender scene |
Stage Capture | Capture | β’ 14-camera spherical orbit (6 ortho + 8 perspective)β’ Transparent film background capture with headlight fillβ’ Lateral & anterior-posterior silhouette symmetry IoUβ’ 4Γ4 visual contact sheet montage generation |
|
Stage 3 | Compare | β’ 100-level radial mesh MAEβ’ Component-wise CIEDE2000 color delta ($\Delta E_{00}$)β’ Height IoU & Procrustes shape metricβ’ Visual diagnostic collage generation |
|
Stage 4 | Refine | β’ Closed-loop feedback controllerβ’ Automated bidirectional parameter tuningβ’ Multi-zone perceptual color optimization | Updated Blender scene |
Stage 5 | Report | β’ Multi-metric aggregationβ’ Pass/Fail verdicts against configurable tolerancesβ’ Actionable recommendations for human review |
|
π Creating a New Project
Creating a new reconstruction project is as simple as creating a directory under projects/:
Create directory
projects/<your_project>/with subfolders:projects/<your_project>/ βββ project.yaml βββ reference/ β βββ reference.jpg βββ scripts/ βββ generate_model.pyDefine
project.yaml:name: "My Custom Model" version: "1.0.0" object_type: "custom" reference_image: "reference/reference.jpg" blender_scripts: generate: "scripts/generate_model.py" convergence: max_iterations: 6 ciede2000_threshold: 4.0 ssim_threshold: 0.85 geometry_score_threshold: 0.85 render: resolution: [1920, 1080] view_transform: "Standard" samples: 128 viewport_capture: enabled: true resolution_scale: 0.5 samples: 64 padding_factor: 1.25 camera_distance_factor: 3.2Run the harness:
python -m harness run <your_project>
π οΈ Testing & Quality Verification
# Verify harness project discovery
python -c "from harness.project_loader import discover_projects; print(discover_projects())"
# Verify color math canonical functions
python -c "from harness.utils.color_math import srgb_to_xyz, xyz_to_lab, compute_ciede2000; print('Color math OK')"
# Verify stage execution
python -m harness run bottle --stage analyzeπ License & Credits
Personal Use & Non-Commercial License. Strictly for personal, educational, and non-monetized hobbyist use. Commercial use, resale, and monetization are strictly prohibited. See LICENSE for full legal terms.
Available Tools
21 toolsdownload_polyhaven_assetB
Download and import a PolyHaven asset into Blender
Inputs: asset_id (required), asset_type (required), resolution, file_format.
download_sketchfab_modelA
Download and import a Sketchfab model by UID
Inputs: uid (required).
execute_blender_codeC
Execute Python code in Blender. Break complex operations into smaller steps.
Inputs: code (required).
generate_hunyuan3d_modelC
Generate 3D asset using Hunyuan3D from text or image
Inputs: text_prompt, input_image_url.
generate_hyper3d_model_via_imagesB
Generate 3D asset using Hyper3D from images
Inputs: bbox_condition, input_image_urls, input_image_paths.
generate_hyper3d_model_via_textA
Generate 3D asset using Hyper3D from text description
Inputs: text_prompt (required), bbox_condition.
get_hunyuan3d_statusA
Check if Hunyuan3D integration is enabled in Blender
Inputs: no named parameters.
get_hyper3d_statusA
Check if Hyper3D Rodin integration is enabled in Blender
Inputs: no named parameters.
get_object_infoB
Get detailed information about a specific object in the scene
Inputs: object_name (required).
get_polyhaven_categoriesB
Get categories for a specific asset type on PolyHaven
Inputs: asset_type.
get_polyhaven_statusA
Check if PolyHaven integration is enabled in Blender
Inputs: no named parameters.
get_scene_infoB
Get detailed information about the current Blender scene
Inputs: no named parameters.
get_sketchfab_statusA
Check if Sketchfab integration is enabled in Blender
Inputs: no named parameters.
get_viewport_screenshotA
Capture a screenshot of the current Blender 3D viewport
Inputs: max_size.
import_generated_assetC
Import asset generated by Hyper3D Rodin
Inputs: name (required), task_uuid, request_id.
import_generated_asset_hunyuanB
Import asset generated by Hunyuan3D
Inputs: name (required), zip_file_url (required).
poll_hunyuan_job_statusC
Check if Hunyuan3D generation task is completed
Inputs: job_id (required).
poll_rodin_job_statusC
Check if Hyper3D Rodin generation task is completed
Inputs: request_id, subscription_key.
search_polyhaven_assetsC
Search for assets on PolyHaven with optional filtering
Inputs: asset_type, categories.
search_sketchfab_modelsB
Search for models on Sketchfab
Inputs: query (required), count, categories, downloadable.
set_textureB
Apply a downloaded PolyHaven texture to an object
Inputs: texture_id (required), object_name (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 21 tools
Most tools target distinct provider/action pairs, and status, search, generate, download, and poll tools are generally separable. The main ambiguity is import_generated_asset vs import_generated_asset_hunyuan, and generate_hunyuan3d_model combines text/image inputs while Hyper3D splits them into two tools.
Tool names mostly follow a consistent snake_case verb_noun pattern with get_, search_, download_, generate_, poll_, and import_ prefixes. Deviations include import_generated_asset lacking a provider prefix, generate_hunyuan3d_model without a via_text/via_images suffix, and poll_rodin_job_status using 'rodin' instead of 'hyper3d'.
At 21 tools, the server sits in the heavy range and presents a large surface for agents to navigate. The breadth of four asset integrations justifies most entries, but the set would benefit from consolidation or clearer grouping.
Core workflows are well covered: status checks, search/generate, download/import, async polling, and Blender scene introspection/code execution. Minor gaps include no cancel-job tools for generation tasks and set_texture being limited to PolyHaven textures, though execute_blender_code provides a workaround.
Maintenance
Related MCP Connectors
Blender and GLB/FBX/USD/STL rendered on cloud GPUs for AI agents: product shots, turntables, MP4
AI visual generation agent: multi-pipeline rendering, prompt crafting, and image composition.
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.
Blender-as-a-service for agents: search 3D assets, run Blender Python, or brief the studio agent.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to control Blender 3D modeling software through a stable, goal-oriented tool API for safer and more reliable 3D scene manipulation.66Apache 2.0
- AlicenseBqualityBmaintenanceEnables AI assistants to control Blender 3D software through natural language, with tools for modeling, materials, animation, rendering, and rigging.3818MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to create, inspect, and animate 3D scenes in Blender through natural language and structured tool calls.6MIT
- AlicenseCqualityBmaintenanceEnables AI agents to control Blender through 150+ tools across 24 modules, including modeling, materials, lighting, animation, rendering, mesh quality analysis, and visual feedback, plus expert prompts and goal-first workflow management.2092MIT