Bonsai-mcp - IfcOpenShell を介した IFC 向け Blender モデル コンテキスト プロトコル統合
Bonsai-mcpはBlenderMCPのフォークで、Bonsaiを介してIFC(Industry Foundation Classes)モデル専用のサポートを追加することで、オリジナルの機能を拡張しています。この統合は、Claude、あるいは任意のLLM(ただし、Claudeデスクトップクライアントのみでテスト済み)をBlenderに接続し、IfcOpenShellコマンドを実行する機能を確認することを目的とした、簡単な概念実証です。
特徴
- IFC固有の機能: IFCモデルのクエリ、空間構造の解析、建物要素の検査
- 5 つの強力な IFC ツール: プロジェクト情報の検査、エンティティの一覧表示、プロパティの調査、空間構造の探索、関係の分析
- シーケンシャル思考: 構造化された問題解決のためのmodelcontextprotocol/serversのシーケンシャル思考ツールが含まれています
- オリジナルのBlenderMCP実装からのコード実行ツールでオブジェクトを作成および変更し、マテリアルを適用し、Pythonコードを実行します
- 標準モデルでテスト済み: デフォルトの ifcopenshell ハウス モデル ( AC20-FZK-Haus.ifc ) で動作することを検証済み
コンポーネント
このシステムは、次の 2 つの主要コンポーネントで構成されています。
- Blenderアドオン(
addon.py
) :IFC固有の操作を含むコマンドを受信して実行するためのソケットサーバーをBlender内に作成するBlenderアドオン - MCP サーバー (
blender_mcp_tools.py
) : モデルコンテキストプロトコルを実装し、Blender アドオンに接続する Python サーバー
インストール
前提条件
- Blender 3.0以降
- Python 3.10以降
- UVパッケージマネージャー
- Blender 用 Bonsai BIM アドオン (IFC 機能用)
uvのインストール:
マック:
ウィンドウズ:
他のプラットフォームについては、 UV インストール ガイドを参照してください。
リポジトリをクローンする
デスクトップ統合のクロード
claude_desktop_config.json
ファイル (Claude > 設定 > 開発者 > 構成の編集) を編集して、以下を追加します。
Blenderアドオンのインストール
- このリポジトリから
addon.py
ファイルをダウンロードします - ブレンダーを開く
- 編集 > 設定 > アドオンに移動します
- 「インストール...」をクリックし、
addon.py
ファイルを選択します。 - 「インターフェース: Blender MCP - IFC」の横にあるボックスにチェックを入れてアドオンを有効にします。
使用法
接続の開始
- Blenderで、3Dビューサイドバーに移動します(表示されていない場合はNを押します)
- 「Blender MCP - IFC」タブを見つけます
- 「クロードに接続」をクリック
- MCPサーバーが稼働していることを確認してください
クロードと一緒に使う
接続すると、Claude のインターフェースに、Blender MCP IFC 統合用のツールとともにハンマー アイコンが表示されます。
IFCツール
このフォークは、5 つの強力な IFC 固有のツールを追加します。
1. get_ifc_project_info
名前、説明、さまざまなエンティティ タイプの数など、IFC プロジェクトに関する基本情報を取得します。
例: 「この IFC プロジェクトに関する基本情報は何ですか?」
2. list_ifc_entities
特定のタイプ(壁、ドア、スペースなど)の IFC エンティティを一覧表示します。
例: 「この IFC モデルのすべての壁を一覧表示する」または「この建物の窓を表示する」
3. get_ifc_properties
特定の IFC エンティティのすべてのプロパティを GlobalId で取得します。
例: 「ID 1Dvrgv7Tf5IfTEapMkwDQY のこの壁のプロパティは何ですか?」
4. get_ifc_spatial_structure
IFC モデルの空間階層 (サイト、建物、階、スペース) を取得します。
例:「この建物の空間構造を見せてください」
5. get_ifc_relationships
特定の IFC エンティティのすべての関係を取得します。
例:「玄関ドアの関係はどのようなものですか?」
Blenderコードを実行する
オリジナルのMCP実装からのレガシー機能です。ClaudeがBlender内で任意のPythonコードを実行できるようになります。注意して使用してください。
シーケンシャルシンキングツール
この統合には、問題解決と分析のための詳細なステップバイステップの思考プロセスを促進する Sequential Thinking ツールも含まれています。
ツールパラメータ:
thought
(文字列): 現在の思考ステップnextThoughtNeeded
(boolean): 別の思考ステップが必要かどうかthoughtNumber
(整数):現在の思考番号totalThoughts
(整数): 必要な推定総思考数isRevision
(ブール値、オプション):これが以前の考えを修正するかどうかrevisesThought
(整数、オプション): 再考されている考えbranchFromThought
(整数、オプション): 分岐点の思考番号branchId
(文字列、オプション): ブランチ識別子needsMoreThoughts
(ブール値、オプション): さらに考えが必要な場合
例: 「この建物のエネルギー効率を連続的な思考で分析してください」
コマンド例
Claude に IFC モデルに関して依頼できる作業の例をいくつか示します。
- 「このIFCモデルを分析して、壁、ドア、窓がいくつあるか教えてください」
- 「この建物模型の空間構造を見せてください」
- 「このIFCモデル内のすべてのスペースとそのプロパティを一覧表示する」
- 「この建物のすべての構造要素を特定してください」
- 「この壁と他の要素との関係はどのようなものですか?」
- 「IFCモデルに基づいて、この建物のメンテナンス計画を段階的に作成してください。」
トラブルシューティング
- 接続の問題: Blenderアドオンサーバーが実行中であること、およびMCPサーバーがClaudeで設定されていることを確認してください。
- IFCモデルが読み込まれない: Bonsai BIMアドオンがインストールされ、IFCファイルが読み込まれていることを確認してください
- タイムアウトエラー: リクエストを簡素化するか、小さなステップに分割してみてください
技術的な詳細
IFC統合では、Bonsai BIMモジュールを使用してBlender内のifcopenshell機能にアクセスします。通信は、オリジナルのBlenderMCPと同じTCPソケット経由のJSONベースのプロトコルに従います。
制限事項とセキュリティに関する考慮事項
- オリジナルプロジェクトの
execute_blender_code
ツールは引き続き利用可能で、Blenderで任意のPythonコードを実行できます。注意して使用し、作業内容は必ず保存してください。 - 複雑な IFC モデルでは、操作をより小さなステップに分割する必要がある場合があります。
- IFC クエリのパフォーマンスは、モデルのサイズと複雑さによって異なります。
クレジット
- Siddharth AhujaによるオリジナルBlenderMCP
- modelcontextprotocol/serversのシーケンシャル思考ツール
- BlenderのBonsai BIMアドオン上に構築されたIFC統合
やるべきこと
カーソル実装 'get_selected_ifc_elements' の説明を追加
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) 建物モデルを分析および操作できるようにするモデル コンテキスト プロトコル サーバー。
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 -1PythonMIT License