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 - Model Context Protocol Integration für IFC über IfcOpenShell und Blender

Bonsai-mcp ist ein Fork von BlenderMCP , der die ursprüngliche Funktionalität um dedizierte Unterstützung für IFC-Modelle (Industry Foundation Classes) über Bonsai (früher BlenderBIM) erweitert. Diese Integration ist eine Plattform, mit der LLMs IFC-Dateien lesen und bearbeiten können.

Merkmale

  • IFC-spezifische Funktionalität : Abfragen von IFC-Modellen, Analysieren räumlicher Strukturen und Untersuchen von Gebäudeelementen
  • Elf IFC-Tools enthalten : Projektinformationen prüfen, Entitäten auflisten, Eigenschaften untersuchen, räumliche Struktur erkunden, Beziehungen analysieren und mehr
  • Sequentielles Denken : Enthält das sequentielle Denktool von modelcontextprotocol/servers für strukturierte Problemlösung
  • Code-Ausführungstool aus der ursprünglichen BlenderMCP-Implementierung : Erstellen und ändern Sie Objekte, wenden Sie Materialien an und führen Sie Python-Code in Blender aus

Komponenten

Das System besteht aus zwei Hauptkomponenten:

  1. Blender-Addon ( addon.py ) : Ein Blender-Addon, das einen Socket-Server innerhalb von Blender erstellt, um Befehle zu empfangen und auszuführen, einschließlich IFC-spezifischer Operationen
  2. MCP-Server ( tools.py ) : Ein Python-Server, der das Model Context Protocol implementiert und eine Verbindung zum Blender-Add-on herstellt

Installation – Über die MCP-Clienteinstellungen

Voraussetzungen

  • Blender 4.0 oder neuer
  • Python 3.12 oder neuer
  • UV-Paketmanager
  • Bonsai BIM-Add-on für Blender (für IFC-Funktionalität)

UV installieren:

Mac:

brew install uv

Windows:

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

Informationen zu anderen Plattformen finden Sie in der UV-Installationsanleitung .

Klonen Sie das Repository

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

Claude für Desktop-Integration

Bearbeiten Sie Ihre Datei claude_desktop_config.json (Claude > Einstellungen > Entwickler > Konfiguration bearbeiten), um Folgendes einzuschließen:

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

Installation über Docker

Das Repository verfügt über eine Docker-Datei, die die Bereitstellung in verschiedenen Umgebungen einfach und konsistent macht.

Schnellstart

# 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

Sobald der Container ausgeführt wird, stellt er die MCP-Tools als REST/OpenAPI-APIs unter http://localhost:8000 bereit.

  • Um Ihre Installation zu überprüfen, öffnen Sie Ihren Browser und navigieren Sie zu
  • http://localhost:8000/docs
  • Sie sehen die Swagger-Benutzeroberfläche mit allen verfügbaren Endpunkten
  • Testen Sie einen Endpunkt, indem Sie darauf klicken. Klicken Sie dann auf „Ausprobieren“ und „Ausführen“.

Herstellen einer Verbindung mit Open WebUI oder anderen API-Clients

So verbinden Sie diese API mit Open WebUI:

  1. Gehen Sie in Open WebUI zu Einstellungen > Tool-Server verwalten
  2. Fügen Sie eine neue Verbindung hinzu mit:
    • URL: http://localhost:8000
    • Pfad zur OpenAPI-Spezifikation: /openapi.json
    • Authentifizierung: Keine (sofern nicht anders konfiguriert)

Umgebungsvariablen

Der Docker-Container akzeptiert mehrere Umgebungsvariablen, um sein Verhalten anzupassen:

# 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

Installieren des Blender-Add-ons

  1. Laden Sie die Datei addon.py aus diesem Repo herunter
  2. Öffnen Sie Blender
  3. Gehen Sie zu Bearbeiten > Einstellungen > Add-ons
  4. Klicken Sie auf „Installieren…“ und wählen Sie die Datei addon.py aus
  5. Aktivieren Sie das Add-on, indem Sie das Kontrollkästchen neben „Schnittstelle: Blender MCP – IFC“ aktivieren.

Verwendung

Starten der Verbindung

  1. Gehen Sie in Blender zur Seitenleiste „3D-Ansicht“ (drücken Sie N, wenn sie nicht sichtbar ist).
  2. Suchen Sie die Registerkarte „Blender MCP – IFC“
  3. Klicken Sie auf „Mit Claude verbinden“
  4. Stellen Sie sicher, dass der MCP-Server läuft

Verwendung mit Claude

Sobald die Verbindung hergestellt ist, sehen Sie in Claudes Benutzeroberfläche ein Hammersymbol mit Tools für die Blender MCP IFC-Integration.

IFC-Werkzeuge

Dieses Repo enthält neun IFC-spezifische Tools, die eine umfassende Abfrage und Bearbeitung von IFC-Modellen ermöglichen:

get_ifc_project_info : Ruft grundlegende Informationen zum IFC-Projekt ab, einschließlich Name, Beschreibung und Anzahl der verschiedenen Entitätstypen. Beispiel: „Was sind die grundlegenden Informationen zu diesem IFC-Projekt?“

list_ifc_entities : Listet IFC-Objekte eines bestimmten Typs (Wände, Türen, Räume usw.) mit Optionen zum Einschränken der Ergebnisse und Filtern nach Auswahl auf. Beispiel: „Listet alle Wände in diesem IFC-Modell auf“ oder „Zeigt mir die Fenster in diesem Gebäude“

get_ifc_properties : Ruft alle Eigenschaften einer bestimmten IFC-Entität anhand ihrer GlobalID oder der aktuell ausgewählten Objekte ab. Beispiel: „Welche Eigenschaften hat diese Wand mit der ID 1Dvrgv7Tf5IfTEapMkwDQY?“

get_ifc_spatial_structure : Ruft die räumliche Hierarchie des IFC-Modells ab (Gelände, Gebäude, Stockwerke, Räume). Beispiel: „Zeigen Sie mir die räumliche Struktur dieses Gebäudes.“

get_ifc_relationships : Ruft alle Beziehungen für eine bestimmte IFC-Entität ab. Beispiel: „Welche Beziehungen bestehen für die Eingangstür?“

get_selected_ifc_entities : Ruft Informationen zu IFC-Entitäten ab, die den aktuell in der Blender-Benutzeroberfläche ausgewählten Objekten entsprechen. Beispiel: „Erzählen Sie mir von den Elementen, die ich in Blender ausgewählt habe.“

get_user_view : Erfasst den aktuellen Blender-Ansichtsbereich als Bild und ermöglicht so die Visualisierung des Modells aus der Benutzerperspektive. Beispiel: „Zeigen Sie mir, was der Benutzer aktuell in Blender sieht.“

export_ifc_data : Exportiert IFC-Daten in eine strukturierte JSON- oder CSV-Datei mit Filteroptionen nach Entitätstyp oder Gebäudeebene. Beispiel: „Alle Wanddaten in eine CSV-Datei exportieren“

place_ifc_object : Erstellt und positioniert ein IFC-Element im Modell an den angegebenen Koordinaten mit optionaler Drehung. Beispiel: „Platziere eine Tür an den Koordinaten X:10, Y:5, Z:0 mit 90-Grad-Drehung.“

Blender-Code ausführen

Veraltete Funktion aus der ursprünglichen MCP-Implementierung. Ermöglicht Claude, beliebigen Python-Code in Blender auszuführen. Mit Vorsicht verwenden.

Werkzeug für sequentielles Denken

Diese Integration umfasst das Sequential Thinking-Tool für strukturierte Problemlösung und Analyse. Es ermöglicht einen schrittweisen Denkprozess, der sich mit zunehmendem Verständnis verzweigen, überarbeiten und anpassen lässt – ideal für komplexe IFC-Modellanalysen oder Planungsaufgaben.

Beispiel: „Nutzen Sie sequentielles Denken, um die Energieeffizienz dieses Gebäudes anhand des IFC-Modells zu analysieren.“

Beispielbefehle

Hier sind einige Beispiele dafür, was Sie Claude mit IFC-Modellen tun lassen können:

  • „Analysieren Sie dieses IFC-Modell und sagen Sie mir, wie viele Wände, Türen und Fenster es hat.“
  • „Zeigen Sie mir die räumliche Struktur dieses Gebäudemodells“
  • „Alle Räume in diesem IFC-Modell und ihre Eigenschaften auflisten“
  • „Identifizieren Sie alle Strukturelemente in diesem Gebäude“
  • „Welche Beziehungen bestehen zwischen dieser Wand und anderen Elementen?“
  • „Nutzen Sie sequentielles Denken, um einen Wartungsplan für dieses Gebäude basierend auf dem IFC-Modell zu erstellen.“

Fehlerbehebung

  • Verbindungsprobleme : Stellen Sie sicher, dass der Blender-Add-On-Server läuft und der MCP-Server in Claude konfiguriert ist.
  • IFC-Modell wird nicht geladen : Stellen Sie sicher, dass Sie das Bonsai BIM-Add-on installiert haben und dass eine IFC-Datei geladen ist
  • Timeout-Fehler : Versuchen Sie, Ihre Anfragen zu vereinfachen oder in kleinere Schritte aufzuteilen

Docker:

  • Fehler „Verbindung abgelehnt“ : Stellen Sie sicher, dass Blender ausgeführt wird und das Add-on aktiviert ist, während der Server gestartet ist
  • CORS-Probleme : Die API hat CORS standardmäßig für alle Ursprünge aktiviert. Wenn Probleme auftreten, überprüfen Sie die CORS-Einstellungen Ihres Clients.
  • Leistungsbedenken : Bei großen IFC-Modellen können die API-Antworten langsamer sein. Erwägen Sie die Anpassung der Timeouts in Ihrem Client.

Technische Details

Die IFC-Integration nutzt das Bonsai BIM-Modul, um auf die ifcopenshell-Funktionalität in Blender zuzugreifen. Die Kommunikation erfolgt über dasselbe JSON-basierte Protokoll über TCP-Sockets wie das ursprüngliche BlenderMCP.

Einschränkungen und Sicherheitsüberlegungen

  • Das Tool execute_blender_code aus dem Originalprojekt ist weiterhin verfügbar und ermöglicht die Ausführung beliebigen Python-Codes in Blender. Verwenden Sie es mit Vorsicht und speichern Sie Ihre Arbeit immer.
  • Bei komplexen IFC-Modellen kann es erforderlich sein, Vorgänge in kleinere Schritte aufzuteilen.
  • Die Leistung der IFC-Abfrage hängt von der Größe und Komplexität des Modells ab.
  • Das Tool „Benutzeransicht abrufen“ gibt ein Base64-codiertes Bild zurück. Bitte stellen Sie sicher, dass der Client dies unterstützt.

Beiträge

Dieses MIT-lizenzierte Repo kann geforkt, modifiziert und auf jede erdenkliche Weise verwendet werden. Ich bin offen für Ideen und Kooperationen. Zögern Sie also nicht, mich für Beiträge zu kontaktieren.

Credits

ZU TUN

Integration und Tests mit mehreren MCP-Clients

-
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.

Ein Model Context Protocol-Server, der Claude in Blender integriert und es Benutzern ermöglicht, IFC-Gebäudemodelle (Industry Foundation Classes) über natürliche Sprachbefehle zu analysieren und mit ihnen zu interagieren.

  1. Merkmale
    1. Komponenten
      1. Installation – Über die MCP-Clienteinstellungen
        1. Voraussetzungen
        2. Klonen Sie das Repository
        3. Claude für Desktop-Integration
      2. Installation über Docker
        1. Schnellstart
          1. Herstellen einer Verbindung mit Open WebUI oder anderen API-Clients
          2. Umgebungsvariablen
        2. Installieren des Blender-Add-ons
          1. Verwendung
            1. Starten der Verbindung
            2. Verwendung mit Claude
          2. IFC-Werkzeuge
            1. Blender-Code ausführen
              1. Werkzeug für sequentielles Denken
                1. Beispielbefehle
                  1. Fehlerbehebung
                    1. Technische Details
                      1. Einschränkungen und Sicherheitsüberlegungen
                        1. Beiträge
                          1. Credits
                            1. ZU TUN

                              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