Integrations

  • Enables interactions with IFC (Industry Foundation Classes) models through Bonsai BIM, allowing users to query models, analyze spatial structures, inspect project information, and examine building elements and their relationships.

  • Provides tools for executing Python code in Blender, creating and modifying 3D objects, applying materials, and analyzing IFC models through a socket-based connection.

Bonsai-mcp — интеграция протокола контекста модели для IFC через IfcOpenShell и Blender

Bonsai-mcp — это ответвление BlenderMCP , которое расширяет исходную функциональность за счет специальной поддержки моделей IFC (Industry Foundation Classes) через Bonsai (ранее называвшийся BlenderBIM). Эта интеграция представляет собой платформу, позволяющую LLM читать и изменять файлы IFC.

Функции

  • Специфические функции IFC : запросы к моделям IFC, анализ пространственных структур и изучение элементов зданий.
  • Включено одиннадцать инструментов IFC : проверка информации о проекте, составление списка объектов, проверка свойств, исследование пространственной структуры, анализ взаимосвязей и многое другое.
  • Последовательное мышление : включает в себя инструмент последовательного мышления из modelcontextprotocol/servers для структурированного решения проблем.
  • Инструмент «Выполнить код» из оригинальной реализации BlenderMCP : создание и изменение объектов, применение материалов и выполнение кода Python в Blender.

Компоненты

Система состоит из двух основных компонентов:

  1. Дополнение Blender ( addon.py ) : дополнение Blender, которое создает сокет-сервер в Blender для получения и выполнения команд, включая специфичные для IFC операции.
  2. MCP-сервер ( tools.py ) : сервер Python, реализующий протокол контекста модели и подключающийся к дополнению Blender.

Установка — через настройки клиента MCP

Предпосылки

  • Blender 4.0 или новее
  • Python 3.12 или новее
  • менеджер пакетов uv
  • Дополнение Bonsai BIM для Blender (для функциональности IFC)

Установка УФ:

Мак:

brew install uv

Окна:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex" set Path=C:\Users\[username]\.local\bin;%Path%

Для других платформ см. руководство по установке УФ-ламп .

Клонировать репозиторий

git clone https://github.com/JotaDeRodriguez/Bonsai_mcp

Клод для интеграции с рабочим столом

Отредактируйте файл claude_desktop_config.json (Claude > Настройки > Разработчик > Изменить конфигурацию), включив в него:

{ "mcpServers": { "Bonsai-mcp": { "command": "uv", "args": [ "--directory", "\\your\\path\\to\\Bonsai_mcp", "run", "tools.py" ] } } }

Установка через Docker

Репозиторий поставляется с Dockerfile, который делает развертывание простым и единообразным в различных средах.

Быстрый старт

# Clone the repository git clone https://github.com/JotaDeRodriguez/Bonsai_mcp cd Bonsai_mcp # Build the Docker image docker build -t bonsai_mcp . # Run the container docker run -p 8000:8000 --name bonsai_mcp bonsai_mcp

После запуска контейнер предоставит инструменты MCP в виде API REST/OpenAPI по адресу http://localhost:8000 .

  • Чтобы проверить установку, откройте браузер и перейдите по адресу
  • http://localhost:8000/docs
  • Вы увидите пользовательский интерфейс Swagger со всеми доступными конечными точками.
  • Протестируйте конечную точку, щелкнув по ней, затем нажмите «Попробовать» и «Выполнить».

Подключение к Open WebUI или другим API-клиентам

Чтобы подключить этот API к Open WebUI:

  1. В Open WebUI перейдите в Настройки > Управление серверами инструментов.
  2. Добавьте новое соединение с помощью:
    • URL-адрес: http://localhost:8000
    • Путь к спецификации OpenAPI: /openapi.json
    • Аутентификация: Нет (если не настроено иное)

Переменные среды

Контейнер Docker принимает несколько переменных среды для настройки своего поведения:

# Example with custom settings docker run -p 8000:8000 \ -e BLENDER_HOST=host.docker.internal \ -e BLENDER_PORT=9876 \ -e MCP_HOST=0.0.0.0 \ -e MCP_PORT=8000 \ --name bonsai_mcp bonsai_mcp

Установка дополнения Blender

  1. Загрузите файл addon.py из этого репозитория
  2. Открыть блендер
  3. Перейдите в меню «Правка» > «Настройки» > «Дополнения».
  4. Нажмите «Установить...» и выберите файл addon.py
  5. Включите дополнение, установив флажок рядом с «Интерфейс: Blender MCP - IFC».

Использование

Начало соединения

  1. В Blender перейдите на боковую панель 3D-вида (нажмите N, если она не видна)
  2. Найдите вкладку «Blender MCP - IFC».
  3. Нажмите «Подключиться к Клоду».
  4. Убедитесь, что сервер MCP запущен.

Использование с Клодом

После подключения вы увидите значок молотка в интерфейсе Клода с инструментами для интеграции Blender MCP IFC.

Инструменты МФК

В этот репозиторий входят девять специализированных инструментов IFC, которые позволяют выполнять комплексные запросы и манипулировать моделями IFC:

get_ifc_project_info : Извлекает основную информацию о проекте IFC, включая имя, описание и количество различных типов сущностей. Пример: «Какова основная информация об этом проекте IFC?»

list_ifc_entities : Перечисляет сущности IFC определенного типа (стены, двери, пространства и т. д.) с возможностью ограничения результатов и фильтрации по выбору. Пример: «Перечислить все стены в этой модели IFC» или «Показать мне окна в этом здании»

get_ifc_properties : Извлекает все свойства определенной сущности IFC по ее GlobalId или из выбранных в данный момент объектов. Пример: «Каковы свойства этой стены с идентификатором 1Dvrgv7Tf5IfTEapMkwDQY?»

get_ifc_spatial_structure : Получает пространственную иерархию модели IFC (участок, здание, этажи, пространства). Пример: "Покажите мне пространственную структуру этого здания"

get_ifc_relationships : Извлекает все отношения для определенной сущности IFC. Пример: «Каковы отношения входной двери?»

get_selected_ifc_entities : Получает информацию о сущностях IFC, соответствующих объектам, выбранным в данный момент в пользовательском интерфейсе Blender. Пример: «Расскажите мне об элементах, которые я выбрал в Blender»

get_user_view : Захватывает текущее окно просмотра Blender как изображение, позволяя визуализировать модель с точки зрения пользователя. Пример: "Покажи мне, что пользователь в данный момент видит в Blender"

export_ifc_data : Экспортирует данные IFC в структурированный файл JSON или CSV с возможностью фильтрации по типу сущности или уровню здания. Пример: «Экспортировать все данные о стенах в файл CSV»

place_ifc_object : Создает и размещает элемент IFC в модели в указанных координатах с необязательным поворотом. Пример: "Поместить дверь в координатах X:10, Y:5, Z:0 с поворотом на 90 градусов"

Выполнить код Blender

Устаревшая функция из оригинальной реализации MCP. Позволяет Клоду выполнять произвольный код Python в Blender. Используйте с осторожностью.

Инструмент последовательного мышления

Эта интеграция включает инструмент последовательного мышления для структурированного решения проблем и анализа. Он облегчает пошаговый процесс мышления, который может разветвляться, пересматриваться и адаптироваться по мере углубления понимания — идеально подходит для сложного анализа модели IFC или задач планирования.

Пример: «Используйте последовательное мышление для анализа энергоэффективности этого здания на основе модели IFC»

Примеры команд

Вот несколько примеров того, что вы можете попросить Клода сделать с моделями IFC:

  • «Проанализируйте эту модель IFC и скажите, сколько в ней стен, дверей и окон»
  • «Покажите мне пространственную структуру этой модели здания»
  • «Перечислить все пространства в этой модели IFC и их свойства»
  • «Определите все структурные элементы в этом здании»
  • «Каковы взаимоотношения между этой стеной и другими элементами?»
  • «Используйте последовательное мышление, чтобы создать план обслуживания этого здания на основе модели IFC»

Поиск неисправностей

  • Проблемы с подключением : убедитесь, что сервер дополнений Blender запущен, а сервер MCP настроен в Claude.
  • Модель IFC не загружается : убедитесь, что у вас установлено дополнение Bonsai BIM и загружен файл IFC.
  • Ошибки тайм-аута : попробуйте упростить запросы или разбить их на более мелкие этапы.

Докер:

  • Ошибки «Подключение отклонено» : убедитесь, что Blender запущен, дополнение включено и сервер запущен.
  • Проблемы CORS : API имеет CORS, включенный по умолчанию для всех источников. Если у вас возникли проблемы, проверьте настройки CORS вашего клиента
  • Проблемы производительности : Для больших моделей IFC ответы API могут быть медленнее. Рассмотрите возможность настройки тайм-аутов в вашем клиенте

Технические подробности

Интеграция IFC использует модуль Bonsai BIM для доступа к функциональности ifcopenshell в Blender. Связь осуществляется по тому же протоколу на основе JSON через сокеты TCP, что и оригинальный BlenderMCP.

Ограничения и соображения безопасности

  • Инструмент execute_blender_code из оригинального проекта все еще доступен, позволяя запускать произвольный код Python в Blender. Используйте с осторожностью и всегда сохраняйте свою работу.
  • Сложные модели IFC могут потребовать разбиения операций на более мелкие этапы.
  • Производительность запросов IFC зависит от размера и сложности модели.
  • Инструмент Get User View возвращает изображение в кодировке base64. Убедитесь, что клиент его поддерживает.

Вклады

Этот лицензированный MIT репозиторий открыт для форка, модификации и использования любым способом. Я открыт для идей и сотрудничества, так что не стесняйтесь обращаться ко мне за взносами.

Кредиты

ДЕЛАТЬ

Интеграция и тестирование с большим количеством клиентов MCP

-
security - not tested
A
license - permissive license
-
quality - not tested

local-only server

The server can only run on the client's local machine because it depends on local resources.

Сервер протокола контекста модели, который интегрирует Claude с Blender, позволяя пользователям анализировать и взаимодействовать с IFC (Industry Foundation Classes), создавая модели с помощью команд естественного языка.

  1. Функции
    1. Компоненты
      1. Установка — через настройки клиента MCP
        1. Предпосылки
        2. Клонировать репозиторий
        3. Клод для интеграции с рабочим столом
      2. Установка через Docker
        1. Быстрый старт
          1. Подключение к Open WebUI или другим API-клиентам
          2. Переменные среды
        2. Установка дополнения Blender
          1. Использование
            1. Начало соединения
            2. Использование с Клодом
          2. Инструменты МФК
            1. Выполнить код Blender
              1. Инструмент последовательного мышления
                1. Примеры команд
                  1. Поиск неисправностей
                    1. Технические подробности
                      1. Ограничения и соображения безопасности
                        1. Вклады
                          1. Кредиты
                            1. ДЕЛАТЬ

                              Related MCP Servers

                              • -
                                security
                                F
                                license
                                -
                                quality
                                A Model Context Protocol server that allows management and execution of Blender Python scripts, enabling users to create, edit and run scripts in a headless Blender environment through natural language interfaces.
                                Last updated -
                                4
                                Python
                              • A
                                security
                                F
                                license
                                A
                                quality
                                A starter template for building Model Context Protocol servers that can be integrated with Cursor or Claude Desktop, allowing developers to create custom tools and extensions for AI assistants.
                                Last updated -
                                1
                                6
                                9
                                TypeScript
                                • Apple
                              • -
                                security
                                F
                                license
                                -
                                quality
                                A Model Context Protocol server that bridges AI assistants like Claude with Wordware's specialized agent capabilities, allowing dynamic loading and access to any Wordware flow through a standardized interface.
                                Last updated -
                                Python
                              • -
                                security
                                A
                                license
                                -
                                quality
                                A Model Context Protocol server that enables interaction with Foundry tools through natural language, allowing users to create projects, build contracts, run tests, and manage Ethereum development environments.
                                Last updated -
                                Python
                                MIT License

                              View all related MCP servers

                              ID: d7w1e52hby