Loading repository data…
Loading repository data…
PatrykIti / repository
Production-shaped MCP server for Blender with goal-first routing, curated tools, deterministic verification, and vision-assisted 3D modeling workflows.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
A production-shaped MCP server for Blender.
blender-ai-mcp lets Claude, ChatGPT, Codex, and other MCP clients control Blender through a stable tool API instead of ad-hoc Python generation. The result is a safer, smaller, and more reliable surface for real modeling work: goal-first routing, curated public tools, deterministic inspection, and verification that does not depend on guesswork.
Most "AI + Blender" setups still ask the model to write raw bpy scripts. That breaks exactly where production work gets interesting:
blender-ai-mcp takes the opposite approach: treat Blender control as a product surface, not a code-generation stunt.
router_set_goal(...), so the system knows what the model is trying to build before it starts calling low-level actions.llm-guided profile exposes a tiny, search-first bootstrap layer instead of flooding the model with the whole runtime inventory.The business idea formalized in TASK-113 is simple:
This is what turns the project from "Blender tools exposed over MCP" into a usable AI control product for modeling pipelines.
llm-guided is the default production-oriented surface. It is intentionally small, search-first, and designed around goal-aware sessions.
Normal guided flow:
router_set_goal(...)browse_workflows, search_tools, or call_toolcheck_scene, inspect_scene, or configure_scenescene_measure_* and scene_assert_*Prompting rule:
guided_session_start as the generic search-first stabilizersearch_tools(...) before call_tool(...)When a bounded modeling intent matches, the default public working layer should be the macro layer:
macro_cutout_recess for recesses, openings, and cutter-driven cutoutsmacro_relative_layout for align/place/contact-gap part layoutmacro_attach_part_to_surface for seating one part onto another object's surface/bodymacro_align_part_with_contact for minimal repair nudges on pairs that almost fitmacro_place_symmetry_pair for mirrored pair placement/correction around an explicit mirror planemacro_place_supported_pair for mirrored pair placement/correction against one shared support surfacemacro_cleanup_part_intersections for bounded pairwise overlap cleanup without free-form collision solvingmacro_adjust_relative_proportion for bounded ratio repair between related objectsmacro_adjust_segment_chain_arc for bounded arc adjustment on ordered segment chainsmacro_finish_form for preset-driven bevel/subdivision/solidify finishingreference_images for goal-scoped reference intake before bounded visual comparisonreference_guided_creature_build as a native prompt asset for staged generic creature work on llm-guidedrecommended_prompts can now steer creature-oriented guided sessions toward that prompt path by using active goal/session contextguided_reference_readiness on router_set_goal, router_get_status, and staged reference compare/iterate payloads so clients can see whether reference-driven stage work is actually readyreference_compare_stage_checkpoint for deterministic multi-view stage comparison against attached references during manual iterative workreference_iterate_stage_checkpoint for a session-aware staged correction loop that remembers prior focus, can escalate into inspect/validate when the same correction repeats, and can now target one object, many objects, a collection, or the full assembled silhouettesilhouette_analysis metrics, typed action_hints, and an advisory-only part_segmentation placeholder that stays disabled unless a separate sidecar is explicitly enabledscene_scope_graph for one explicit read-only structural scope artifact with anchor/core/accessory role hintsscene_relation_graph for one explicit read-only pair-relation artifact derived from the current truth layerscene_view_diagnostics for one explicit read-only view-space artifact with projected extent, frame coverage, centering, and visible/partial/occluded/off-frame verdicts for named cameras or USER_PERSPECTIVEllm-guided support set so the model can keep one explicit 3D orientation layer available instead of inferring spatial state only from names, screenshots, or partial loop payloadsCurrent guided bootstrap surface:
router_set_goalrouter_get_statusbrowse_workflowsreference_imagesscene_scope_graphscene_relation_graphscene_view_diagnosticssearch_toolscall_toolMCP_PROMPTS_AS_TOOLS_ENABLED=true:
list_promptsget_promptPrompt-capable clients should prefer native MCP prompts. The prompt bridge is a compatibility layer for tool-only clients and can be disabled for Streamable HTTP profiles that already consume native prompt components.
Current guided utility prep path:
scene_get_viewportscene_clean_scenecall_tool(name=..., arguments=...)llm-guided is
keep_lights_and_cameras; older split flags are compatibility-only and
should not be used as the documented public formreference_images(action="attach", source_path=...) is one-reference-per-call;
batch-like shapes now fail with guided recovery guidance instead of raw schema noisecollection_manage(action=..., collection_name=...) stays the canonical
public form; legacy name is only a narrow compatibility aliasmodeling_create_primitive(...) stays limited to primitive_type,
radius/size, location, rotation, and optional name; unsupported
shortcuts such as scale, segments, rings, subdivisions, or
primitive-time collection_name now fail with actionable guidance on both
direct and proxy guided pathsrouter_set_goal(...), but screenshot /
viewport / scene-reset requests should use the guided utility path insteadscene_clean_scene(...) is also available there as a bounded
recovery hatch; cleanup before the goal is still the preferred pathCurrent public aliases on llm-guided:
| Internal tool | llm-guided public name | Public arg changes |
|---|---|---|
scene_context | check_scene | action -> query |
scene_inspect | inspect_scene | object_name -> target_object |
scene_configure | configure_scene | settings -> config |
workflow_catalog | browse_workflows | workflow_name -> name, query -> search_query |
Why that matters:
The root README.md is intentionally not the full tool catalog anymore.
The detailed tool inventory and atomic family docs should stay in docs, not on the front page. That is the right long-term structure after TASK-113.
Use these docs depending on what you need:
atomic / macro / workflow, hidden atomic tools, goal-first usage, and vision/assert boundaries.