mcpField
E
ellmos Blender Use

ellmos Blender Use

ローカル
github.comメディア・デザイン24 週間前に更新

ellmos Blender Use について

ellmos Blender Use は、テクニカルアーティストやアセットパイプライン担当者向けのローカル優先 MCP サーバーです。アドオンや常駐プロセスを使わず、ヘッドレス Blender で FBX の再インポートと形状を検証し、構造化結果を返します。

主な機能

  1. 01ヘッドレス FBX 再インポート検査
  2. 02メッシュ・マテリアル・名称の検証
  3. 034方向からの形状レンダリング
  4. 04制限付き Blender スクリプト実行
  5. 05Blender 実行ファイルの特定

活用シーン

  1. 01CI パイプラインでの FBX アセット検査
  2. 02命名プレフィックスとマテリアル割り当ての確認
  3. 03回転・浮遊パーツ・ピボットの問題検出

MCP 対応

stdio 経由で MCP クライアントに Blender の検証・実行ツールを提供します。呼び出しごとに、時間制限付きのヘッドレス Blender プロセスを一度だけ起動します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"ellmos-ai-ellmos-blender-use": {
"command": "npx",
"args": [
"-y",
"ellmos-blender-use-mcp"
]
}
}
}
起動コマンドnpx -y ellmos-blender-use-mcp

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

パッケージ
npmellmos-blender-use-mcp0.1.0-alpha.9

ツール

3

掲載時のツール一覧 · 3 日前に更新

パラメーター型必須説明
blenderPathstringいいえ

詳細

ellmos Blender Use MCP ロゴ

ellmos Blender Use MCP

🇩🇪 ドイツ語版

ellmos-ai ファミリーの一部であり、open-bricks のオープンソースイニシアチブに参加しています。

npm version npm downloads CI Tests License: MIT Attribution: NOTICE Node.js Platform Privacy Security Security SLA Code Style LLM-Ready Glama Ecosystem Umbrella Verified Last-checked Contributing: Guide Level 1 SBOM


クイックナビゲーション

言語 / Sprache: 🇬🇧 English | 🇩🇪 Deutsch

#セクション(EN)セクション(DE)アンカー
01主な機能Kernfähigkeiten#sec-01
02対象ユーザーと見つけやすさZielgruppen & Auffindbarkeit#sec-02
03代替手段との比較表Vergleichsmatrix gegenüber Alternativen#sec-03
04アーキテクチャとコンポーネント構成Architektur & Komponenten-Topologie#sec-04
05ヘッドレス検証ライフサイクルHeadless Verifikations-Lebenszyklus#sec-05
06ツール群と検証マトリックスWerkzeugpalette & Verifikations-Matrix#sec-06
07FBX 再インポートの詳細とスキーマFBX-Reimport im Detail & Schema#sec-07
08ビジュアル検証の詳細とスキーマVisuelle Prüfung im Detail & 4-Ansichten-Geometrie#sec-08
09汎用プリミティブAllgemeine Basis-Werkzeuge#sec-09
10CI/CD パイプライン統合CI/CD-Pipeline-Integration#sec-10
11ガバナンスとランタイム不変条件Governance & Laufzeit-Invarianten#sec-11
12セキュリティポリシーと実行の分離Sicherheitsrichtlinie & Prozessisolation#sec-12
13インストールと使い始め方Installation & Erste Schritte#sec-13
14設定と環境変数Konfiguration & Umgebungsvariablen#sec-14
15サードパーティライセンスとレベル 1 SBOMDrittanbieter-Lizenzen & Level 1 SBOM#sec-15
16ellmos-ai エコシステムと統合Geschwisterprojekte & ellmos-ai Ökosystem#sec-16
17LLM コンテキストインデックスと機械向けプロンプトLLM-Kontextindex & Maschinen-Prompts#sec-17
18ライセンスと法定免責事項(§ 521 BGB)Lizenz & Haftungsausschluss (§ 521 BGB)#sec-18

1. 主な機能

ゲームおよび3Dアセットのパイプライン向けのアセットQAツールです。エクスポートしたFBXをヘッドレスのBlenderに再インポートし、問題なく読み込めるかを検証します。メッシュ数、マテリアル数、必須の命名プレフィックスを自動でチェックし、目視確認の代わりに決定論的なJSON結果を返します。blender_verify_fbx_reimportは中核となる構造検証ツールで、blender_verify_visualはその視覚的な補完ツールです。前者はメッシュ数を数えて名前のプレフィックスを確認し、後者は4方向からレンダリングして、数だけでは分からない形状を測定します。blender_locateとblender_run_scriptは、どちらもこれらの基盤となる汎用プリミティブです。

アドオン不要。TCPポート不要。バックグラウンドデーモン不要。 このサーバーはBlenderに何もインストールせず、実行中のBlenderインスタンスから接続するためのソケットも開かず、Blenderを常駐させることもありません。呼び出しごとにblender --background --python <script.py>を起動し、タイムアウトで保護された制限時間内に終了するのを待って結果を返します。設計上、ヘッドレスかつステートレスです。アセットのダウンロードやテレメトリーの収集は行いません。

他のBlender MCP サーバーとの違い。 多くのBlender MCPプロジェクト(例:ahujasid/blender-mcp、公式のBlender Labs MCPサーバー)は、TCP/アドオンブリッジを介して実行中のBlender GUIを操作し、インタラクティブにシーンを編集します。これは、異なる信頼モデル(開いたソケット、インストール済みのアドオン、常駐プロセス)を伴う別の用途です。一方、このサーバーはCI形式の単発アセット検証を対象としています。パイプラインのステップとして実行し、合否を示すJSONを受け取ったら次に進みます。GUIをリアルタイムで操作する必要がある場合は、別途レビュー済みのBlender MCPアドオンをご利用ください(下記の安全性を参照)。

メモ

AI/LLM連携と機械可読コンテキスト:AIアシスタント(Claude、Codex、Gemini)は、llms.txtを読み込み、機械可読コンテキスト、検索フレーズ、ツールのドキュメントを参照できます。回帰テストスイートにより、プライバシー衛生と実行時メモリの安全性を確保しています。

ヒント

CIとアセットパイプラインの自動化:3Dアセットをソース管理にコミットする前の自動ゲートとして、blender_verify_fbx_reimportを使用してください。人手を介さずに、プレフィックスの欠落(例:SM_、M_)、予期しないメッシュ数、マテリアル割り当ての破損を検出します。


2. 対象ペルソナと意図の明確な検索性

[PERSONA-01] インディー/AAAゲームのテクニカルアーティスト、3DパイプラインTD
  • プロフィール: Unreal Engine、Unity、Godot、およびカスタムC++ゲームエンジン向けにFBX/GLTFアセットのパイプラインを管理するテクニカルアーティストです。
  • 課題: エクスポートした3Dアセットは、適用されていない回転(エンジン内で横倒しになる)、壊れたピボットオフセット、SM_/M_プレフィックスの欠落、未割り当てのマテリアルなどがあるまま、手動レビューをすり抜けることがよくあります。
  • 意図の明確な検索クエリ: blender fbx reimport verification mcp、blender headless asset qa gate、automated fbx naming convention check、detect unapplied rotation fbx blender。
  • 解決方法: BlenderのGUIを開かずに、単発の構造的な再インポート検証と、4方向からの視覚的な形状チェックを行います。
[PERSONA-02] CI/CD自動化・ビルド基盤エンジニア
  • プロフィール: GitHub Actions、GitLab CI、Jenkinsで自動アセット検証ゲートを担当するDevOpsおよびビルドエンジニアです。
  • 課題: 従来のBlender自動化ツールは、グラフィカルなアドオンのインストールや、インタラクティブなバックグラウンドソケットの実行が必要なため、ヘッドレスのコンテナ化されたランナーでは動作しません。
  • 意図の明確な検索クエリ: headless blender asset qa mcp server、github actions blender fbx qa gate、blender background script ci cd verification、blender mcp no add-on no tcp port。
  • 解決方法: ステートレスなblender --background実行により、実行時間が異常に延びた場合の厳格な15分のタイムアウト、8 KBに制限されたメモリ末尾、アドオン不要、決定論的なJSON終了コードを実現します。
[PERSONA-03] 自律型 AI エージェントエンジニア(Claude、Codex、Gemini)
  • プロフィール: プロシージャルな 3D 生成、アセット処理、ゲームのプロトタイピングに自律型 AI コーディングエージェントを導入する開発者です。
  • 課題: AI エージェントには、ソケットリーク、ゾンビプロセス、制御不能なメモリ消費を発生させずに、3D アセットを検査して検証する手段が必要です。
  • 利用意図の高い検索クエリ: mcp server fbx mesh material verification、ai agent blender 3d asset inspection、blender four-view rendering mcp、llm tool headless blender。
  • 解決方法: 包括的な llms.txt ドキュメント、堅牢な taskkill /T /F によるプロセスツリーの終了、フェイルクローズ方式の一時ファイルクリーンアップを備えた、ネイティブな Model Context Protocol(MCP)サーバーです。
[PERSONA-04] ゲームスタジオのエンタープライズコンプライアンスおよびセキュリティ担当者
  • プロフィール: 独自のゲーム IP と開発用ワークステーションを保護するセキュリティ担当者およびコンプライアンスマネージャーです。
  • 課題: サードパーティ製 DCC ツールは、ローカルネットワークのポートを開いたり、リモートテレメトリーサーバーに接続したり、管理者権限を要求したりすることがよくあります。
  • 利用意図の高い検索クエリ: offline blender mcp zero egress、air gapped 3d asset verification、unprivileged blender asset qa、zero copyleft mcp tool。
  • 解決方法: 厳格な RunAsInvoker による非昇格認証、オフラインでのゼロエグレス保証、ランタイムテレメトリーゼロ、コピーレフトライセンス比率 0% のレベル 1 SBOM を実現します。

3. 代替手段との10次元比較マトリックス

不変条件/次元[1] ellmos-blender-use-mcp[2] インタラクティブな Blender MCP(TCP アドオン)[3] アドホックな Python スクリプト[4] 大規模な DCC スイート(Maya / 3ds Max QA)[5] クラウド SaaS 3D チェッカー(Sketchfab)
INV-LOCAL-01: ネットワークとエアギャップ100% オフライン/外部送信ゼロ(ネットワーク呼び出し 0 回)localhost で TCP リスナーを開く必要ありローカルだが、ネットワークアクセスに制限なしローカルだが、ライセンスサーバーへの頻繁な問い合わせが発生リモート SaaS へのアップロードが必要(外部送信のリスク)
INV-HEADLESS-02: アドオンの負担アドオン不要(すぐに使えます)Blender アドオンのインストールが必要アドオン不要プロプライエタリなプラグインのインストールが必要Web ブラウザーまたは負荷の大きいクライアントへのアップロード
INV-SEC-03: 権限モデル権限不要の RunAsInvoker(ユーザーモード)ユーザーモードだが、開いたソケットが攻撃対象になる可能性ありスクリプトを無制限に実行管理者/サービスとしてのインストールSaaS クラウドのセキュリティ境界
INV-BOUND-04: メモリの上限設定テールバッファを厳密に制限(最大 8 KB~50 KB)GUI セッションのメモリに上限なしコンソール出力のメモリに上限なしワークステーションのメモリ使用量に上限なしクラウド処理のクォータ
INV-INTEG-05: 構造化 JSON による QA決定論的で機械可読な JSONテキストプロンプト/チャット応答構造化されていない標準出力への出力XML/独自形式のログレポートWeb ダッシュボードでの可視化
INV-VISUAL-06: 4方向のジオメトリ確認標準化された4方向レンダリングパイプラインGUI で手動で回転して目視確認カスタムカメラスクリプトが必要ビューポートの手動操作単一の WebGL モデルビューアー
INV-CLEAN-07: 一時ファイルのクリーンアップフェイルクローズ方式の一時ファイル自動削除シーンの状態がメモリ上に残存.py/.blend の一時ファイルが残存大規模なプロジェクト一時ディレクトリリモートクラウドストレージにデータが保持される
INV-CROSS-08: クロスプラットフォームWindows、Linux、macOS で同等に動作GUI デスクトップのサポートに依存OS に依存するパス処理OS に制約あり(主に Windows)プラットフォームに依存しないブラウザー
INV-SYNC-09: ロックと同期への対策複数ホストのロックと同期に対応ファイルロックの衝突が発生する可能性ありロックを認識しない独自形式の大規模なファイルロック複数デバイス間での Git 運用に非対応
INV-SLA-10: セキュリティ SLA48時間以内の受付/5日以内のトリアージを約束コミュニティによる可能な範囲での対応(SLA なし)正式なサポートなしエンタープライズサポート契約が必要一般的な SaaS チケットキュー

4. アーキテクチャとコンポーネントの構成

ASCII による4方向アーキテクチャ構成図
+--------------------------------------------------------------------------------------------------+
|                               ELLMOS BLENDER USE MCP ARCHITECTURAL TOPOLOGY                      |
+--------------------------------------------------------------------------------------------------+
| [VIEW 1: CALLER RUNTIMES & AGENT CLIENTS]                                                        |
|   * Autonomous Agents   : Claude Code, OpenAI Codex, Antigravity / Gemini, Kimi, Cursor          |
|   * Transport Protocols : Model Context Protocol (MCP stdio), JSON-RPC 2.0 framing               |
|   * Automation Entry    : npx -y ellmos-blender-use-mcp, CI/CD runners, local development shells |
|   * Tool Surface        : blender_verify_fbx_reimport, blender_verify_visual,                      |
|                           blender_run_script, blender_locate                                     |
+--------------------------------------------------------------------------------------------------+
|                                                |                                                 |
|                                                v                                                 |
+--------------------------------------------------------------------------------------------------+
| [VIEW 2: BLENDER USE MCP CORE ENGINE & DISCOVERY ORCHESTRATOR]                                   |
|   * Protocol Dispatch   : ESM stdio router with Zod schema validation & parameter checking       |
|   * Executable Resolver : Windows Registry / BLENDER_EXE / Program Files / PATH auto-discovery   |
|   * Bounded Supervision : 8 KB default tail buffer, 50 KB ceiling, hard child process kill tree  |
|   * Script Synthesizer  : Dynamic ephemeral Python QA script generation with fail-closed purge   |
+--------------------------------------------------------------------------------------------------+
|                                                |                                                 |
|                                                v                                                 |
+--------------------------------------------------------------------------------------------------+
| [VIEW 3: RUNTIME PERSISTENCE, VISUAL ASSET REPORTS & EPHEMERAL SCRIPTS]                          |
|   * Structural QA       : Headless FBX import, mesh/empty enumeration, material slot assignment  |
|   * Visual 4-View Engine: Orthogonal front, side, top & perspective rendering pipeline           |
|   * Anomaly Detectors   : Unapplied rotation, floating meshes, displaced origin/pivot, residuals |
|   * Deterministic Output: JSON test receipts with structured metrics, pass/fail status & counts  |
+--------------------------------------------------------------------------------------------------+
|                                                |                                                 |
|                                                v                                                 |
+--------------------------------------------------------------------------------------------------+
| [VIEW 4: AIR-GAP DEFENSE PERIMETER, RUNASINVOKER & ZERO-EGRESS]                                  |
|   * Security Model      : RunAsInvoker unprivileged execution (Zero administrative elevation)    |
|   * Network Isolation   : 100% Zero-Egress, zero telemetry, air-gapped offline operation         |
|   * Lifecycle Governance: Stateless execution (no resident daemon, no add-on mutation, no TCP)   |
|   * Supply Chain        : Level 1 SBOM, 100% permissive runtime (MIT/BSD), 48h Security SLA      |
+--------------------------------------------------------------------------------------------------+
コンポーネントのフロー図
graph TD
    subgraph Client ["AI Assistant & Client Environment"]
        AI["AI Agent (Claude / Codex / Gemini)"]
        Config["MCP Configuration (npx / node)"]
    end

    subgraph Server ["ellmos Blender Use MCP Server"]
        MCP["MCP Protocol Server (src/index.js)"]
        subgraph Tools ["Tool Handlers"]
            T1["blender_verify_fbx_reimport"]
            T2["blender_run_script"]
            T3["blender_locate"]
            T4["blender_verify_visual"]
        end
        Safety["Timeout & Tail Buffer Guard (8k chars)"]
    end

    subgraph Subprocess ["Headless Subprocess (Isolated)"]
        Exe["Blender Executable (blender --background)"]
        Python["Temp Python Verification Script"]
        FBX["Target FBX Asset File"]
        JSONOut["Deterministic JSON Result"]
    end

    AI -->|JSON-RPC Request| MCP
    MCP --> Tools
    T1 -->|Generates script & spawns| Exe
    T2 -->|Executes arbitrary python| Exe
    T3 -->|Locates binary| Exe
    T4 -->|Generates visual verification script & spawns| Exe
    Exe --> Python
    Python --> FBX
    FBX -->|Mesh / Material / Naming QA| JSONOut
    JSONOut --> Safety
    Safety -->|Bounded Response| AI

    style Client fill:#1e1e2e,stroke:#89b4fa,stroke-width:1px
    style Server fill:#181825,stroke:#cba6f7,stroke-width:1px
    style Subprocess fill:#11111b,stroke:#a6e3a1,stroke-width:1px

5. ヘッドレスによるアセット QA 検証ライフサイクル

sequenceDiagram
    autonumber
    actor Client as AI Assistant / CI Pipeline
    participant Server as ellmos Blender Use MCP
    participant Resolver as Blender Resolver
    participant Process as Headless Subprocess
    participant Python as Blender Python Engine
    participant FS as Local Filesystem (FBX)

    Client->>Server: Call blender_verify_fbx_reimport(fbxPath, requiredPrefixes)
    Server->>Resolver: Resolve Blender Executable (blender_locate / BLENDER_EXE / Registry / PATH)
    Resolver-->>Server: Return Validated Executable Path
    Server->>FS: Write Temp Python Verification Script
    Server->>Process: Spawn blender --background --python script (timeout-guarded)
    Process->>Python: Execute Verification Script
    Python->>FS: bpy.ops.import_scene.fbx(filepath=fbxPath)
    FS-->>Python: Parse Mesh Objects & Material Slots
    Python->>Python: Validate Naming Prefixes, Object Counts & Hierarchy
    Python->>FS: Write Output JSON Verification Result
    Process-->>Server: Process Exit (Exit Code 0 / Bounded Tail Buffer)
    Server->>FS: Read Result & Clean Up Temp Verification Script
    Server-->>Client: Deterministic JSON Result (meshCount, materialCount, missingPrefixes, ok)

6. ツールスイートと検証マトリックス

ツール目的主な出力メモリガード
blender_verify_fbx_reimport一時的な Blender 検証スクリプトを生成し、FBX をインポートして、メッシュ/マテリアル数と必須プレフィックスの不足を含む JSON 結果を書き込みます。JSON レポート8 KB のテールに制限
blender_verify_visualFBX の4方向のビューをレンダリングし、構造的な再インポートでは検出できないジオメトリ上の問題を確認します。対象は、未適用の回転、浮いているパーツ、モデル外のピボット、変換の残差、不要なエンプティです。PNG 4枚 + JSON8 KB のテールに制限
blender_run_scriptオプションの引数と上限付きの標準出力テールを指定して、blender --background --python <script.py> を実行します。スクリプトのテールテキスト最大 8 KB~50 KB
blender_locate明示的に指定されたパス、BLENDER_EXE、標準の Windows インストール先、または PATH から Blender の実行ファイルを解決します。解決されたパスサブプロセス不要

7. blender_verify_fbx_reimport の詳細とスキーマ

ヘッドレス Blender に FBX ファイルをインポートし、メッシュ数、エンプティ数、マテリアル数、マテリアルスロットの割り当て、および必須の名前プレフィックスを検証します。

パラメーター
パラメーター型必須デフォルト説明
fbxPathstringはい—検証する対象の FBX アセットファイルのパスです。
resultPathstringいいえ<fbxDir>/verify_reimport_result.json構造化された JSON 検証結果の書き込み先パスです。
requiredPrefixesstring[]いいえ[]メッシュまたはエンプティに必須の名前プレフィックスの一覧です(例:["SM_", "M_"])。
blenderPathstringいいえ自動検出Blender 実行ファイル(blender.exe / blender)のカスタムパスです。
timeoutMsnumberいいえ120000プロセス実行のタイムアウト(ミリ秒)です(最大:600000)。
呼び出し例
{
  "fbxPath": "assets/models/SM_Watchtower_01.fbx",
  "requiredPrefixes": ["SM_", "M_"]
}
決定的な出力スキーマ
{
  "ok": true,
  "blender": "C:\\Program Files\\Blender Foundation\\Blender 4.2\\blender.exe",
  "fbxPath": "C:\\projects\\game\\assets\\models\\SM_Watchtower_01.fbx",
  "resultPath": "C:\\projects\\game\\assets\\models\\verify_reimport_result.json",
  "exitCode": 0,
  "timedOut": false,
  "durationMs": 1820,
  "outputTruncated": false,
  "verification": {
    "ok": true,
    "fbx": "C:\\projects\\game\\assets\\models\\SM_Watchtower_01.fbx",
    "mesh_count": 3,
    "empty_count": 0,
    "material_count": 2,
    "materials": [
      "M_Stone_Brick",
      "M_Wood_Trim"
    ],
    "missing_prefixes": [],
    "script_free": true
  }
}

8. ビジュアル検証の詳細と4方向ジオメトリ

FBX の4方向のビューをレンダリングし、構造的な再インポートでは確認できないジオメトリをチェックします。

blender_verify_fbx_reimport はメッシュ数を数えて名前プレフィックスをチェックしますが、メッシュが横倒しになっている、パーツがアセンブリから離れて浮いている、ピボットがモデルの外側にある、といったことは判別できません。このツールなら判別でき、確認用のレンダリングも生成します。

{ "fbxPath": "kit.fbx", "outDir": "verify_visual", "expectHeight": "2.5,3.5" }
4方向の直交投影と失敗の検出
+---------------------------------------+---------------------------------------+
|              TOP VIEW                 |           PERSPECTIVE VIEW            |
|              (XY Plane)               |              (Isometric)              |
|                                       |                                       |
|   Detects: X/Y planar alignment,      |   Detects: Overall silhouette,        |
|   bounding box symmetry, footprint    |   complex assembly integration        |
+---------------------------------------+---------------------------------------+
|             FRONT VIEW                |               SIDE VIEW               |
|              (XZ Plane)               |              (YZ Plane)               |
|                                       |                                       |
|   Detects: Model height, Z-grounding, |   Detects: Depth errors, floating vs  |
|   upright orientation (lying down)    |   resting parts, pivot offset         |
+---------------------------------------+---------------------------------------+

検出する失敗の種類:未適用の回転、複数パーツのアセットにおける浮遊パーツ、バウンディングボックスの外側にあるピボット/原点、エクスポート時に残った変換、不要なエンプティ。

決定的な出力スキーマ
{
  "ok": true,
  "blender": "C:\\Program Files\\Blender Foundation\\Blender 4.2\\blender.exe",
  "fbxPath": "C:\\projects\\game\\kit.fbx",
  "outDir": "C:\\projects\\game\\verify_visual",
  "exitCode": 0,
  "timedOut": false,
  "durationMs": 3450,
  "outputTruncated": false,
  "verification": {
    "ok": true,
    "fails": [],
    "warns": [],
    "metrics": {
      "dimensions": [2.45, 1.82, 4.10],
      "center": [0.0, 0.0, 2.05],
      "pivotAtOrigin": true,
      "unappliedRotation": false
    }
  },
  "renders": {
    "view_front": "verify_visual/view_front.png",
    "view_side": "verify_visual/view_side.png",
    "view_top": "verify_visual/view_top.png",
    "view_perspective": "verify_visual/view_perspective.png"
  }
}

**4方向のビューを使う理由(1方向ではなく):**正面からのショットだけでは奥行きのエラーを見落とします。たとえば、浮いているか接地しているか、後ろにあるか手前にあるかは分かりません。実際に、チェーンのリンクが正面からは正しく接続されているように見えても、側面から見るとまったく接続されていないケースがありました。

このツールも、ここにある他のすべてのツールと同様、1回限りのヘッドレス実行です。アドオン、デーモン、ソケットは不要です。


9. 汎用プリミティブ(blender_locate と blender_run_script)

  • blender_locate:明示的な呼び出しパラメーター、環境変数 BLENDER_EXE、標準のインストールパス(新しいバージョンを優先)、システムの PATH を使って、Windows、Linux、macOS 上でアクティブな Blender 実行ファイルを特定します。
  • blender_run_script:任意の引数、タイムアウト制限、末尾バッファの強制切り詰め(デフォルト 8 KB、最大 50 KB)を指定して、blender --background --python <script.py> により任意のローカル Python スクリプトを実行します。

10. CI/CD パイプラインへの統合(GitHub Actions)

ヘッドレスのアセット QA を GitHub Actions のプルリクエストチェックに直接組み込み、壊れた FBX モデル、欠落したマテリアルスロット、未適用の回転、ずれたピボットがメインブランチに取り込まれるのを防ぎます。

name: 3D Asset QA Gate

on:
  pull_request:
    paths:
      - "assets/**/*.fbx"

jobs:
  verify-assets:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout Repository
        uses: actions/checkout@v4

      - name: Install Blender & Node.js
        run: |
          sudo snap install blender --classic
          sudo apt-get install -y nodejs npm

      - name: Run Headless Asset Verification
        run: |
          npx -y ellmos-blender-use-mcp --version
          # Run structural FBX QA and 4-view visual verification
          blender --background --factory-startup --python node_modules/ellmos-blender-use-mcp/scripts/verify_asset_visual.py -- \
            --fbx assets/models/SM_HeroAsset.fbx \
            --out build/asset-qa/ \
            --json

11. ガバナンスとランタイム不変条件

サーバーは、プライバシー、安全性、プロセス分離、監査可能性を保証するため、10 個のアーキテクチャおよびランタイム不変条件を適用します。

ID不変条件保証と実装の詳細
INV-LOCAL-01100% ローカル優先・ネットワークへの送信ゼロ外部へのネットワークリクエスト、外部テレメトリー、リモート API 呼び出しは一切ありません。ホストマシン上で完全にエアギャップ状態で動作します。
INV-HEADLESS-02ステートレスでアドオン不要のヘッドレス実行Blender アドオンのインストール、TCP ソケットのオープンやデーモンのリスナー、ホストの Blender ユーザーディレクトリの変更は一切ありません。
INV-SEC-03権限昇格なし・非特権の RunAsInvoker 実行非特権ユーザーモードの権限(RunAsInvoker)でのみ動作します。管理者権限への昇格を要求したり、必要としたりすることはありません。
INV-BOUND-04厳格なタイムアウトとテールバッファの制限すべての実行にタイムアウトが設定されます。標準出力と標準エラーのストリームは、メモリの暴走を防ぐため、サイズを制限したテールバッファ(デフォルト 8 KB、最大 50 KB)に取り込まれます。
INV-INTEG-05決定論的な JSON と証拠の完全性正確なメッシュ数、マテリアルスロット、命名プレフィックス、ジオメトリ指標を含む、検証可能で機械可読な JSON レポートを生成します。
INV-VISUAL-064 方向からの多角度ビジュアル検証奥行きを考慮しないチェックでは見逃されるジオメトリの不具合(浮遊パーツ、未適用の回転)を検出するため、直交する正面、側面、上面、および透視投影のレンダーを生成します。
INV-CLEAN-07フェイルクローズの一時ステージングとスクリプトのクリーンアップ一時的な Python 検証スクリプトとステージングファイルは、完了時または失敗時にファイルシステムから必ず削除されます。
INV-CROSS-08クロスプラットフォームの OS 間同等性ホスト依存のハードコードなしで、Windows、Linux、macOS 全体にわたり、一貫した実行と自動検出を行います。
INV-SYNC-09クラウド同期と複数ホストのロック規律クラウド同期の競合(*-conflict-*、*-CONFLIT-*)に対する耐性があり、標準的なマルチエージェントロックに準拠しています。
INV-SLA-1048 時間以内のセキュリティ対応と 5 営業日以内のトリアージ SLA公式の調整窓口を通じて、脆弱性の報告に 48 時間以内に正式に回答し、5 営業日以内にトリアージを行うことを約束します。

12. セキュリティポリシーと RunAsInvoker

  • ローカル Python 実行:このサーバーは Blender 内でローカルの Python を実行します。信頼できるスクリプトとアセットパスのみを使用してください。
  • RunAsInvoker による権限昇格なし:標準の非特権ユーザーアカウントでのみ実行されます。管理者権限や root 権限は必要ありません。
  • プロセスのクリーンアップ:サブプロセスは監視されます。タイムアウト時には、Windows プロセスを taskkill /pid <PID> /T /F で適切に終了します。
  • オフラインの保証:リモートのアセットマーケットプレイス、外部 API、使用状況テレメトリーは一切関与しません。
  • 脆弱性の開示:公式の調整窓口と、拘束力のある 48 時間以内の対応 SLA については、SECURITY.md をご確認ください。

13. インストールと使い始め方

オプション 1:npx で実行(インストール不要)
{
  "mcpServers": {
    "blender-use": {
      "command": "npx",
      "args": ["-y", "ellmos-blender-use-mcp"]
    }
  }
}
オプション 2:ソースからインストール
git clone https://github.com/ellmos-ai/ellmos-blender-use-mcp.git
cd ellmos-blender-use-mcp
npm install
npm run build
node src/index.js

ローカルにチェックアウトした場合は、代わりに command/args をクローンした src/index.js に指定してください。

{
  "mcpServers": {
    "blender-use": {
      "command": "node",
      "args": ["<path-to-repo>/src/index.js"]
    }
  }
}

14. 設定と環境

  • BLENDER_EXE — Blender 実行ファイルへの任意のパスです。指定しない場合、ツールは明示的に指定された blenderPath 引数、次に BLENDER_EXE、続いて Windows の標準的な Blender インストール先(%ProgramFiles%\Blender Foundation\Blender <version>\blender.exe と、同等の 32 ビットおよびユーザーごとのルート。新しいバージョンから順に検索)、最後に PATH の順で試します。Linux および macOS では、BLENDER_EXE の次に PATH を直接検索します。
  • すべてのツールでは、呼び出しごとに明示的な blenderPath 引数も指定できます。この引数は BLENDER_EXE より優先されます。
  • プロセス出力は末尾部分のみ保持されます。blender_run_script の既定値は 8,000 文字(最大 50,000 文字まで設定可能)で、FBX 検証では 8,000 文字を保持します。前半の出力が破棄された場合、レスポンスに outputTruncated: true と表示されるため、冗長な Blender スクリプトによって MCP プロセスのメモリ使用量が際限なく増えることはありません。

15. サードパーティライセンスとレベル 1 SBOM

すべての本番環境用ランタイム依存関係は、コピーレフト条項を含まない、寛容なオープンソースライセンス(MIT および BSD-2-Clause)の下で配布されています。

  • @modelcontextprotocol/sdk(MIT)
  • update-notifier(BSD-2-Clause)
  • zod(MIT)

依存関係の完全な一覧、Invariant Cross-Reference Matrix、および先行技術の隔離分析については、THIRD_PARTY_LICENSES.md と、関連するプレーンテキスト形式の一覧 THIRD_PARTY_LICENSES.txt を参照してください。


16. 関連プロジェクトと ellmos-ai エコシステム

この MCP サーバーは、AI インフラストラクチャ、MCP サーバー、インテリジェントツールを提供する ellmos-ai エコシステムの一部です。

MCP サーバーファミリー
サーバーツール数主な機能npm
FileCommander46ファイルシステム、プロセス管理、対話型セッション、クラウドロックに安全な操作ellmos-filecommander-mcp
CodeCommander22コード分析、JSON 修復、インポート、差分、正規表現ellmos-codecommander-mcp
Clatcher12ファイル修復、形式変換、バッチ処理ellmos-clatcher-mcp
n8n Manager18AI アシスタントによる n8n ワークフロー管理n8n-manager-mcp
ControlCenter20MCP スタックの検出、プロファイル管理、コントロールプレーンellmos-controlcenter-mcp
Homebase45ローカル優先の LLM メモリ、ナレッジ、状態、ルーティング、スウォームオーケストレーションellmos-homebase-mcp(アルファ版)
ServerCommander8サーバー運用:ヘルスチェック、ログ分析、デプロイのドライラン、メールの診断ellmos-servercommander-mcp(アルファ版)
Blender Use4ヘッドレス Blender アセット QA:FBX の構造的な再インポートチェックと 4 視点による視覚的検証ellmos-blender-use-mcp(アルファ版)
Open Compute10モデル非依存のコンピューター操作:キャプチャ、安全性ゲート付きアクション、Windows UIAopen-compute-mcp(アルファ版)
AI インフラストラクチャと開発者ツール
プロジェクト説明
workflowhookerエージェント型ワークフロー向けの透過的なコマンドインターセプターと安全なサンドボックス
system-explorerシステムの検査、MCP オーケストレーション、フリートの内部調査を行うランタイム
memoryhookerAI エージェント向けの高性能なエピソード記憶インターセプター
policy-registryマルチエージェントフレームワーク向けのポリシー配布およびコンプライアンスエンジン
ellmos-delegation-authority信頼境界の検証と暗号化トークンの委任機関
sqlite-transit-syncスナップショット分離に対応したトランザクショナルな SQLite のトランジットレプリケーション
BACHLLM エージェント向けのローカルファーストなテキストベース OS — 113 以上のハンドラー、550 以上のツール、SQLite メモリ
open-computeOpen Compute MCP を支える、モデルに依存しないコンピューター操作のコア
clutch自動ルーティングと予算追跡に対応した、プロバイダーに依存しない LLM オーケストレーション
rinnsal軽量なエージェントメモリ、コネクター、自動化インフラストラクチャ
ellmos-stackセルフホスト可能な AI 研究スタック(Ollama + n8n + Rinnsal + KnowledgeDigest)
MarbleRunClaude Code 向けの自律型エージェントチェーンフレームワーク
gardenerデータベース駆動型のミニマリストな LLM OS プロトタイプ(4 つの関数、1 つのテーブル)
ellmos-testsLLM オペレーティングシステム向けのテストフレームワーク(7 つの次元)
デスクトップソフトウェアスイートと関連ツール

パートナー組織の open-bricks は、AI ネイティブなデスクトップアプリケーションと開発者向けユーティリティをまとめています。AI 時代に向けて構築された、モダンなオープンソースソフトウェアスイートです。

プロジェクトエコシステム説明
ProFilerfile-bricks高度なファイル管理、詳細な検査、一括処理パイプラインの作業環境
DokuZendoc-bricks統合ドキュメントコンバーター、Markdown フォーマッター、ドキュメントハブ
PDFtoPDFocrdoc-bricks高精度 OCR プロセッサーと検索可能な PDF パイプライン
FormularErstellendoc-bricks宣言型フォームジェネレーターと PDF スキーマコンパイラー
MediaBrainfile-bricksAI 支援によるメディアの分類、タグ付け、アセット管理
TextBraindoc-bricksテキスト分析、要約、ローカル言語インテリジェンスのスイート
knowledgedigestopen-bricksナレッジの抽出、セマンティッククラスタリング、統合エンジン
DevCenterdev-bricks開発環境のオーケストレーションとマルチエージェント管理コックピット
CodeBoxdev-bricks安全な実行サンドボックスと分離されたコードランナーランタイム
BattleStageentertain-and-moreアセットパイプラインの自動検証機能を備えた、モジュール式の戦術ゲームアリーナ

17. LLM コンテキストインデックス(llms.txt)

AI アシスタントおよび LLM ツール向けに、llms.txt では、機械可読なアーキテクチャドキュメント、ツールの説明、検索フレーズ、実行時の不変条件を提供しています。


18. ライセンスおよび法定免責事項(§ 521 BGB)

ライセンスおよび著作権表示

MIT ライセンスの下で配布されています。著作権および著作権表示の詳細については、LICENSE および NOTICE をご覧ください。

ドイツ法に基づく免責事項(§ 521 BGB 好意提供)

このオープンソースパッケージは、対価を伴わず無償で提供されています(好意提供)。ドイツの法律(§ 521 BGB)に基づき、品質および権原の瑕疵に対する責任は、故意および重過失の場合に厳格に限定されます。

セキュリティ対応への取り組み

セキュリティ脆弱性は、拘束力のあるセキュリティ SLA に基づき、48 時間以内にトリアージされます。協調的な情報開示のガイドラインについては、SECURITY.md をご覧ください。

コメント

MCP は初めてですか?

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

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