mcpField
L
ldraw-mcp

ldraw-mcp

ローカル
github.comメディア・デザイン33 日前に更新

ldraw-mcp について

ldraw-mcp は、ヘッドレス Blender と ImportLDraw アドオンで LDraw の LEGO モデルファイルを画像にする MCP サーバーです。モデル確認向けに、部品表、色の検索、パーツ検索も提供します。

主な機能

  1. 01複数の角度から LDraw ファイルをレンダリング
  2. 02インラインの LDraw テキストをレンダリング
  3. 03部品と色ごとの数量を集計
  4. 04LDraw の色を検索
  5. 05パーツライブラリを検索
  6. 06レンダラーの設定を診断

活用シーン

  1. 01モデルを視覚的に確認してエクスポート不備を発見
  2. 02ファイル保存せずにインラインのモデルをレンダリング
  3. 03モデル内の部品と数量を一覧化
  4. 04LDraw ライブラリから部品や色を検索

MCP 対応

レンダリング、部品表、色の検索、パーツ検索、レンダラー診断のツールを MCP クライアントに公開します。レンダリングにはヘッドレス Blender と ImportLDraw を使用し、部品表や色の検索ツールにはそれぞれライブラリ要件があります。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"musharna-ldraw": {
"command": "uvx",
"args": [
"ldraw-mcp"
],
"env": {
"LDRAW_MCP_BLENDER": "<LDRAW_MCP_BLENDER>",
"LDRAW_LIBRARY_PATH": "<LDRAW_LIBRARY_PATH>"
}
}
}
}
起動コマンドuvx ldraw-mcp
設定が必要な環境変数
LDRAW_MCP_BLENDERPath to the Blender binary (overrides PATH lookup).
LDRAW_LIBRARY_PATHPath to the LDraw parts library (default ~/.ldraw).

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypildraw-mcp0.3.1

ツール

6

掲載時のツール一覧 · 2 週間前に更新

このツールにパラメーターはありません。

詳細

ldraw-mcp

MCP クライアントに LEGO® モデルを見る目を与えます。

LDraw ファイル(.ldr / .mpd / .dat)を、ヘッドレス Blender と ImportLDraw アドオンを使って 実際のパーツ形状(スタッド、傾斜、窓ガラスなど)で画像にレンダリングします。出力は BrickLink Stud.io のレンダリングのような見た目で、処理のどこにも GUI は必要ありません。

PyPI Python License MCP CI Glama DOI

赤い LEGO 車をレンダリングした2つのビュー — 実際のスタッド、透明なガラス、ゴム製タイヤ、ステアリングホイール

約90行の .ldr を左前方と右後方からレンダリングしたもの — 幾何学的な代用品ではなく、実際のブロックです。


ビジョン対応モデルに組み立てを見せると、実際のブロックを確認できます。 回転行列の交差、浮いたプレート、沈み込んだ窓など、幾何学的な代用品によるレンダリングでは簡単に隠れてしまうエクスポートの不具合を見つけられます。

クイックスタート

# 1. install
pip install ldraw-mcp

# 2. install the LDraw parts library + ImportLDraw addon
ldraw-mcp-setup

# 3. register with Claude Code
claude mcp add ldraw -- ldraw-mcp

次のように尋ねてみてください。「output/build.ldr をレンダリングして、問題がありそうな箇所を教えて」 — モデルはテキストだけでなく、レンダリング結果を確認します。

Blender は前提条件です(要件を参照してください)。ldraw-mcp-setup ではインストールされません。

ツール

ツール機能
render_ldraw_file(path, azimuths="-60,120", resolution=640, samples=24)モデルファイルを PNG にレンダリングします(複数ビューを並べて結合)
render_ldraw_text(ldr, azimuths="-60,120", resolution=640, samples=24)インラインの LDraw コンテンツを、ファイルに書き込まずにレンダリングします
check_renderer()Blender / アドオン / パーツライブラリの設定を診断します
bill_of_materials(path="", ldr="")モデルファイルまたはインラインテキストの、パーツ × 色 × 数量の一覧
lookup_color(query)LDConfig.ldr の色コード ↔ 名前 / RGB / エッジ / アルファ
search_parts(query, limit=50)説明またはファイル名に query を含むライブラリパーツ

azimuths はビュー角度を度数で指定するカンマ区切りのリストです。それぞれの角度でレンダリングし、ビューを横に並べて結合します。仰角は22°に固定されています。samples の値を大きくすると、より鮮明になりますが、処理は遅くなります。

3つの照会ツールは読み取り専用で、Blender は不要です。bill_of_materials は MPD サブモデル(およびモデルと同じ場所にある兄弟ファイルの .ldr / .mpd)を、それぞれの使用数を反映して展開し、色16を参照元の行の色に解決します。色24(エッジ)は24として報告されます。パーツライブラリがなくても数を集計できますが、その場合、説明と色名は null になります。LDConfig.ldr に定義されていない色コードは unknown_color_codes に、ライブラリにないパーツは parts_not_in_library に記載され、どちらも除外されません。サブモデル参照の循環がある場合は、循環の内容を示すエラーになります。lookup_color と search_parts にはライブラリが必要です(ldraw-mcp-setup)。

要件

  • PATH に Blender 4.x が必要です。ない場合は、バイナリの場所を LDRAW_MCP_BLENDER に指定してください。 Blender はご自身でインストールしてください(パッケージマネージャー、blender.org、またはローカルビルド)。ldraw-mcp-setup は Blender をインストールしません。
  • Blender のアドオンディレクトリに ImportLDraw アドオン(io_scene_importldraw)が必要です。 ldraw-mcp-setup によってインストールされます。
  • ~/.ldraw(または LDRAW_LIBRARY_PATH)に LDraw パーツライブラリが必要です。 ldraw-mcp-setup によってインストールされます。
環境変数
変数意味
LDRAW_MCP_BLENDERBlender バイナリへのパス(PATH の検索結果を上書きします)
LDRAW_MCP_DISABLE1 に設定すると、is_available() が False を返すようにします
LDRAW_LIBRARY_PATHLDraw パーツライブラリへのパス(コミュニティでの慣例)
手動セットアップ

ldraw-mcp-setup で自動検出できない場合は、以下を行ってください。

  • LDraw ライブラリ: complete.zip をダウンロードし、展開して ~/.ldraw/parts/ が存在する状態にします。
  • ImportLDraw アドオン: TobyLobster/ImportLDraw から最新リリースをダウンロードし、Blender > Preferences > Add-ons > Install からインストールするか、~/.config/blender/<version>/scripts/addons/io_scene_importldraw/ に展開します。 (最初に Blender を一度起動して、設定ディレクトリを作成してください。)

トラブルシューティング

  • check_renderer が NOT FOUND と表示する場合: ldraw-mcp-setup を実行するか、上記の該当する環境変数を設定してください。
  • GPU がない場合/WSL2/コンテナの場合: レンダリングには CPU 上の Cycles を使用します。ヘッドレス環境ならどこでも動作し、GPU もディスプレイも不要です。約 150 パーツのモデルは、デフォルトの 640px/24 サンプルで数秒かかります。
  • 「no mesh objects imported」と表示される場合: アドオンがパーツを解決できませんでした。通常は LDraw ライブラリのパスが間違っているか、不完全です。セットアップを再実行するか、LDRAW_LIBRARY_PATH を確認してください。
  • アドオンが有効になっていない場合: レンダリングスクリプトが実行ごとに自動で有効化します。手動の Blender セッションで警告が表示される場合は、Preferences > Add-ons で io_scene_importldraw を有効にしてください。

来歴

このレンダラーは prompt2brick プロジェクトから抽出されました。もともとは、ビジョンクリティックの「実際のモデルを見る」ための処理として始まりました。 prompt2brick にはレンダリングラッパーと Blender スクリプトの独自のベンダーコピーがありますが、今後はこのリポジトリが正式なソースです。レンダラーの修正や改善は、まずここに反映してから prompt2brick に移植してください。

ライセンス

MIT — LICENSE を参照してください。


LEGO® は LEGO Group の商標です。同社は本プロジェクトを後援、承認、または支持していません。このツールは LEGO Group、BrickLink、LDraw.org 組織とは提携していません。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。