← 返回目录
B

Bonsai MCP

社区
通过Bonsai和Blender实现IFC模型的MCP集成。
GitHub 源仓库 ↗
★ 60 Stars 分类 · 开发工具 热门 源版本 62e6a92217e7
51FMRS · D
可靠性
7/20
安全与权限
10/20
维护活跃度
10/20
文档质量
13/20
安装易用性
11/20

Bonsai-mcp是一个专注IFC的MCP服务器,通过Blender连接,提供丰富的IFC工具集。它的创新功能包括地理参考和BC3预算导出。需要Blender环境,适合BIM专业人士。安全性方面需谨慎使用execute_blender_code。总体而言,这是一个功能全面的IFC集成解决方案。

查看 FMRS 评分方法 →

Bonsai-mcp是BlenderMCP的一个分支,扩展了IFC(工业基础类)模型的支持。它允许LLM通过Blender中的Bonsai BIM插件读取和修改IFC文件。该服务器提供11个专为IFC查询和分析设计的工具,以及BlenderMCP中的执行代码工具和顺序思考工具。它由两个组件组成:一个Blender插件(addon.py)在Blender内创建套接字服务器,以及一个MCP服务器(tools.py)实现协议并连接到插件。

工具能力

get_ifc_project_info
获取IFC项目的基本信息,包括名称、描述和实体类型计数。
list_ifc_entities
列出特定类型的IFC实体,并可限制结果和按选择筛选。
get_ifc_properties
通过GlobalId或当前选择检索特定IFC实体的所有属性。
get_ifc_spatial_structure
获取IFC模型的空间层次结构(场地、建筑、楼层、空间)。
get_ifc_relationships
检索特定IFC实体的所有关系。
get_selected_ifc_entities
获取Blender UI中当前选中对象对应的IFC实体信息。
get_user_view
捕获当前Blender视口为图像,使用户能够可视化模型。
export_ifc_data
将IFC数据导出为结构化的JSON或CSV文件,并可过滤实体类型或建筑楼层。
place_ifc_object
在模型中指定坐标处创建和定位IFC元素,并可选择旋转。
get_ifc_quantities
计算并获取IFC元素的工程量(平方米、立方米等),并可过滤实体类型或选择。
get_ifc_total_structure
检索IFC模型的完整层次结构,包括空间元素和所有建筑元素。
export_drawing_png
导出2D和3D图纸为高分辨率PNG图像,并可自定义分辨率和视图参数。
get_ifc_georeferencing_info
检索IFC文件中全面的地理参考信息,包括坐标系、地图转换、真实北向和场地地理坐标。
georeference_ifc_model
在IFC模型中创建或更新地理参考信息,支持EPSG代码、自定义CRS定义和地图转换。
export_bc3_budget
根据IFC模型导出BC3预算文件(FIEBDC-3/2016格式),支持多语言输出。
execute_blender_code
在Blender中执行任意Python代码(原BlenderMCP的遗留功能)。
sequential_thinking
用于结构化问题解决和复杂分析的分步思考工具。

安装接入

  1. 安装先决条件:Blender 4.0+、Python 3.12+、uv包管理器、Bonsai BIM插件。2. 克隆仓库:git clone https://github.com/JotaDeRodriguez/Bonsai_mcp。3. 将addon.py安装为Blender插件。4. 配置MCP客户端(如Claude Desktop),使用uv命令指向tools.py。或者使用Docker:构建镜像并运行容器,暴露端口8000。

选型与风险

适合谁

  • 需要IFC模型访问的建筑师、工程师和BIM专家。
  • 希望与IFC数据交互的LLM开发人员。
  • 自动化设计审查和文档生成。

不适合谁

  • 不使用Blender或Bonsai BIM的用户。
  • 需要完全自动化且无人工干预的流程。
  • 对IFC模型一无所知的用户(有学习曲线)。

所需权限

  • 通过Blender插件在本地Blender实例上执行命令。
  • 在Blender中执行任意Python代码(execute_blender_code)。
  • 访问和修改本地IFC文件。
  • 捕获Blender视口图像并导出数据文件。

风险与副作用

  • execute_blender_code工具可以运行任意代码,可能导致数据丢失或不希望的更改。
  • 处理大型IFC模型时可能出现性能问题。
  • Docker部署中可能配置错误,导致连接失败或跨域问题。

常见排障

  1. 确保Blender插件服务器正在运行且MCP服务器已配置。
  2. 检查是否安装了Bonsai BIM插件并加载了IFC模型。
  3. 对于Docker,确保Blender正在运行且插件服务器已启动。
  4. 大型IFC模型可能超时,尝试简化请求或分解步骤。
  5. CORS问题:API默认允许所有来源,但客户端可能需调整。

使用场景

使用自然语言查询和分析IFC模型。
生成包含空间层次、构件数量和工程量的技术报告。
导出BC3预算文件用于施工成本估算。
使用顺序思考规划维护或能效分析。

支持客户端

Claude Desktop完整支持
Open WebUI部分支持