
AI 驅動的 Navisworks 自動化控制系統 透過 讓 Claude、Gemini、VS Code Copilot 等 AI 平台直接操控 Autodesk Navisworks。
概览
AI 驅動的 Navisworks 自動化控制系統 透過 讓 Claude、Gemini、VS Code Copilot 等 AI 平台直接操控 Autodesk Navisworks。 - — 發送自然語言指令,由 MCP 協議轉譯為工具呼叫 - — Node.js/TypeScript 中繼層,管理 WebSocket 連線與命令路由 - — C# Plugin,在 NW 主執行緒中安全執行 .NET API 操作 1. 開啟 Navisworks Manage 2025 2. 載入你的 NWF/NWD 模型 3. 在 面板找到 按鈕,點擊啟動 4. 看到提示 WebSocket 端口: 2233 即表示服務就緒 「找出所有的門」「選擇 Selection Set 裡的機電管線」「用搜尋集過濾」 - WebSocket 端口固定為 ,可透過環境變數 NAVIS_MCP_PORT 調整 - 所有命令在 Navisworks **中序列化執行,不會有並發衝突 - Plugin DLL 部署到 C:\Program Files\Autodesk\Navisworks Manage 2025\Plugins\NavisworksMCP\ - 日誌存放在 %APPDATA%\NavisworksMCP\Logs\
README
以下为原文 README 节选,完整内容请查看原文。
NavisworksMCP
AI 驅動的 Navisworks 自動化控制系統 透過 Model Context Protocol (MCP) 讓 Claude、Gemini、VS Code Copilot 等 AI 平台直接操控 Autodesk Navisworks。
系統架構
┌──────────────┐ stdio ┌──────────────┐ WebSocket ┌──────────────────┐
│ AI 平台 │ ◄──────────────► │ MCP Server │ ◄──────────────► │ Navisworks 插件 │
│ Claude │ MCP 協議 │ (Node.js) │ port 2233 │ (C# Add-in) │
│ Gemini │ │ │ │ │
│ VS Code │ │ index.ts │ │ Application.cs │
└──────────────┘ └──────────────┘ └──────────────────┘
三層分離設計:
- AI 平台 — 發送自然語言指令,由 MCP 協議轉譯為工具呼叫
- MCP Server — Node.js/TypeScript 中繼層,管理 WebSocket 連線與命令路由
- Navisworks Add-in — C# Plugin,在 NW 主執行緒中安全執行 .NET API 操作
快速開始
環境需求
| 項目 | 版本 |
|---|---|
| Navisworks Manage | 2025 |
| .NET Framework | 4.8 |
| Node.js | 20+ LTS |
| Visual Studio | 2019+ |
安裝步驟
# 1. 一鍵安裝 MCP Server 依賴並編譯
scripts\setup.bat
# 2. 在 Visual Studio 開啟解決方案
# → 確認 NavisworksMCP.csproj 中的 NavisworksPath 正確
# → Build Release
# 3. 部署 Plugin(需要管理員權限)
powershell -ExecutionPolicy Bypass -File scripts\install-addon.ps1
啟動服務
- 開啟 Navisworks Manage 2025
- 載入你的 NWF/NWD 模型
- 在 Add-ins 面板找到 “MCP 服務 (開/關)” 按鈕,點擊啟動
- 看到提示
WebSocket 端口: 2233即表示服務就緒
連接 AI 平台
VS Code / Claude Code: 已配置 .vscode/mcp.json,開箱即用
Claude Desktop: 在設定中加入:
{
"mcpServers": {
"navisworks": {
"command": "node",
"args": ["C:/Users/你的帳號/DESKTOP/NV_mcp/MCP-Server/build/index.js"],
"env": { "NAVIS_MCP_PORT": "2233" }
}
}
}
使用模式
NavisworksMCP 提供 27 個工具,設計為五步驟工作流程:
Step 1 — 了解模型
「這個模型有什麼?裡面有幾個來源檔案?主要分類是哪些?」
get_document_info → 文件名稱、單位、模型數量
get_model_info → 各來源檔案的根節點與子項目數
get_model_statistics → 按分類/圖層/來源檔案統計數量 ★ 核心工具
get_all_categories → 列出所有屬性分類名稱
get_model_tree → 展開模型樹結構(可指定深度)
典型對話:
用戶:「幫我分析一下這個模型的組成」
AI 呼叫:get_model_statistics(groupBy: "sourceFile")
→ 回傳:Architectural.nwc (3,200 items), MEP.nwc (1,800 items), Structure.nwc (950 items)
AI 呼叫:get_model_statistics(groupBy: "classDisplayName")
→ 回傳:Wall (420), Door (180), Pipe (650), Duct (320)...
Step 2 — 篩選與定位
「找出所有的門」「選擇 Selection Set 裡的機電管線」「用搜尋集過濾」
get_selection_sets → 列出所有已儲存的選擇集
get_selection_set_items → 讀取 Set 內容(不改變選擇) ★ 安全讀取
execute_search_set → 執行 Search Set 並回傳結果 ★ 搜尋集
search_items → 自定義搜尋(按分類+屬性+值)
select_items_by_search → 搜尋並選擇項目
select_items_by_set → 選擇指定 Set 的所有項目
clear_selection → 清除選擇
典型對話:
用戶:「模型裡有哪些選擇集?」
AI 呼叫:get_selection_sets
→ 回傳:MEP-Piping (Search Set, 650 items), Clash-Group-A (120 items)...
用戶:「看一下 MEP-Piping 裡面有什麼」
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"navisworks": {
"command": "node",
"args": ["C:/Users/你的帳號/DESKTOP/NV_mcp/MCP-Server/build/index.js"],
"env": { "NAVIS_MCP_PORT": "2233" }
}
}
}