← Back to directory
B

Bonsai MCP

Community
MCP integration for IFC via Blender and Bonsai.
GitHub source repository ↗
★ 60 Stars Category · Dev Tools Popular Source revision 62e6a92217e7
51FMRS · D
Reliability
7/20
Security and permissions
10/20
Maintenance
10/20
Documentation
13/20
Setup experience
11/20

Bonsai-mcp is an IFC-focused MCP server that leverages Blender to provide a rich set of IFC tools. Its notable features include georeferencing and BC3 budget export. It requires a Blender environment and is ideal for BIM professionals. Security consideration is advised with the execute_blender_code tool. Overall, it is a comprehensive solution for IFC integration.

Read the FMRS scoring method →

Bonsai-mcp is a fork of BlenderMCP that extends the original functionality with dedicated support for IFC (Industry Foundation Classes) models through the Bonsai BIM addon for Blender. It lets LLMs read and modify IFC files by connecting to a Blender addon server. The server provides 11 IFC-specific tools, plus the execute code tool from BlenderMCP and the sequential thinking tool. It consists of two components: a Blender addon (addon.py) that creates a socket server in Blender, and an MCP server (tools.py) that implements the protocol and connects to the addon.

Tools

get_ifc_project_info
Retrieves basic information about the IFC project, including name, description, and counts of entity types.
list_ifc_entities
Lists IFC entities of a specific type with options to limit results and filter by selection.
get_ifc_properties
Retrieves all properties of a specific IFC entity by its GlobalId or from selected objects.
get_ifc_spatial_structure
Gets the spatial hierarchy of the IFC model (site, building, storeys, spaces).
get_ifc_relationships
Retrieves all relationships for a specific IFC entity.
get_selected_ifc_entities
Gets information about IFC entities corresponding to objects currently selected in the Blender UI.
get_user_view
Captures the current Blender viewport as an image, allowing visualization of the model.
export_ifc_data
Exports IFC data to a structured JSON or CSV file, with options to filter by entity type or building level.
place_ifc_object
Creates and positions an IFC element in the model at specified coordinates with optional rotation.
get_ifc_quantities
Calculates and gets quantities (m2, m3, etc.) for IFC elements, with options to filter by entity type or selection.
get_ifc_total_structure
Retrieves the complete hierarchical structure of the IFC model including spatial elements and all building elements.
export_drawing_png
Exports 2D and 3D drawings as high-resolution PNG images with customizable resolution.
get_ifc_georeferencing_info
Retrieves comprehensive georeferencing information from IFC files including CRS, map conversions, true north, and site coordinates.
georeference_ifc_model
Creates or updates georeferencing information in IFC models, allowing EPSG codes, custom CRS, and map conversions.
export_bc3_budget
Exports a BC3 budget file (FIEBDC-3/2016 format) based on the IFC model, supporting multi-language output.
execute_blender_code
Executes arbitrary Python code in Blender (legacy feature from BlenderMCP).
sequential_thinking
Step-by-step thinking tool for structured problem solving and complex analysis.

Setup

  1. Install prerequisites: Blender 4.0+, Python 3.12+, uv package manager, and Bonsai BIM addon. 2. Clone the repo: git clone https://github.com/JotaDeRodriguez/Bonsai_mcp. 3. Install addon.py as a Blender addon. 4. Configure the MCP client (e.g., Claude Desktop) with uv --directory <path> run tools.py. Alternatively, use Docker: build the image and run the container, exposing port 8000.

Fit and risk

Best for

  • Architects, engineers, and BIM professionals needing IFC model access.
  • LLM developers who want to interact with IFC data.
  • Automating design reviews and documentation generation.

Not for

  • Users not using Blender or the Bonsai BIM addon.
  • Processes requiring full automation without human interaction.
  • Users unfamiliar with IFC models (learning curve).

Required permissions

  • Execute commands on a local Blender instance via the addon server.
  • Execute arbitrary Python code in Blender (execute_blender_code).
  • Access and modify local IFC files.
  • Capture Blender viewport images and export data files.

Risks and side effects

  • The execute_blender_code tool can run arbitrary code, potentially causing data loss or unwanted changes.
  • Performance issues with large IFC models.
  • Misconfiguration in Docker deployments, leading to connection failures or CORS issues.

Troubleshooting

  1. Ensure the Blender addon server is running and the MCP server is configured.
  2. Verify that the Bonsai BIM addon is installed and an IFC file is loaded.
  3. For Docker, ensure Blender is running and the addon server is started.
  4. Large IFC models may time out; try simplifying requests or breaking them into smaller steps.
  5. CORS issues: API has CORS enabled by default for all origins, but clients may need to adjust settings.

Use cases

Query and analyze IFC models using natural language.
Generate technical reports with spatial hierarchy, quantities, and building elements.
Export BC3 budget files for construction cost estimation.
Use sequential thinking for maintenance planning or energy efficiency analysis.

Supported clients

Claude DesktopFull support
Open WebUIPartial support