
zinin/sketchup-mcp2
Developer toolsこのページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る
SketchUpのMCPサーバー
概要
Claude(またはMCP-aware AIクライアント)をSketchUpに接続し、プロンプト駆動型3Dモデリングを実現します。 - (PyPI上のsketchup-mcp2) — モデルコンテキストプロトコルを介してLLMにタイプされたツールを公開します。 - — SketchUp 内で TCP サーバーを実行し、ライブモデルに対してコマンドを実行します。 リリースページから最新の .rbz をつかむか、ソースからビルドします。 SketchUp: Window → Extension Manager → Install Extension では、.rbz を選択し、SketchUp を再起動します。 プラグインは eval ruby — SketchUp 内の任意の Ruby の実行 — ; プラグイン → MCP Server → Settings でチェック解除します。 デフォルトでは127.0.0.1:9876を listen することで、プラグイン → MCP Server → Start Server が起動します。 Claude コード/Claude デスクトップの場合、.mcp.json (または claude desktop config.json) に追加します。 uvx は、PyPI からスケッチアップ mcp2 を自動的に引きます。 uvx ならインストールします。 です。 「1.2×0.8mのオークダイニングテーブル」をつくってみてはいかがでしょうか.
概要(AI 翻訳)
Claude(またはMCP-aware AIクライアント)をSketchUpに接続して、プロンプト駆動型3Dモデリングを行います。
2 プロセス橋:
- PyPI の [Python MCP server** (
sketchup-mcp2]) — 型ツールをモデルコンテキストプロトコルを介して LLM に公開します。 - Ruby SketchUp Extension — SketchUp 内の TCP サーバーを実行し、ライブモデルに対してコマンドを実行します。
クイックスタート
##1. SketchUp拡張をインストール
リリースページから最新の[.rbzをつかむか、ソースからビルドします。
SketchUp: [Window → Extension Manager → Install Extension] で、[.rbz]] を選択し、SketchUp を再起動します。 プラグインは eval_ruby — SketchUp 内の任意の Ruby の実行 — デフォルトで有効**; Plugins → MCP Server → Settings... の Ruby の評価を有効にして、ゲートを閉じます。
##2. SketchUp内のサーバーを起動する
[Plugins → MCP Server → Start Server] — デフォルトでは [127.0.0.1:9876] を listen します。
##3. MCPクライアントの設定
Claude コード/Claude デスクトップの場合は、.mcp.json (または claude_desktop_config.json]) に追加します。
[uvx は PyPI から [sketchup-mcp2 を自動的に引きます。 必要ない場合は uv をインストールします。
です。 たとえば「1.2×0」を作ろう.
このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。
README
以下は原文 README の抜粋です。原文を見る。
MCP Server for SketchUp
Connect Claude (or any MCP-aware AI client) to SketchUp for prompt-driven 3D modeling.
Two-process bridge:
- Python MCP server (
sketchup-mcp2on PyPI) — exposes typed tools to the LLM via the Model Context Protocol. - Ruby SketchUp extension — runs a TCP server inside SketchUp and executes commands against the live model.
Quickstart
1. Install the SketchUp extension
Either grab the latest .rbz from the Releases page or build it from source:
gem install --user-install rubyzip
(cd mcp_for_sketchup && ruby package.rb)
# → mcp_for_sketchup/mcp_for_sketchup_v.rbz
In SketchUp: Window → Extension Manager → Install Extension, pick the .rbz, restart SketchUp. The plugin ships with eval_ruby — arbitrary Ruby execution inside SketchUp — enabled by default; uncheck Enable Ruby evaluation in Plugins → MCP Server → Settings... to close the gate.
2. Start the server inside SketchUp
Plugins → MCP Server → Start Server — by default listens on 127.0.0.1:9876.
3. Configure your MCP client
For Claude Code / Claude Desktop, add to .mcp.json (or claude_desktop_config.json):
{
"mcpServers": {
"sketchup": {
"command": "uvx",
"args": ["sketchup-mcp2"],
"env": {
"SKETCHUP_MCP_HOST": "127.0.0.1",
"SKETCHUP_MCP_PORT": "9876",
"SKETCHUP_MCP_TIMEOUT": "60",
"SKETCHUP_MCP_LOG_LEVEL": "INFO"
}
}
}
}
uvx will pull sketchup-mcp2 from PyPI automatically — install uv if you don’t have it.
That’s it. Ask Claude things like “create a 1.2 × 0.8 m oak dining table” and watch it happen.
Features
Tool catalogue
| Category | Tools |
|---|---|
| Geometry | create_component (cube / cylinder / cone / sphere), delete_component, transform_component — all dimensions in mm; position is an absolute bbox-min target |
| Materials | set_material — paints a group, component instance, face or edge with an existing material (by name), a named color or hex #rrggbb |
| Booleans | boolean_operation — union / difference / intersection |
| Edge ops | chamfer_edge, fillet_edge — feature edges only (seams and concave edges skipped; fillet also skips curved rims and refuses a body without straight feature edges); distance/radius in mm, segments configurable |
| Joinery | create_mortise_tenon, create_dovetail, create_finger_joint |
| Export | export_scene — skp / obj / dae / stl / png / jpg; skp is refused for an untitled model |
インストール
uvx sketchup-mcp2設定
{
"mcpServers": {
"sketchup": {
"command": "uvx",
"args": ["sketchup-mcp2"],
"env": {
"SKETCHUP_MCP_HOST": "127.0.0.1",
"SKETCHUP_MCP_PORT": "9876",
"SKETCHUP_MCP_TIMEOUT": "60",
"SKETCHUP_MCP_LOG_LEVEL": "INFO"
}
}
}
}