Ottogeo — CAD MCP Server について
Ottogeoは、STEP CADファイルの測定や改訂差分の確認を行う、エンジニア向けのローカルMCPサーバーです。Open CASCADEでB-rep形状から値を算出し、結果をモデルのエンティティと改訂ハッシュに紐付けます。
主な機能
- 01寸法、体積、面積、構造の検査
- 02面、エッジ、頂点、ボディの検索
- 03厚さ、クリアランス、抜き勾配、断面の測定
- 04宣言寸法と公差の読み取り
- 05STEP改訂間の形状とトポロジー比較
活用シーン
- 01部品の全体寸法と体積の確認
- 02穴と隣接壁のクリアランス測定
- 03抜き勾配と壁厚の確認
- 042つのCAD改訂の比較
MCP 対応
MCPサーバーとして、CAD検査、エンティティ検索、測定、PMIの記述、改訂比較のツールをMCPクライアントに提供します。stdio経由でローカル実行し、パス指定でSTEPファイルを読み取ります。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Ottogeo — CAD MCP サーバー
あらゆる AI アシスタントが実際の CAD ジオメトリを測定できるようにします。このサーバーは Open CASCADE カーネルで STEP ファイルを開き、エンジニアが実際に尋ねる質問に答えます。全体の寸法や体積、穴やボスの直径、肉厚、クリアランス、抜き勾配、断面、2 つのリビジョン間の変更点を、スクリーンショットから推定するのではなく、モデル自身の B-rep から計算した数値で示します。

クイックスタート
サーバーを MCP クライアントに追加し、アシスタントに STEP ファイルを指定します。
{
"mcpServers": {
"cad": {
"command": "npx",
"args": ["-y", "cad-mcp-server"]
}
}
}
Claude Desktop、Cursor、VS Code など、あらゆる MCP クライアントで動作します。
部品について何でも質問できます
- 「この部品の全体寸法と体積を教えてください。」
- 「円筒面を見つけて、それぞれの直径と軸を一覧表示してください。」
- 「これらの面の肉厚を測定してください。」
- 「この穴と最も近い壁の最小距離はいくつですか?」
- 「+Z 方向を基準に抜き勾配を測定し、抜き勾配が負の面を一覧表示してください。」
- 「X = 40 の位置でこのボディの断面を切ってください。」
- 「リビジョン A とリビジョン B の間で何が変わりましたか?」
DFM スタイルのレビュー用プロンプトなど、その他の例については docs/EXAMPLE_PROMPTS.mdをご覧ください。
ツール
| ツール | 戻り値 |
|---|---|
inspect | バウンディングボックスの寸法、体積、表面積、ボディとアセンブリの構造、B-rep の健全性、リビジョンに紐づく参照。 |
find_entities | 面、エッジ、頂点、ボディ。面の種類、半径、軸、面積で絞り込めます。 |
measure | 面間の距離、肉厚、抜き勾配、レイキャスト、レイグリッド、点解析、平面断面、エッジの連続性。 |
describe_pmi | 宣言された寸法(公差付きの公称値または上下限)、幾何公差(値、許容域、実体公差記号、データム)、データムと、それぞれが適用されるエンティティ ID。 |
diff | 2 つの STEP リビジョン間の寸法、体積、面積、トポロジーの差分、宣言された PMI の数、解析された STEP メタデータ。 |
測定の種類は distance、thickness、draft、ray、ray_grid、
point_analysis、section、continuity です。長さはファイルで
宣言された単位で返され、すべての結果に単位が表示されるため、インチ単位のモデルはインチのままで、手動で変換する必要はありません。角度の単位は度です。
数値の信頼性
- 推測ではなく、Open CASCADE による計算です。 同じファイルと同じクエリであれば、毎回同じ数値が返されます。
- リビジョンに紐付けられ、自己検証されます。 各結果には、対象のエンティティ ID と、その基となった SHA-256 リビジョンが含まれます。セッション中にファイルが変更されると古い ID は拒否されるため、誤ったジオメトリに回答が紐付くことはありません。
- モデルに記載されたコールアウトを読み取ります。
describe_pmiは、ファイルで宣言された寸法、幾何公差、データムを、それぞれの適用対象となるエンティティに紐付けて報告するため、宣言された要件をジオメトリと照合できます。 - ローカルで処理され、プライバシーが保護されます。 stdio 経由で動作し、パスを指定してファイルを読み取ります。読み取り専用で、CAD データをアップロードしたり書き込んだりすることはありません。
要件
- Node.js 26+
- Windows x64、macOS ARM64(Apple Silicon)、または Linux x64
- SolidWorks、Fusion 360、Onshape、FreeCAD、CATIA、その他の CAD システムからエクスポートされた STEP ファイル
よくある質問
CAD ソフトウェアのインストールは必要ですか? いいえ。STEP ファイルを直接読み取るため、CAD アプリケーションやライセンスがないマシンでも動作します。
ファイルがマシンの外部に送信されますか? いいえ。サーバーはローカルで stdio 経由で動作し、パスを指定してファイルを読み取ります。読み取り専用で、CAD データに書き込むことはありません。
スクリーンショットを見せてアシスタントに尋ねる場合と何が違いますか? Open CASCADE がモデルの B-rep ジオメトリから測定値を計算するため、同じファイルとクエリであれば同じ数値が返されます。各結果には、対象のエンティティ ID と、その基となったリビジョンも含まれます。
開発
ソースのセットアップ、チェック、パッケージング、リリースについては、 docs/DEVELOPMENT.md をご覧ください。 サーバーは Windows x64、macOS ARM64、Linux x64 を対象とし、固定された OCCT リビジョンからネイティブサイドカーをビルドします。
パッケージング
npm pack は最初にビルドを行い、コンパイル済みサーバー、ネイティブサイドカー、この README、サードパーティのライセンス表記を含めます。テストとソースマップは除外されます。tarball をインストールし、互換性のある MCP クライアントで cad-mcp-server 実行ファイルを確認してください。
ドキュメント
ライセンス
MIT。サードパーティのライセンス:THIRD_PARTY_NOTICES.md。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。