月: 2026年9月

Claude CodeでRevitを動かす(MCP連携)

CLAUDE CODE / REVIT 2027 / MCP

AI に Revit でモデリングさせる

Claude Code と MCP サーバーで、通り芯の柱から鉄骨階段まで

AI プロンプトに簡単な指示を書くだけで、開いている Revit のモデルに AI が直接作図する。——そんな環境を作ってみました。使ったのは Claude Code と、AI が外部ソフトを操作するための MCP(Model Context Protocol)です。接続の設定から、扉・窓・階段まで入った簡単なモデリングができるところまでを紹介します。

前回の SketchUp に続いて、今回は BIM ソフトの Revit とのAI連携です。結論から言うと、接続は 30 分ほどで済み、モデリングはチャットだけで進みました。ただし Revit は SketchUp よりも「部品の種類」が多く、ライブラリに無い建具は AI がその場で部品(ファミリ)を作ることになりました。うまくいったところも、つまずいたところも、そのまま書きます。

動画(8 分)── 接続からモデリングまでの流れ

POINT 01

会話でモデリングする

言葉で伝えるだけで、柱・壁・部屋・扉・窓・階段が Revit のモデルに入ります。寸法や配置はこちらが決め、AI が座標に直します。

POINT 02

無い部品は、AI が作る

「スリット窓付きの親子扉」も「6 連窓」も標準ライブラリにはありません。AI は既存の部品を複製して加工し、新しいファミリとして保存してから配置しました。

POINT 03

数値と画像で確かめる

作図のたびに、AI は座標・体積・面積を読み返し、平面図と 3D の画像を撮って見比べてから報告します。「できました」の前に確認が入ります。

今回試した内容

  • 目的:Claude Code から、デスクトップ版の Revit 2027 を直接操作できるようにする
  • 課題:空のプロジェクトに、7m グリッドの柱 36 本、外壁と間仕切壁、部屋 2 室、親子扉 2 か所、6 連窓 20 か所、折り返し階段を順に入れる
  • 環境:Windows 11 / Revit 2027.3(.NET 10)/ Claude Code(VS Code 拡張)
  • 使用モデル:Fable 5.1 ※ 2026 年 9 月時点
Revit に作図されたモデルの 3D ビュー。外壁に 6 連窓が並び、中央にコアの壁と親子扉、内部に柱が立つ
できあがったモデルの 3D ビュー(Revit の既定の 3D ビューを AI が撮影したもの)。35m 角の外壁に 6 連窓が 20 か所、中央に間仕切壁で囲ったコア、その中に鉄骨の折り返し階段が入っています。

AI と Revit のあいだに立つ「MCP」

SketchUp のときと同じで、Claude Code は Revit の画面を見ることも、直接触ることもできません。そこで、Revit の側にアドイン(Revit の中で動くプラグイン)を入れ、Claude Code の側に MCP サーバー(AI の命令をアドインへ中継する小さなプログラム)を登録します。命令は次の経路で届きます。

命令はどう届くのかボタンで、AI が使った道具を切り替えられます
AI(Claude Code) 中継(MCP サーバー) Revit のプロセス モデル(要素) 命令と返事
使った道具

道具ごとの、送るものと返ってくるもの

道具の名前
送るもの
返ってくるもの
人の操作

SketchUp のときは Ruby のコードを流し込みましたが、Revit では C# のコードを流し込む道具が要になりました。MCP サーバーには「壁を作る」「部屋を作る」のような専用の道具も 40 個ほどありますが、柱の高さの指定、部屋の面積算定の基準、扉の開き方向といった細かい注文は、専用の道具では手が届きません。Claude Code は早い段階で「C# を直接書くほうが確実」と判断し、以後はほぼすべてこの道具で作図しました。

作った要素は、手で描いたものと同じです

命令は Revit の中で動くアドインに届き、アドインが Revit 自身の機能(Revit API)で要素を作ります。できた柱や壁は普通の要素で、プロパティを開けば寸法や拘束が見えますし、1 回の指示は 1 回の「元に戻す」で取り消せるように、AI がまとめてくれます。

導入の手順 ── 検討から接続の確認まで

最初に「Revit MCP を使って Revit と接続してください」と頼みました。Claude Code が Web を調べて出してきた候補は 4 つです。この PC には Node.js が入っていないので、追加の実行環境が要らないものを選びました。

候補性格判断
bimwright/rvt-mcp自己完結した .NET の実行ファイル。Revit 2022 から 2027 に対応。インストーラー付き採用(Node.js 不要、2027 対応)
Thestreetarckitect/revit-2027-mcp上の再配布版。2027 専用本家で足りるので見送り
rui-branco/revit-mcpNode.js で動く。初回起動時にアドインが自動で入るNode.js の導入が要るので見送り
Demolinator/revit-mcp-pluginpyRevit(Python)の上で動くpyRevit の 2027 対応版が要るので見送り

採用したのは、いずれも個人や小さなチームが公開している非公式のツールです(後の「気をつけること」で触れます)。導入の流れは次のとおりで、Claude Code が自分でやったのが 1・4・6、私が手で行ったのが 2・3・5 です。

  1. 配布ファイルを取得して検証するClaude Code が GitHub から ZIP を取得し、同梱の一覧表と全ファイルのハッシュ値を照合。改ざんや欠けがないことを確かめてから、実行用のバッチを用意しました。
  2. インストーラーを実行する(手作業)用意されたバッチをダブルクリック。アドインが Revit のアドインフォルダーへ、MCP サーバーがユーザーフォルダーへ入ります。管理者権限は不要でした。
  3. Claude Code の設定ファイルに追記する(手作業)作業フォルダーの .mcp.json に、MCP サーバーの実行ファイルの場所を 4 行足します。AI が書こうとしたところ、安全機能に止められたので私が追記しました。
  4. Revit を再起動し、アドインを許可する(手作業)初回だけ「署名のないアドイン」の警告が出ます。「常にロード」を選びます。
  5. Claude Code を再起動する(手作業).mcp.json は起動時に読まれます。再起動すると rvt-mcp という名前の道具一式が見えるようになります。
  6. 接続を確かめるAI が「接続先を探す」「モデルを読む」を実行。Revit 2027 が見つかり、開いていたプロジェクトの要素数(3,725 個。テンプレート付属の設定類がほとんど)が返ってきました。
.mcp.json(作業フォルダー直下。SketchUp の設定と同居) { “mcpServers”: { “sketchup”: { …(前回のまま) }, “rvt-mcp”: { “command”: “C:\\Users\\(ユーザー名)\\AppData\\Local\\RvtMcp\\rvt\\server\\0.6.1\\rvt-mcp.exe”, “args”: [] } } }
ここで二度つまずきました

一度目は、AI が用意したバッチファイルです。中に日本語のコメントを書いたため文字化けし、インストーラーが一度も動きませんでした。バッチは英数字だけで書き直してもらい、二度目で通りました(Windows のバッチは日本語に弱い、という古典的な罠です)。

二度目は、私が手で足した .mcp.json のカンマ抜けです。ファイル全体が読めなくなり、Revit だけでなく SketchUp の接続まで切れました。これは AI が「JSON として読めない」と突き止めて直してくれました。設定ファイルを手で触ったら、AI に検証させるのが早いです。

柱から階段まで、順に頼む

接続が確認できたので、空のプロジェクト(レベル 1 = FL+500、レベル 2 = FL+4,000)に、実務の順番で要素を入れていきました。指示はすべて日本語のチャットです。下の図は、作図に使ったのと同じ座標で描いた平面図で、ボタンで工程を追いかけられます。

指示 1 回ごとに、平面図に何が足されたかボタンで工程を切り替えられます
作図済みの要素 この工程で足した要素 部屋名と面積
工程

工程ごとの、指示した内容と個数

要素の数(累計)
壁芯面積(合計)
指示の回数
人の作図操作

1. 通り芯と柱 ── 36 本を 1 回の指示で

CLAUDE CODE への指示

プロジェクト 1 の平面図:レベル 1 に柱(意匠柱)を配置してください。サイズは 700 × 700、高さ 4m、X 方向 Y 方向とも 7m のグリッドに 5 スパンずつ配置してください。

Claude Code はまず、プロジェクトに入っている柱のファミリ(日本語テンプレートの「角柱」)を調べ、600 角のタイプを複製して 700 角を作りました。そのうえで通り芯 X1 から X6・Y1 から Y6 を引き、交点 36 か所に柱を置き、上端をレベル 1 から 4,000 上に設定——ここまでを 1 つの C# コードにまとめて 1 回で実行しました。返ってきたのは柱の ID と、1 本目の実測値(700 × 700 × 4,000、下端 500)です。

通り芯の記号は、左と下に

最初にできた通り芯は、記号(丸囲みの X1 や Y1)が右と上に付いていました。「基本は左側と下側」と伝えると、平面図・立面図のすべてで付け替え、「今後、断面図を描くときも同様に」という決まりとして覚えました。次の作業からは言わなくても左と下になります。

2. 外壁と、コアの壁

CLAUDE CODE への指示

外周部に壁厚 200 の壁を柱と同じ高さで配置してください。柱の外面合わせでお願いします。

レベル 1 の X2 から X5、Y3 から Y4 の範囲を壁で囲ってください。壁厚は 120 でレベル 2 まで四周立ち上げてください。

「柱の外面合わせ」は、柱幅 700 の半分 350 から壁厚の半分 100 を引いた 250 だけ通り芯の外側に壁芯を置く、と AI が計算します。作図後に 4 面の外面座標が柱の外面と一致していることを数値で確かめ、平面図と 3D の画像を撮って報告してきました。コアの壁は指示どおりレベル 2 に拘束され、柱(上端 4,500)より 500 低く納まっています。

3. 部屋 ── 壁芯面積で 147.00 と 1113.25

CLAUDE CODE への指示

今回作成した壁の内側を「中央コア」、その周りを「事務室」とする「部屋」を作成し、室名を記載してください。また、名称の下にはそれぞれの壁芯面積を平方メートル単位で記載してください。

ここで AI が自分で気づいて直したことが 2 つあります。面積算定の基準が「壁コア芯」になっていたので「壁芯」に変えたことと、柱が既定で部屋の境界になっていたので、36 本すべての「部屋境界」を外したことです。柱を外さないと、柱の断面が面積から引かれて壁芯面積になりません。結果は中央コアが 147.00 m²(21m × 7m)、事務室が 1,113.25 m²(35.5m 角からコアを引いた値)で、計算値とぴったり一致しました。

Revit のレベル 1 平面図。通り芯 X1 から X6 と Y1 から Y6、柱、外壁の 6 連窓、中央のコアと親子扉、階段、部屋名と面積のタグ
レベル 1 の平面図(AI が撮影)。通り芯の記号は左と下、部屋のタグには室名と壁芯面積、コアの上下に親子扉、左上に階段が入っています。

4. 親子扉 ── 無いものは、ファミリから作る

CLAUDE CODE への指示

事務室と中央コア間にドアを 2 か所設置します。Y3、Y4 通りの X3 から X4 間に、W1200、H2100 の親子扉をつくってください。開き勝手は事務室側に開くようにしてください。その際に、扉の「親」側のほうは、スリット窓を付けてください。

テンプレートには「親子」というドアのファミリがありましたが、高さは 2,000 のタイプだけで、スリット窓はありません。Claude Code はファミリを開いて中身を調べ、親扉のパネルにスリット(幅 150 × 高さ 1,000)の穴を開けてガラスを入れ、「親子_スリット窓」という別名で保存してからプロジェクトに読み込み、2 か所に配置しました。開き方向は、閉じた扉のパネルがどちら側の壁面にあるかを座標で確かめて合わせています。

事務室側から見た親子扉。親扉の中央に縦長のスリット窓、その左に取っ手
事務室側から見た親子扉(AI が確認用に作った 3D ビュー)。親扉の中央にスリット窓が入っています。

ただし、ここは一筋縄ではいきませんでした。最初に作った穴はプログラムからでは開かず(ボイドが効かない)、輪郭に穴を含めて押し出す方法に変えて通りました。次に、作り直したパネルが元の子扉より 15mm から 30mm 外側にずれる問題が出ました。元の部品は「壁面」という基準面に拘束されて壁厚に追従するのに、新しい部品は固定座標で描かれていたためです。AI はこれを座標の比較から見つけ、新しいパネルも同じ基準面に紐付けて解決しました。ファミリの作法を AI が試行錯誤で学んでいくのを横で見ている格好でした。

5. 6 連窓 ── 20 か所を外向きに

CLAUDE CODE への指示

外壁に窓を設置します。4 面の各スパン間のすべてに設置してください。サイズは W6000、H1500 とし、窓の下端は FL+1000 とします。1000 間隔で方立を入れて 6 連窓とし、両サイドは縦滑り出し、その他は嵌め殺し窓としてください。

これも標準ライブラリにはない窓です。今度は「縦すべり窓」のファミリを元に、幅 6,000・高さ 1,500 に変え、方立を 5 本足し、両端のパネルにだけ縦滑り出しの記号(平面の開き線と、立面の二点鎖線)を描き直して「6 連窓_両端縦滑り出し」として保存しました。配置は 4 面 × 5 スパンの 20 か所。外壁の内外の向きが逆になっていたのを AI が見つけて直してから置いたので、すべて外向きに納まっています。

外側から見た 6 連窓。1000 ピッチの方立で 6 分割され、両端が縦滑り出し
外側から見た 6 連窓(AI が確認用に作った 3D ビュー)。幅 6,000 × 高さ 1,500、方立 5 本、窓下端 FL+1,000。
6 連窓の平面図。柱と柱のあいだに 6 分割の窓が入り、両端のパネルだけ外側へ開く縦滑り出しの開き線が描かれている
同じ窓の平面図。両端のパネルにだけ、外側へ開く縦滑り出しの開き線が入っています。中の 4 枚は嵌め殺しです。

6. 鉄骨階段 ── 失敗と復旧まで

CLAUDE CODE への指示

中央コア内の X2 通り側に、レベル 1 からレベル 2 に上がる鉄骨階段を作成してください。幅は 1400、蹴上は 180 以下、踏み面は 275、踊り場は 1400 の折り返し階段としてください。

階高 3,500 を 180 以下で割ると 20 段(蹴上 175)。AI はこの計算をして、経路 2 本と踊り場からなる折り返し階段を組み立てました。できあがりは蹴上 20 × 175、踏面 275、幅 1,400、踊り場は Y4 の壁に接して奥行 1,400。手摺も Revit の既定で両側に付いています。

コアの中の鉄骨折り返し階段。2 本の経路と踊り場、両側の手摺
コアの中の鉄骨折り返し階段(AI が確認用に作った 3D ビュー)。踊り場は Y4 の壁際、経路の間は 100mm。
ここで一度、モデルが操作できなくなりました

階段の作成は、Revit の API の中でも手順が厳しい部分です。1 回目の試みで階段が「編集モード」のまま固まり、以後 AI からの命令がすべて届かなくなりました。原因は、AI が確定処理に必要な部品を、Revit に同梱されている別の部品から借用したことでした(本来は自分で用意すべきものでした)。

復旧は AI 自身が行いました。Revit の画面を撮影してリボンの状態を読み、「元に戻す」の履歴を開いて失敗した編集 2 件を巻き戻し、続けて出た保存確認のダイアログを閉じる——ここまでを画面の座標を頼りに操作し、接続が戻ったところで、必要な部品を自前で生成する方法に切り替えて階段を作り直しました。失敗のあと、同じ失敗をしない手順を自分で組み直したのは印象に残りました。

要した時間

体感の目安です。接続はすぐでしたが、ライブラリに無い建具を作るところと、階段の失敗からの復旧に時間がかかりました。柱・壁・部屋のような標準の要素は、指示 1 回で数分です。

工程時間備考
接続方式の調査と比較約 10 分Web を調べて 4 候補を比較。採否は私が選択
導入(取得・検証・インストール・設定・再起動)約 30 分バッチの文字化けと、設定ファイルのカンマ抜けの手戻りを含む
通り芯と柱 36 本約 3 分タイプの複製から配置、画像確認まで指示 1 回
外壁と、コアの壁約 5 分指示 2 回。数値で外面の一致を確認
部屋 2 室と面積タグ約 10 分面積算定の基準と、柱の部屋境界の設定を含む
親子扉(ファミリの作成を含む)約 40 分穴が開かない、位置がずれる、の 2 つを解決
6 連窓 20 か所(ファミリの作成を含む)約 30 分途中で Revit の警告が出て一度止まった
鉄骨階段約 60 分1 回目の失敗と復旧、作り直しを含む

やってみて分かったこと

1. 人の手が要るのは、導入の 3 か所と「手を離すこと」

インストーラーの実行、設定ファイルへの追記、初回のアドイン許可。この 3 つは私が行いました。それに加えて、作業中に 1 つ覚えておくことがあります。Revit 側でコマンドを実行中だったり、ダイアログが開いていたりすると、AI の命令は届きません。私が「ドアを作成」コマンドを起動したまま席を離れたときは、AI がジャーナル(Revit の操作記録)からそれを突き止め、「Esc を 2 回押してください」と言ってきました。AI に任せている間は、Revit から手を離しておくのが正解です。

2. 標準に無い部品は、AI がその場で作る

SketchUp は形を作れば済みますが、Revit は「部品の種類」が仕様を決めます。スリット窓付きの親子扉も 6 連窓も、標準ライブラリにはありません。AI は既存のファミリを開き、部材を足したり描き直したりして、別名のファミリとして保存してから使うという、人がやるのと同じ手順を踏みました。ファミリ編集の作法(ボイドの効き方、基準面への拘束)は試行錯誤がありましたが、一度分かったことは記録され、次からは最初から正しい手順で作ります。

3. 数値で確かめてから、画像で確かめる

SketchUp のときは bbox_mm を読み返していました。Revit では読める数値が増えます。柱 1 本の寸法、壁の外面の座標、部屋の面積、扉のパネルがどちら側の壁面にあるか、親扉パネルの体積(穴が開いたぶん減っているか)。AI はまず数値で確かめ、それから平面図と 3D の画像を撮って見比べ、両方が合ってから報告してきます。「作ったつもりで、実は効いていなかった」を、この二段構えが何度も拾いました。

4. 失敗しても、戻ってこられる

階段で一度、モデルが操作できなくなりました。それでも AI は画面を読み、「元に戻す」で失敗した編集だけを巻き戻し、原因を避けた手順で作り直しました。やり直しの効く単位(1 指示 = 1 つの「元に戻す」)で作図しておくことが、この復旧を可能にしています。とはいえ、作業の前にファイルを保存しておくのは、人がやるときと同じで必須です。

5. 気をつけること

非公式のツールで、任意のコードが動く

今回の MCP サーバーとアドインは、Autodesk のサポート対象ではありません。また「C# を流し込む」道具は、Revit の中で任意のコードを実行できる強力なものです。通信はパソコンの内側(名前付きパイプ)に閉じていますが、道具の性格は理解しておく必要があります。

もう 1 つ、実際に起きたことを。作業中に私が別のサンプルファイルを開いていたところ、AI の命令が「いま前面にあるファイル」に届き、サンプル側に階段のタイプが作られてしまいました(すぐ削除しました)。AI はその後、ファイル名を指定して操作するように改めましたが、AI に任せる間は関係のないファイルを開かないのが安全です。

まとめ

AutoCAD、SketchUp に続いて、Revit も Claude Code の「道具」になりました。標準の要素は指示 1 回で数分、ライブラリに無い建具はファミリの作成から——人がやるのと同じ手順を、会話で頼めるようになっています。

今回は柱・壁・部屋・扉・窓・階段という基本の要素をひと通り試しただけですが、作業が面倒な連窓のファミリー作成や、慣れないと手が止まってしまう階段作成を、AI が難なくこなしてくれたことに大きな手応えを感じています。今後はこのモデルに手を加えて一つの事務所ビルを完成させ、法チェックや省エネ計算など様々な解析を AI にトライさせるつもりです。

作図に使った数値

この記事の平面図は、Revit に流し込んだ C# と同じ座標(通り芯 7,000 ピッチ、外壁芯 −250 と 35,250、コアの壁芯 7,000 から 28,000 と 14,000 から 21,000、扉の位置 17,500、窓の中心 3,500 から 7,000 ごと、階段の経路 7,760 と 9,260)から描いています。

Claude CodeでSketchUpを動かす(MCP連携)

CLAUDE CODE / SKETCHUP 2026 / MCP

AI に SketchUp を操作させる

Claude Code と MCP サーバーで、10m の立方体からコルビュジエのドミノまで

チャットで「南面の窓を奥行600の出窓にして」と頼むと、製作中の SketchUp のモデルをAIが加工してくれる——そんな環境を作ってみました。使ったのは Claude Code と、AI が外部ソフトを操作するための MCP(Model Context Protocol)です。接続方式の検討から、コルビュジエの「ドミノ」を作図するところまでを紹介します。

前回、 Claude Code には AutoCAD を動かしてボリューム出しをさせてみましたが、今回は 3D ソフトの SketchUp とのAI連携です。結論から言うと、設定は2時間程度で済み、作図そのものはチャットだけで進みました。設定の中で私が行ったのは2点だけです。

動画(7 分 40 秒)── 設定から作図までの流れ

POINT 01

会話で作図する

AIには言葉で伝えるだけです。AI が SketchUp の中に指示通りの図形を作り、できた図形を撮影で確認した上で返してくれます。

POINT 02

開いているモデルに、そのまま

ファイルの書き出しも取り込みもありません。いま画面に出ているモデルへ直接追加されるので、その場で見て、その場で直せます。

POINT 03

図版から寸法を読み取る

試しにつくらせたコルビジェの「ドミノ」では、AI が平面図(画像)を読み、柱の位置や階段の段数なども数値にして作図しました。寸法を伝えなくても、図版から判断できました。

今回試した内容

  • 目的:Claude Code から、デスクトップ版の SketchUp Pro を直接操作できるようにする
  • 課題 1:10m × 10m × 10m の立方体を入れる(接続の確認)
  • 課題 2:解説ページを読んで、コルビュジエのドミノ(1914 年の骨組みの提案)を再現する
  • 環境:Windows 11 / SketchUp Pro 2026 / Claude Code(VS Code 拡張)
  • 使用モデル:Sonnet 5(接続の設定と立方体)、Fable 5.1(ドミノの作図)※ 2026 年 9 月時点

AI と SketchUp のあいだに立つ「MCP」

まず、Claude Code は SketchUp の画面を見ることも、直接触ることもできません。「SketchUp を立ち上げていますが、認識できますか」と聞いたら、「できません」という返事でした。AI から見える世界は、ファイルとコマンドラインまでです。

そこで登場するのが MCP です。MCP は、AI が外のソフトを「道具」として使うための共通の約束事で、道具の側が「こういう命令を受け付けます」と宣言しておくと、AI はその範囲でだけ操作できます。今回は次の 4 つが一列に並びます。

SketchUp の側には拡張機能(Ruby で書かれたプラグイン)を入れ、パソコンの内側(127.0.0.1 の 9876 番ポート)で命令を待たせます。Claude Code の側には MCP サーバーという小さなプログラム(Python 製)を登録し、AI の命令を拡張機能へ中継させます。下の図で、命令がどう届くかを切り替えて見てください。

命令はどう届くのかボタンで、AI が使った道具を切り替えられます
AI(Claude Code) 中継(MCP サーバー) SketchUp のプロセス モデル(図形) 命令と返事
使った道具

道具ごとの、送るものと返ってくるもの

道具の名前
送るもの
返ってくるもの
人の操作

ポイントは、AI が SketchUp のファイルを書き換えているのではないということです。命令は SketchUp の中で動いている拡張機能に届き、拡張機能が SketchUp 自身の機能(Ruby API)で図形を作ります。だから作った図形は普通のグループで、手で描いたものと同じように動かせますし、UNDO で戻せます。

道具の一覧は、AI が自分で読みます

MCP サーバーは「モデルの情報を読む」「直方体・円柱・球を作る」「Ruby のコードを実行する」「画面のスクリーンショットを撮る」といった道具を宣言していて、Claude Code は接続したときにその一覧を受け取ります。こちらが道具の使い方を教える必要はありません。今回使った道具は上の図の 4 つです。

導入の手順 ── 検討から接続の確認まで

最初に「SketchUp をつなぎたい。どうすればよいか検討して」と頼みました。Claude Code が Web を調べて出してきた候補は 3 つです。表の「星」は、プログラムの公開サイト GitHub で利用者が付ける「お気に入り」の数で、どれだけ使われているかの目安になります。

候補性格判断
Trimble 公式の SketchUp コネクタclaude.ai(Web 版)で使う。自然言語からクラウドでモデルを生成し、.skp をダウンロードするいま開いているデスクトップ版と直接つながらないので見送り
mhyrr/sketchup-mcpいちばん知られている(星 409)。説明書が macOS 前提Windows での情報が乏しく見送り
zinin/sketchup-mcp2星は少ない(20)が開発が活発。ホストやポートの設定が明記され、Windows も意識されている採用

採用したのは、いずれも個人が公開している非公式のツールです。ここは後で「気をつけること」に書きます。導入の流れは次のとおりで、Claude Code が自分でやったのが 1・2・4、私が手で行ったのが 3・5 です。

  1. Python の実行環境 uv を入れるClaude Code が公式のインストールスクリプトを実行。MCP サーバーは uvx sketchup-mcp2 と打つだけで取得と起動が済みます。
  2. SketchUp の拡張機能(.rbz)をダウンロードする公開ページの最新版(署名済み)を Claude Code が取得。ファイルの場所を教えてくれます。
  3. SketchUp に拡張機能を入れ、サーバーを起動する(手作業)「ウィンドウ」の「拡張機能マネージャー」から .rbz を入れて再起動。「拡張機能」メニューの「MCP Server」で「Start Server」を押します。ここは AI からは操作できません。
  4. Claude Code に MCP サーバーを登録する作業フォルダーに .mcp.json を作ります(下の内容)。Claude Code が書きました。
  5. Claude Code を再起動する(手作業).mcp.json は起動時に読まれます。再起動すると sketchup という名前の道具一式が見えるようになります。
  6. 接続を確かめるAI が「バージョン確認」と「モデル情報の取得」を実行。Python 側と Ruby 側の版が合っていること(compatible: true)と、単位が mm であることが返ってきました。
.mcp.json(作業フォルダー直下) { “mcpServers”: { “sketchup”: { “command”: “uvx”, “args”: [“–system-certs”, “sketchup-mcp2”], “env”: { “SKETCHUP_MCP_HOST”: “127.0.0.1”, “SKETCHUP_MCP_PORT”: “9876”, “SKETCHUP_MCP_TIMEOUT”: “60”, “SKETCHUP_MCP_LOG_LEVEL”: “INFO” } } } }
ここで一度つまずきました

uvx が MCP サーバーを取りに行くところで、証明書のエラー(invalid peer certificate)が出ました。セキュリティソフトが通信を検査している環境では、uv が持っている証明書一覧では足りません。--system-certs を付けて Windows の証明書を使わせると通ります。上の設定に入っているのはそのためで、Claude Code が自分で原因を突き止めて設定に足しました。

もう 1 つ。SketchUp を再起動すると、拡張機能のサーバーは止まります。「接続が拒否されました」と言われたら、もう一度「Start Server」を押します。これも AI からはできないので、覚えておく必要があります。

まず、10m の立方体

接続が確認できたので、いちばん簡単な図形を頼みました。

CLAUDE CODE への指示

スケッチアップに、10m × 10m × 10m の立方体を入れて下さい。

Claude Code は「直方体を作る」道具を、種類 cube、寸法 [10000, 10000, 10000](mm)、位置 [0, 0, 0] で呼びました。返ってきたのは新しいグループの ID と、外接する直方体の範囲です。

返ってきた結果(抜粋) { “id”: 7952, “name”: “Cube_10m”, “type”: “group”, “bbox_mm”: { “min”: [0, 0, 0], “max”: [10000, 10000, 10000] } }
SketchUp に作図された 10m の立方体。手前に人物の添景があり、大きさの比較になっている
作図直後の SketchUp。原点に 10m × 10m × 10m の立方体ができています。左下の人物(SketchUp 標準の添景)と比べると大きさが分かります。

この bbox_mm が効いています。AI は画面を見なくても、この数字で「10m の立方体が原点にできた」と確かめられるからです。AutoCAD のときと同じで、作図した結果を自分で読み返す手段があると、間違いがその場で分かります。

コルビュジエのドミノを作図する

次は少し実務に寄せて、ル・コルビュジエが 1914 年に提案した「ドミノ・システム」を作らせました。柱とスラブと階段だけの骨組みで、壁から自由になった近代建築の原型です。題材には、Rhino でこれをモデリングする手順を解説したページ(コルビュジエ-ドミノを3Dモデリングする|rhino-gh.com)を使わせてもらいました。

CLAUDE CODE への指示

以下のホームページは、「コルビュジエ-ドミノを3Dモデリングする」というタイトルの WEB ページです。(URL)

このホームページをよく読み、理解して、スケッチアップにこの「コルビュジエ-ドミノ」を再現してください。

文章にある寸法と、図にしかない寸法

Claude Code はまずページを読み、スラブの厚さ 200、階高 2,500、柱 200 角、踏面 300・蹴上 125、踊り場 1,800 × 1,200 といった数値を拾いました。ところが平面の寸法——スラブの縦横や柱の位置——は文章に無く、図版にしか書かれていません。ページの要約では落ちてしまう情報です。

そこで Claude Code は、ページに貼られている図版(17 枚)をダウンロードして画像として直接読み、平面図の寸法線から 10,200 × 6,200 の外形、4,000 スパンの柱グリッド、階段まわりの切り欠きを数値にしました。読み取った結果がこの表です。

部位寸法(mm)配置
平面10,200 × 6,200端部 100 + 4,000 + 4,000 + 2,000 + 100 / 100 + 1,000 + 4,000 + 1,000 + 100
束基礎500 × 500 × 500柱の位置 6 か所、Z 0 から 500
スラブ厚 200 × 3 枚Z 500 / 3,000 / 5,500。右側に階段の開口、右下に 1,100 角の欠き込み
柱200 × 200 × 長さ 2,300X 100 / 4,100 / 8,100 と Y 1,100 / 5,100 の交点、2 層
踊り場1,800 × 1,200 × 厚 200柱の側面に接して、Z 1,750 / 4,250
階段踏面 300 ・ 蹴上 125 ・ 幅 900 ・ 9 段1 フライトで 1,250 上がり、踊り場で折り返す。階高 2,500 = 2 フライト

Ruby のコードで、一括で作図する

部品は 27 個あります。1 つずつ「直方体を作る」道具を呼んでもできますが、Claude Code は「Ruby を流し込む」道具で、全部をまとめて 1 回で作図しました。SketchUp の Ruby API をそのまま使えるので、階段のような断面形状も、輪郭を描いて押し出すだけです。

流し込んだ Ruby(抜粋・一部整形) p3 = lambda { |x, y, z| Geom::Point3d.new(x.mm, y.mm, z.mm) } box = lambda { |name, x0, y0, z0, dx, dy, dz| g = root.entities.add_group f = g.entities.add_face(p3[x0,y0,z0], p3[x0+dx,y0,z0], p3[x0+dx,y0+dy,z0], p3[x0,y0+dy,z0]) f.reverse! if f.normal.z.negative? f.pushpull(dz.mm) } # 柱 6 本 × 2 層、束基礎、スラブ 3 枚、踊り場 2 枚、階段 4 本 … stair = lambda { |name, x0, ys, dir, zf| prof = [[0, -125]] 9.times { |k| prof.push([300*k, 125*(k+1)], [300*(k+1), 125*(k+1)]) } prof.push([2700, 975]) f = g.entities.add_face(prof.map { |u, h| p3[x0, ys + dir*u, zf + h] }) f.pushpull(900.mm) }

返ってきたのは {"groups": 27, "min_mm": [14850, 0, 0], "max_mm": [25200, 6200, 5700]}。グループが 27 個できて、高さが 5,700(3 枚目のスラブの上面)で終わっている——数字の上では狙いどおりです。Claude Code はここで「画面を見る」道具でスクリーンショットを撮り、参考ページの完成図と見比べてから「できました」と報告してきました。

SketchUp に作図されたコルビュジエのドミノ。3 枚のスラブと 6 本の柱、折り返し階段と踊り場
作図直後の SketchUp。柱 6 本 × 2 層、スラブ 3 枚、踊り場 2 枚、階段 4 本の 27 グループ。指示から作図完了まで、人の操作はありません。

下の図は、作図に使ったのと同じ数値で組み直したものです。部位ごとに追いかけられるほか、層数を増やすとドミノらしく同じ骨組みが積み上がります。

同じ数値で、層を積むスライダーで層数を、ボタンで部位を切り替えられます
作図済みの部位 選んでいる部位
層数
3
部位

部位ごとの寸法と個数

グループ数
最高点
平面
階段

要した時間

体感の目安です。設定のうち、時間がかかったのは方式の調査と、証明書のエラーの切り分けでした。作図そのものは会話 1 往復で終わります。

工程時間備考
接続方式の調査と比較約 10 分Web を調べて 3 候補を比較。採否は私が選択
導入(uv・拡張機能・設定・再起動)約 20 分手作業は拡張機能の導入とサーバー起動、Claude Code の再起動
10m の立方体1 分未満道具を 1 回呼ぶだけ
ドミノ:ページと図版の読み取り約 5 分図版 17 枚を取得して寸法を数値化
ドミノ:作図と確認約 2 分Ruby を 1 回流し込み、スクリーンショットで確認

やってみて分かったこと

1. 人の手が要るのは 2 か所だけ

SketchUp への拡張機能の導入と、サーバーの起動ボタン。この 2 つは SketchUp の画面の中の操作なので、AI からはできません。逆に言えばそれ以外——調査、ダウンロード、設定ファイル、エラーの切り分け、作図、確認——は全部 AI が進めました。「ここは手でやってください」と、必要な操作を具体的に言ってくるので迷いません。

2. 図版の寸法は、要約では落ちる

Web ページを読ませると、AI は要約して受け取ります。文章の数値は拾えますが、図の中の寸法線は要約に残りません。今回は Claude Code が自分で「平面寸法が無い」と気づき、図版を画像として取り直しました。図面や解説ページを題材にするときは、画像そのものを見せるのが確実です。

3. 単位の罠は、AI が先に踏んでくれる

SketchUp の Ruby API は内部の単位がインチです。mm のつもりで数値を渡すと、25.4 倍の大きさになります。Claude Code は最初から .mm を付けて変換していましたが、返ってきた bbox_mm を読み返すことで、万一間違えても気づける作りになっています。作図のあとに結果を読む——この習慣は AutoCAD のときと同じでした。

4. 自分の作図を、自分で見て確かめる

「画面を見る」道具があるおかげで、AI は作図した直後にスクリーンショットを撮り、参考図と見比べてから報告してきます。「できました」の前に確認が入るのは、実務で任せるときの安心材料です。

5. 気をつけること

非公式のツールを、パソコンの内側だけで使う

今回の MCP サーバーと拡張機能は、個人が公開しているものです。Trimble のサポート対象ではありません。また「Ruby を流し込む」道具は、SketchUp の中で任意のコードを実行できる強力なものです。

設定の SKETCHUP_MCP_HOST は 127.0.0.1(自分のパソコンの内側)のままにしてください。0.0.0.0 にすると、同じネットワークの他の機器からも認証なしで SketchUp を操作できてしまいます。

まとめ

AutoCAD に続いて、SketchUp も Claude Code の「道具」になりました。図面の平面計画は AutoCAD で、ボリュームの見え方は SketchUp で——同じ会話の中で、2 つのソフトを行き来しながら検討することが現実的になってきています。

ドミノは骨組みだけの単純な題材ですが、「解説ページを読んで、図版から寸法を拾い、27 個の部品を組み、自分で確認する」という一連の流れを、指示 1 つで通せたのは収穫でした。次は、敷地と法規の条件を与えて、ボリュームのスタディを SketchUp 側でやらせてみるつもりです。

作図に使った数値

この記事の立体図は、SketchUp に流し込んだ Ruby と同じ座標(スラブの輪郭、柱の位置、階段の断面)から描いています。層数を増やしたときの柱・踊り場・階段の位置も、同じ計算です。