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.
Компоненты
Система состоит из двух основных компонентов:
- Дополнение Blender (
addon.py
) : дополнение Blender, которое создает сокет-сервер в Blender для получения и выполнения команд, включая специфичные для IFC операции. - MCP-сервер (
tools.py
) : сервер Python, реализующий протокол контекста модели и подключающийся к дополнению Blender.
Установка — через настройки клиента MCP
Предпосылки
- Blender 4.0 или новее
- Python 3.12 или новее
- менеджер пакетов uv
- Дополнение Bonsai BIM для Blender (для функциональности IFC)
Установка УФ:
Мак:
Окна:
Для других платформ см. руководство по установке УФ-ламп .
Клонировать репозиторий
Клод для интеграции с рабочим столом
Отредактируйте файл claude_desktop_config.json
(Claude > Настройки > Разработчик > Изменить конфигурацию), включив в него:
Установка через Docker
Репозиторий поставляется с Dockerfile, который делает развертывание простым и единообразным в различных средах.
Быстрый старт
После запуска контейнер предоставит инструменты MCP в виде API REST/OpenAPI по адресу http://localhost:8000
.
- Чтобы проверить установку, откройте браузер и перейдите по адресу
http://localhost:8000/docs
- Вы увидите пользовательский интерфейс Swagger со всеми доступными конечными точками.
- Протестируйте конечную точку, щелкнув по ней, затем нажмите «Попробовать» и «Выполнить».
Подключение к Open WebUI или другим API-клиентам
Чтобы подключить этот API к Open WebUI:
- В Open WebUI перейдите в Настройки > Управление серверами инструментов.
- Добавьте новое соединение с помощью:
- URL-адрес:
http://localhost:8000
- Путь к спецификации OpenAPI:
/openapi.json
- Аутентификация: Нет (если не настроено иное)
- URL-адрес:
Переменные среды
Контейнер Docker принимает несколько переменных среды для настройки своего поведения:
Установка дополнения Blender
- Загрузите файл
addon.py
из этого репозитория - Открыть блендер
- Перейдите в меню «Правка» > «Настройки» > «Дополнения».
- Нажмите «Установить...» и выберите файл
addon.py
- Включите дополнение, установив флажок рядом с «Интерфейс: Blender MCP - IFC».
Использование
Начало соединения
- В Blender перейдите на боковую панель 3D-вида (нажмите N, если она не видна)
- Найдите вкладку «Blender MCP - IFC».
- Нажмите «Подключиться к Клоду».
- Убедитесь, что сервер 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 репозиторий открыт для форка, модификации и использования любым способом. Я открыт для идей и сотрудничества, так что не стесняйтесь обращаться ко мне за взносами.
Кредиты
- Оригинальный BlenderMCP от Сиддхарта Ахуджи
- Инструмент последовательного мышления от modelcontextprotocol/servers
- Интеграция IFC, основанная на дополнении Bonsai BIM для Blender
ДЕЛАТЬ
Интеграция и тестирование с большим количеством клиентов MCP
This server cannot be installed
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), создавая модели с помощью команд естественного языка.
- Функции
- Компоненты
- Установка — через настройки клиента MCP
- Установка через Docker
- Быстрый старт
- Установка дополнения Blender
- Использование
- Инструменты МФК
- Выполнить код Blender
- Инструмент последовательного мышления
- Примеры команд
- Поиск неисправностей
- Технические подробности
- Ограничения и соображения безопасности
- Вклады
- Кредиты
- ДЕЛАТЬ
Related MCP Servers
- -securityFlicense-qualityA 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 -4Python
- AsecurityFlicenseAqualityA 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 -169TypeScript
- -securityFlicense-qualityA 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
- -securityAlicense-qualityA 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 -PythonMIT License