Atlas / MCP servers / bearnetwork-brnkc / Sketchup

SketchupBLOCK

mcp/bearnetwork-brnkc/sketchup

SketchUp-MCP For AI

Verdict
BLOCK
Grade
D
Trust score
69 /100
Exposed tools
10 4r · 5w · 1d
Transport
—
License
MIT
Stars
26
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://smithery.ai/server/@BearNetwork-BRNKC/SketchUp-MCP)

SketchupMCP 透過模型上下文協議(MCP)將 Sketchup 連接到 Claude AI,使 Claude 能夠直接與 Sketchup 互動和控制。這項整合允許使用提示輔助 3D 建模、場景創建和操作 Sketchup。

特別感謝 mhyrr/sketchup-mcp 提供的架構。 我們對其原生版本(mhyrr/sketchup-mcp)進行了繁體中文化及部份功能優化與調整。

功能

  • 雙向通信:透過 TCP 套接字連接 Claude AI 與 Sketchup
  • 組件操作:在 Sketchup 中創建、修改、刪除和變換組件
  • 材質控制:應用和修改材質與顏色
  • 場景檢查:獲取當前 Sketchup 場景的詳細資訊
  • 選取處理:獲取並操作已選取的組件
  • Ruby 代碼執行:在 Sketchup 中直接執行任意 Ruby 代碼,以進行高級操作

組件

該系統由兩個主要組件組成:

  1. Sketchup 擴展:在 Sketchup 內部創建 TCP 伺服器來接收並執行命令的擴展
  2. MCP 伺服器(`sketchup_mcp/server.py`):實作模型上下文協議並連接到 Sketchup 擴展的 Python 伺服器

安裝

安裝 Sketchup 擴展

  1. 下載或自行構建最新的 .rbz 檔案
  2. 在 Sketchup 中,前往 Window > Extension Manager
  3. 點擊 Install Extension,然後選擇下載的 .rbz 檔案
  4. 重新啟動 Sketchup

Python 套件安裝

我們使用 uv 來管理 Python 環境,因此需要先安裝 uv:

pip install uv

Installing via Smithery

要使用 Smithery 安裝 Sketchup MCP:

npx -y @smithery/cli install @BearNetwork-BRNKC/SketchUp-MCP --client claude

安裝 Sketchup 擴展

  1. 下載或自行構建最新的 .rbz 檔案
  2. 在 Sketchup 中,前往 Window > Extension Manager
  3. 點擊 Install Extension,然後選擇下載的 .rbz 檔案
  4. 重新啟動 Sketchup

使用方式

啟動連線

  1. 在 Sketchup 中,前往 Extensions > SketchupMCP > Start Server
  2. 伺服器將預設啟動在 9876 端口
  3. 確保 MCP 伺服器已在終端執行

與 Claude 配合使用

在 Claude 配置中加入以下內容,以使用 MCP 伺服器:

"mcpServers": {
"sketchup": {
"command": "uvx",
"args": [
"sketchup-mcp"
]
}
}

這將自動從 PyPI 下載最新版本。

成功連接後,Claude 將能夠透過以下功能與 Sketchup 互動:

工具

  • get_scene_info - 獲取當前 Sketchup 場景資訊
  • get_selected_components - 獲取當前選取的組件資訊
  • create_component - 創建新組件並指定參數
  • delete_component - 從場景中刪除組件
  • `transform_c
Read from source at commit 2395f9cbbd8cOBSERVED · 2026-10-09
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add sketchup-mcp -- uvx sketchup-mcp
claude-desktop
{
  "mcpServers": {
    "sketchup-mcp": {
      "command": "uvx",
      "args": [
        "sketchup-mcp"
      ]
    }
  }
}
03

Exposed tools (10)

4 read · 5 write · 1 destructive. Blast radius: 1 tool can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
create_componentwriteCreate a new component in Sketchup
create_dovetailwriteCreate a dovetail joint between two components
create_finger_jointwriteCreate a finger joint (box joint) between two components
create_mortise_tenonwriteCreate a mortise and tenon joint between two components
delete_componentdestructiveDelete a component by ID
eval_rubyreadEvaluate arbitrary Ruby code in Sketchup
export_scenereadExport the current scene
get_selectionreadGet currently selected components
set_materialwriteSet material for a component
transform_componentreadTransform a component
04

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (1 observation(s))
Network
none-observed
Shell
declared (1 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (5)

HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
su_mcp/su_mcp/main.rb:1835
result = eval(params["code"], binding)
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
MEDIUMInventory / provenance · inv.binary · CWE-1104
.local-index/sketchup_mcp-0.1.0-py3-none-any.whl
sketchup_mcp-0.1.0-py3-none-any.whl
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
delete_component
Why it matters. 1 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
requirements.txt
mcp, websockets, aiohttp
Why it matters. 3 requirement(s) not pinned with ==
Fix. pin exact versions
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
examples/README.md:81
5. **Security**: Be careful when evaluating user-provided Ruby code, as it has full access to the SketchUp API.

Gates applied: no_behavioural_pass.

Audited 2026-10-09 · audit v0.4.1 · source sha 2395f9cbbd8cfull audit observations/trust-audit/mcp-server/bearnetwork-brnkc__sketchup.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-092395f9cbbd8cBLOCKD69first audit
06

Questions

What is the Sketchup MCP server?

SketchUp-MCP For AI

What tools does Sketchup expose?

10 in total: 4 read-only, 5 that write, and 1 that can delete or overwrite (delete_component). Every one is listed on this page with its risk.

Is Sketchup safe to connect to an agent?

No — not without reading the findings first. The audit graded it D (69/100) and found 1 critical or high issue in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 1 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does Sketchup need?

No credential environment variables were found in its source, so it appears to need none.

How current is this page?

The grade is for one exact copy of the source (2395f9cbbd8c), read on 2026-10-09. The repository is watched and re-audited when it changes.

Advertisement