This website requires JavaScript.
優惠券
寄往
部落格

使用 Claude Code 與 Altium MCP:從環境設定到 PCB 設計

最初發布於 Nov 10, 2026, 更新於 Nov 10, 2026

7 分鐘

目錄
  • 前言
  • 什麼是 Altium MCP 伺服器?
  • 如何設定 Altium MCP 伺服器並連接 Claude Code
  • Altium MCP 測試專案:CH32V005 元件測試器
  • 步驟 1:為 Altium MCP 專案選擇元件
  • 步驟 2:透過 MCP 繪製 Altium 原理圖
  • 步驟 3:透過 Altium MCP 擺放元件
  • 步驟 4:透過 Altium MCP 自動佈線
  • 步驟 5:Altium MCP 輸出檔案與設計文件
  • Altium MCP 的準確度:哪些環節仍需要人工審查
  • Altium MCP Token 使用量:各工作階段的模型與工具呼叫統計
  • 結論
  • Altium MCP 常見問題

透過 Claude Code 進行 Altium MCP PCB 設計

前言

Claude Code 能否直接在 Altium Designer 中協助設計 PCB?透過 Altium MCP 伺服器,它可以存取正在開啟的專案、建立及修改設計元素,並透過工具呼叫執行任務。但它實際上能處理 PCB 設計流程中的多少工作?

為了找出答案,我使用了eda-agent,一個由第三方開發的開源 MCP 伺服器,將我的 CH32V005 元件測試器重新製作成雙層 PCB。專案涵蓋元件選型、原理圖繪製、封裝擺放、佈線及設計檢查等完整流程。本文將實際示範整個工作流程,包括 Claude Code 能夠自動化處理的工作,以及仍須由我掌控的工程決策。

本指南將介紹:

  • Altium MCP 伺服器的用途,以及 eda-agent 的運作方式
  • 如何將 eda-agent 連接至 Claude Code,並確認設定是否正確
  • 如何從元件選型開始,完成一塊已佈線的雙層 PCB
  • Claude Code 在哪些環節需要修正及人工介入
  • 整個工作流程消耗多少 Token,以及實際應用上的限制

在 Altium Designer 中完成佈線的 CH32V005 元件測試器

圖:透過 Altium MCP 伺服器在 Altium Designer 中完成佈線的 CH32V005 元件測試器,採用 60 x 45 mm 雙層板。

注意事項

eda-agent 是第三方開源專案,JLCPCB 與 Altium 均未參與其開發,也未對其提供認可或支援;本文僅供教育及學習用途。

安裝任何程式碼儲存庫之前,請先檢查其程式碼、資料分享方式,以及它可能修改的內容。作者、JLCPCB 與 Altium 均不對設計、檔案或電腦因此受到的任何損害,或透過伺服器分享的資訊承擔責任。

什麼是 Altium MCP 伺服器?

Altium MCP 伺服器是一個橋接工具,可將 Altium Designer 的腳本功能轉換為 AI 用戶端能夠呼叫的工具。Claude Code 發出操作請求後,伺服器便會在目前開啟的設計中執行該操作,再由 Altium 將結果以資料形式回傳。

MCP(Model Context Protocol,模型上下文協定)是 Claude Code 用來與這些伺服器通訊的開放標準。Altium Designer 本身不會執行 AI 模型;負責決定呼叫哪些工具的是 Claude Code 背後的模型。

Claude Code 的 Altium MCP 資料傳輸路徑

圖:Altium MCP 的資料路徑:從 Claude Code 經過 eda-agent 伺服器及其工作區檔案,再傳送至 Altium Designer 內部的 DelphiScript 迴圈。

在本次大部分建置過程中,我使用 Claude Opus 5.5。eda-agent 會將 Claude Code 的每次工具呼叫寫入請求檔案,再由 Altium 內部的 DelphiScript 迴圈執行並寫入回覆。

本次建置使用的 Altium MCP 伺服器

我使用了eda-agent 0.8.1 版,由 George Saliba(salitronic)開發,採用 Apache-2.0 授權。它會直接修改正在執行的 Altium 工作階段,而不是處理匯出的檔案,並透過同一個伺服器支援元件庫、原理圖及 PCB。作者將其標示為實驗性工具,並提醒部分工具可能導致 Altium 的 DelphiScript 引擎當機,因此應在已備份的專案中使用。KiCad 也能採用類似方式,詳情可參閱這篇KiCad MCP 指南。

Altium MCP 功能:工具群組與安全開關

eda-agent 註冊了數百個工具,並依照其操作的文件類型分組。在最精簡的工具組合中,Claude Code 會看到兩個中介工具:用於搜尋的 tool_catalog,以及用於執行的 tool_invoke;其他工具則透過這兩個中介工具呼叫。

工具前綴操作對象本次建置用途
lib_.SchLib 與 .PcbLib 元件庫符號、封裝及封裝連結
sch_目前開啟的 .SchDoc根據範本繪製原理圖頁面
pcb_目前開啟的 .PcbDoc元件擺放及佈線
obj_原理圖或 PCB 物件導通孔蓋油、修改及刪除
proj_專案編譯、網路及 ERC 檢查
app_Altium 軟體本身儲存及切換文件

伺服器透過以下四項安全措施限制可執行的操作:

  • EDA_AGENT_READONLY=1:拒絕所有非讀取操作。我一開始便使用此模式。
  • EDA_AGENT_UI_AUTOMATION=0:拒絕模擬鍵盤及滑鼠輸入,因此伺服器無法代替使用者點擊 Altium 對話方塊。
  • 腳本封鎖:即使處於寫入模式,伺服器仍會拒絕執行 Altium 的腳本程序。
  • EDA_AGENT_UPDATE_CHECK=0:停止每日更新檢查連線至網路。

如何設定 Altium MCP 伺服器並連接 Claude Code

設定流程分為四個部分:在 Python 環境中安裝 eda-agent、於 Altium 載入專案腳本、啟動輪詢迴圈,並在 Claude Code 中註冊伺服器。建議先使用唯讀模式,真正需要修改時才開啟寫入權限。

簡單的做法:將程式碼儲存庫連結或以下指令的截圖提供給 Claude,並要求它為你的使用者帳戶安裝程式及設定環境。

1. 安裝 eda-agent在 Python 3.11 或更新版本的虛擬環境中安裝,然後複製其 Altium 腳本:

git clone https://github。com/salitronic/eda-agent
cd eda-agent
python -m venv 。venv
。venv\Scripts\python -m pip install -e 。
。venv\Scripts\python -m eda_agent install-scripts

2. 在 Altium 中註冊腳本專案(只需設定一次):依序開啟 Preferences > Scripting System > Global Projects > Install from file,然後選取 Altium_API.PrjScr。

eda-agent Altium_API.PrjScr 腳本專案

圖:Altium Preferences 中的 Global Projects 區域,顯示已加入的 eda-agent Altium_API.PrjScr 腳本專案。

3. 啟動輪詢迴圈:選擇 File > Run Script,展開 Altium_API 及 Dispatcher.pas,選取 StartMCPServer,然後按一下 OK。

在 Altium Designer 中選取 StartMCPServer

圖:Altium Designer 的 Run Script 對話方塊中已選取 StartMCPServer,以啟動 Altium MCP 輪詢迴圈。

4. 以唯讀模式在 Claude Code 中註冊伺服器。請自行執行以下指令,因為在我的設定中,Claude Code 不允許自行修改 MCP 設定:

claude mcp add altium --scope user -e EDA_AGENT_READONLY=1 -e EDA_AGENT_TOOLSET=minimal -e EDA_AGENT_UI_AUTOMATION=0 -e EDA_AGENT_UPDATE_CHECK=0 -- "<path-to-venv>\Scripts\python.exe" -m eda_agent --headless

5. 重新啟動 Claude Code。Altium 工具只會在新的工作階段中載入。

6. 準備好後啟用寫入權限:執行 claude mcp remove altium --scope user,然後重新執行新增伺服器的指令,並將 EDA_AGENT_READONLY 設為 0,最後再次重新啟動 Claude Code。

--headless 參數會略過 eda-agent 網頁儀表板,但 Altium 中的狀態視窗仍會正常運作。

Altium MCP 測試專案:CH32V005 元件測試器

這塊測試板是一台元件測試器,可辨識及量測常見電子元件。只要將元件連接至三個測試探針,韌體便會進行識別及量測,支援的元件包括電晶體、MOSFET、二極體、閘流體、電阻、電容及電感。

目前已有許多電晶體測試器設計,其中不少以同一個開源 AVR 專案為基礎。我已經為 WCH CH32V 晶片編寫了自己的 RISC-V 韌體,因此接下來的工作就是設計 PCB。我的版本將原本的 AVR 設計延伸至 CH32V MCU。

本專案參考了以下資源:

我的韌體是為 RISC-V 重新實作這些量測方法,而不是直接翻譯 AVR 程式碼。編譯後使用 19,448 bytes Flash 及 732 bytes RAM,目前尚未進行實驗台實測。

步驟 1:為 Altium MCP 專案選擇元件

我先要求 Claude Code 從 MCU 開始選擇元件。它根據 JLCPCB 即時庫存檢查了六款候選晶片,最後推薦 CH32V005F6P6,因為該晶片有現貨,而且引腳配置與原本的晶片相同。

Claude Code 為何選擇 CH32V005F6P6 MCU

MCUJLCPCB 於 2026-11-03 的庫存所需的電路板修改
CH32V006F8P6(原始選型)0無,但當時無法購買
CH32V005F6P6(C54824605)195無,TSSOP-20 封裝的引腳配置完全相同
CH32V0070需要更換封裝
CH32V003F4P625,148無,但 16 KB Flash 無法容納 19,448 bytes 的韌體
PY32F030F18P6379需要重新配置引腳並移植韌體
ATmega328P-AU35,775需要全面重新設計

CH32V005F6P6 為測試器帶來的功能:

  • 核心與記憶體:採用最高 48 MHz 的 32 位元 QingKe RISC-V2C 核心,配備 32 KB Flash 及 6 KB SRAM。
  • 5 V 工作電壓:額定工作電壓為 2.0 至 5.5 V;啟用 ADC 時為 2.4 至 5.5 V,因此能像原本的 AVR 設計一樣以 5 V 運作。
  • ADC:具備 12 位元解析度,在 4.5 至 5.5 V 供電時,取樣速度可超過 1 Msps。
  • 比較器計時:PD4 上的運算放大器輸出同時也是 TIM2_CH1 擷取輸入,因此可以沿用 AVR 測試器的比較器計時方法。

Claude 根據庫存資料及 WCH 資料表提出更換建議,並由我確認採用。

測試器 BOM 中的其他元件

電路板的其他部分則沿用已驗證的測試器元件數值,並由 Claude 逐一核對 JLCPCB 庫存。

位號製造商料號JLCPCB 料號用途
U2MCP1702-5002E/MB, SOT-89C18299將 9 V 降至 5 V 的 LDO,典型靜態電流為 2 µA
D4SS14 肖特基二極體,SMA 封裝C2480電池反接保護
J4SHOU HAN 6-pin USB-C 連接器C456012僅供電的 USB 輸入
F1SMD0603P025TFC20786USB 端使用的 250 mA PTC 保險絲
R1 至 R6680 Ω 與 470 kΩ、1% 精度、0603 封裝C23228, C23178探針電阻
C3, C610 µF 25 V, 0603C96446大容量電容
SW1, SW2HRO K2-1102DP-C4SW-04C1101536 x 6 mm 直插式輕觸開關

Claude 也根據製造商圖面檢查了 USB-C 封裝,發現舊封裝的焊盤較長,且向後偏移了 0.25 mm。每個可採購元件都有 JLCPCB 料號及製造商料號(MPN),可在 JLCPCB 元件庫。

步驟 2:透過 MCP 繪製 Altium 原理圖

Claude Code 透過 MCP 繪製了 16 個元件符號及原理圖頁面,接著將 Altium 編譯後的網表,與已驗證 EasyEDA 設計中的引腳對網路規格進行比較。第一次檢查便成功匹配全部 33 個網路及 134 個引腳,ERC 錯誤數為 0。

  • 先建立規格:將已驗證的引腳對網路清單加入 build_spec.json,作為每次網表檢查的依據。
  • 符號與頁面:每次工具呼叫只建立一個符號;sch_draw_template 則根據範本繪製各個頁面,如果第一條連線可能造成兩個網路短路,便會在繪製前停止。
  • 封裝:根據 KiCad 10 尺寸建立包含 14 個封裝的元件庫,其中包括自訂 USB-C、探針焊盤、測試焊盤及開關封裝。

原理圖第 1 頁:MCU 前端與探針網路

第 1 頁包含 MCU、探針網路及比較器閾值電路,測試器的所有量測都由此開始。

Altium MCP 原理圖

圖:Altium MCP 原理圖第 1 頁:CH32V005F6P6、680 Ω 與 470 kΩ 探針電阻、VTH 分壓器,以及 J3 和 J7 探針連接器。

MCU 引腳網路功能
PA2, PD3, PD2TP1, TP2, TP3探針 ADC 輸入;TP1 與 TP2 亦連接至比較器
PD0, PC7, PC5RL1 to RL3透過 680 Ω 電阻驅動探針
PC0, PC6, PC3RH1 to RH3透過 470 kΩ 電阻驅動探針
PA1VTH比較器閾值輸入
PD4CMP_OUT比較器輸出至 TIM2 擷取輸入
PC4BTN_VBAT電源電壓偵測及 TEST 按鈕
PC1, PC2SDA, SCLOLED I2C 匯流排
PD5, PD6DBG_TX, DBG_RXUART 除錯介面
PD1, PD7SWIO, NRST程式燒錄及重設
  • VTH 分壓器:R7(18 kΩ)與 R8(5.1 kΩ)將閾值設定為 0.2208 × VDD,在 5 V 供電時約為 1.10 V。這重現了 AVR 測試器的 1.1 V 對 5 V 比例,因此原有查找表仍然適用。
  • 探針連接器:J3 為 3-pin 排針,J7 則由三個裸露 SMD 焊盤組成,兩者採並聯連接,分別供有引腳及表面黏著元件使用。
  • 周邊元件:C2 與 C3 用於 VDD 去耦,SW2 用於重設 MCU(C5 不裝件,DNP),TP4 至 TP6 則分別引出 CMP_OUT、VDD 及 GND。

原理圖第 2 頁:電源、USB-C 與介面

第 2 頁包含兩組電源輸入、電源及偵測選擇器,以及各介面排針。

Altium MCP 原理圖第 2 頁

圖:Altium MCP 原理圖第 2 頁:USB-C 輸入、透過 MCP1702 LDO 的 9 V 電池供電路徑、PWR SEL 與 SENSE SEL 跳線,以及各介面排針。

  • USB-C 輸入:R13 與 R14(5.1 kΩ)將 CC1 及 CC2 下拉至接地,讓電路板識別為受電端(Power Sink);F1 則提供 USB_5V。
  • 9 V 電池供電路徑:J5 連接至 JP4(BAT EN)、D4 及 MCP1702 LDO,產生 BAT_5V。D4 可防止電池反接;移除 JP4 即可完全斷開電池。
  • 電源選擇:JP2 的 1–2 腳位可將 VDD 連接至 USB_5V,2–3 腳位則連接至 BAT_5V;不接跳線代表關閉電源。
  • 電壓偵測選擇:JP3 將 USB_5V 或 VBAT_PROT 接至電壓偵測分壓器,設定必須與 JP2 一致,但電路板沒有任何機制強制確保兩者相符。
  • 電壓偵測與按鈕:R11(18 kΩ)與 R12(10 kΩ)將偵測電壓按 10/28 比例分壓,因此 9 V 電壓在 BTN_VBAT 端約為 3.2 V。SW1 也會將同一節點拉低,因此同一個 ADC 引腳可讀取電源電壓及 TEST 按鈕狀態。
  • 介面排針:J1 是 WCH-LinkE 排針,JP1 預設保持開路,避免 WCH-LinkE 直接為 VDD 供電。J6 用於 UART,J2 則連接 OLED 的 I2C 匯流排。

設計審查期間的原理圖修改

修訂版本修改內容元件數、網路數
C2將滑動開關改為兩個獨立的 1x3 跳線(JP2、JP3),避免跳線帽放錯位置時將 9 V 接至 5 V 電源軌48, 33
C4新增 JP4 電池跳線52, 34
C5移除 I2C 電平轉換器(Q1、Q2、R16、R17)48, 32
C6由於 OLED 模組本身已有上拉電阻,因此移除 R9 及 R10;並將三張原理圖頁面合併為兩張46, 32
C8OLED 改用 5 V 供電(移除 U3、C8、C9),移除 BAV199 鉗位二極體 D1 至 D3,並將開關改為直插式40, 31

步驟 3:透過 Altium MCP 擺放元件

Claude Code 首先透過 MCP 完成初步元件擺放。雖然沒有元件重疊,但飛線(Ratsnest)交錯遍佈整塊電路板,因此我最後改為手動擺放所有元件。

Claude Code 的初始擺放

pcb_place_components 在 75 x 55 mm 的電路板上擺放了 46 個元件,每個元件都帶有原理圖 UniqueId 及焊盤網路,因此 Altium 判定電路板與原理圖同步,沒有彈出 ECO 對話方塊。Claude 建議將板子縮小至 60 x 45 mm。我確認後,再透過 pcb_import_placement 移動元件。

Claude Code 透過 Altium MCP 進行元件擺放

圖:手動調整前,Claude Code 透過 Altium MCP 完成的元件擺放結果。

手動擺放與絲印整理

我將 USB-C 連接器放在板子上邊緣、探針連接器放在下邊緣、OLED 排針放在上方,並將電源跳線安排在電池輸入旁。Claude 在修改前先從電路板讀取我設定的位置,因此沒有覆蓋我的佈局。

  • 底層元件:J1、J6 及 JP1 移至底層,之後改用僅適用於底層的 SMD 排針封裝。由於 obj_modify 無法變更封裝,Claude 便逐一刪除元件,再以相同位置、旋轉角度及 UniqueId 重新放置。
  • 對齊:將相同類型的元件對齊,例如讓 R3 至 R6 保持等距,並使 J7 與 J3 排成一直線。
  • 絲印標籤:新增 28 個網路及功能標籤,例如探針編號、OLED 引腳及跳線位置。

在 60 x 45 mm Altium MCP 電路板上手動擺放測試器元件

圖:在 60 x 45 mm Altium MCP 電路板上手動擺放測試器元件。

步驟 4:透過 Altium MCP 自動佈線

eda-agent 的 pcb_autoroute 工具會依照電路板設計規則執行伺服器內建的佈線器,而非 Altium 的 Situs 自動佈線器。使用 Altium 預設規則時,佈線完成率為 97.6%;將規則調整至 JLCPCB 雙層板製程能力範圍內後,完成率提升至 100%。

Altium 預設規則與符合 JLCPCB 製程能力的規則比較

規則Altium 預設值本次使用值JLCPCB 雙層板最低要求
間距10 mil0.20 mm0.10 mm
導通孔直徑及孔徑50 and 28 mil24 and 12 mil (0.61 and 0.30 mm)0.25 and 0.15 mm
防焊橋寬度10 mil4 mil (0.10 mm)0.10 mm 防焊橋,綠色防焊,1 oz 銅厚
走線寬度10 mil10 mil0.10 mm

所有調整後的數值均符合 JLCPCB 最低製程要求,而間距及導通孔尺寸亦保留了一定餘量。更一般的PCB 佈線規則則涵蓋了本電路板以外的走線寬度及間距設計。

結果第 1 次:預設規則第 2 次:調整後規則
完成率97.6%100%
未佈線網路2(RL2、RL3)0
10 mil 走線數量269270
導通孔數量及焊盤內導通孔37 個,其中 7 個位於焊盤內48 個,沒有位於焊盤內的導通孔
間距違規標記18 項,全部位於 U1 焊盤之間0
防焊橋違規標記3114
是否套用至電路板否是

第 1 次佈線在 MCU 區域失敗:RL2 與 RL3 無法連接至 U1,而全部 18 項間距違規均發生在 U1 本身的焊盤之間。U1 的引腳間距為 0.65 mm,焊盤間距只有 9.84 mil,低於 10 mil 的預設間距要求。第 2 次結果已套用至電路板,共有 270 條走線及 48 個導通孔,且尚未進行覆銅。

佈線後的 Altium DRC 檢查結果

Altium 設計規則檢查未發現任何銅箔違規

DRC 規則違規數量
間距、短路、未佈線網路、走線寬度、孔徑0
最小防焊橋寬度,4 mil0
絲印至防焊層間距,10 mil0
絲印至絲印間距,10 mil0

Altium MCP 佈線測試器的 Altium DRC 摘要

圖:Altium MCP 自動佈線測試器的 Altium DRC 摘要

步驟 5:Altium MCP 輸出檔案與設計文件

這次 MCP 建置產生了 Altium 專案、元件庫、驗證規格及審查報告。目前尚未產生 Gerber、鑽孔、BOM 及 Pick-and-Place 檔案,也尚未下單製作電路板。

檔案內容
.PrjPcb 專案及兩張 SchDoc 原理圖頁面Altium 專案及原理圖
.PcbDoc已完成佈線的 60 x 45 mm 電路板
.SchLib 與 .PcbLib16 個符號;14 個封裝,另有 2 個底層 SMD 排針封裝
build_spec.json用於網表比對的引腳對網路規格
DRC 報告及自動佈線工作結果設計規則檢查及兩次佈線結果
原理圖 PDF兩張原理圖頁面的列印檔

向 JLCPCB 下單前仍需完成的輸出項目

  • 待處理項目:1.0 mm 絲印文字、TP4 至 TP6 的處理決策、接地覆銅、電源網路走線寬度、導通孔蓋油與防焊橋,以及三個元件位號的旋轉方向。
  • Gerber 與鑽孔檔案:請參考以下指南匯出:如何在 Altium Designer 中產生 Gerber 檔案。
  • BOM 與 Pick-and-Place:利用元件上已標示的 JLCPCB 料號匯出這兩份檔案,以便進行PCB 組裝。
  • DFM 製造性檢查:將 Gerber 檔案上傳至JLCDFM,並在平台上檢查防焊橋寬度。

Altium Designer 中 CH32V005 測試器的 Output Job 設定

圖:Altium Designer 中 CH32V005 測試器的 Output Job 設定,準備產生向 JLCPCB 下單所需的 Gerber、鑽孔、BOM 及 Pick-and-Place 檔案。

Altium MCP 的準確度:哪些環節仍需要人工審查

Altium MCP 的輸出速度很快,但不代表能自行驗證結果。大部分錯誤都是在編譯、ERC 檢查或重新讀取電路板時才被發現,而工程決策仍然需要由人員作出。

本次建置遇到的 Altium MCP 錯誤與工具限制

問題修正方式
批次建立符號時,所有引腳都被放到最後一個符號上每次呼叫只建立一個符號,並檢查引腳數量
Claude 修改頁面產生腳本時,將兩個網路標籤註解掉透過編譯及 ERC 檢查發現,之後已還原標籤
重新繪製原理圖頁面時,重新產生了四個 UniqueId使用新的 ID 重新放置四個電路板元件
刪除並重新放置元件後,U1 的位置偏移最多達 0.5 mm已移回原位;現在每次修改後都會重新讀取位置確認
PCB 查詢讀取了另一塊已開啟的電路板現在每次查詢前都會先將目標電路板設為作用中文件
obj_modify 無法變更封裝或文字旋轉角度已重新放置元件;另有三個旋轉角度仍需手動修正
佈線工作完成後,pcb_autoroute 呼叫仍持續卡住約 30 分鐘透過工作狀態資訊取回執行結果

由工程師作出的設計決策

  • 確認採用 CH32V005F6P6,並核准 60 x 45 mm 電路板尺寸
  • 以兩個獨立跳線取代滑動開關
  • 移除電平轉換器及探針鉗位電路,並改用 5 V 為 OLED 供電
  • 手動擺放所有元件、將 J1、J6 及 JP1 移至底層,並逐一確認刪除操作

AI 在 Altium MCP 建置流程中如何節省原型製作時間

AI 能比手動繪製更快產生重複性設計檔案,從而縮短原型製作時間。

  • 元件庫與原理圖頁面:最初建立 16 個符號及三張原理圖頁面約花費 17 分鐘,建立包含 14 個封裝的元件庫則約花費 9 分鐘。
  • 元件搜尋:Claude 將六款 MCU 與 JLCPCB 即時庫存進行比較,找出一款引腳配置完全相同的替代品。一般網頁搜尋無法在單一步驟中完成這種結合庫存核對的比較。
  • 重複檢查:每次修改後都會執行 ERC、網表比對及 DRC 摘要檢查。

不過,在本次建置中,PCB 設計的每個階段仍然需要人工參與。

Altium MCP Token 使用量:各工作階段的模型與工具呼叫統計

整個建置流程分成兩個 Claude Code 工作階段,總共處理約 1.86 億個 Token。由於每次回覆都會重新讀取整段對話,因此約 98% 為快取讀取。第二個工作階段透過 /model 切換模型。

項目工作階段 1工作階段 2總計
工作內容從原理圖繪製至手動擺放封裝、佈線及 DRC完整建置
模型Claude Opus 5.5Claude Opus 5.5(49 則回覆)、Claude Sonnet 5.5(45 則回覆)混合使用
助理回覆數36596461
工具呼叫總數536109645
Altium MCP 工具呼叫數34084424
輸出 Token345,67939,036384,715
未快取輸入 Token8002021,002
寫入快取的輸入 Token2,386,008664,0513,050,059
從快取讀取的輸入 Token165,279,61617,456,267182,735,883
處理 Token 總數168,012,10318,159,556186,171,659
  • Token 數量增加的原因:大量直接嵌入對話的工具結果,例如元件擺放資料、網表及包含 207 個項目的 DRC 清單,以及批次建立符號出錯後重新繪製的內容。
  • 如何降低用量:將大型結果儲存至檔案,再使用腳本整理摘要;本次 DRC 報告便採用了這種方式。

Altium Designer 中的 EDA Agent 狀態視窗

圖:Altium Designer 中的 EDA Agent 狀態視窗,記錄了 Altium MCP 的請求情況:運作 2 小時 10 分鐘內共收到 440 次請求,並逐一記錄每次請求所需時間。

結論

Altium MCP 伺服器能讓 Claude Code 成為 Altium Designer 中高效率的 CAD 操作助手,但它並不是能獨立完成所有工作的 PCB 設計工程師。可以使用 Claude Code 搜尋並核對元件庫存,透過伺服器建立符號及封裝、輸入原理圖和執行佈線;至於電路決策、元件擺放及最終審查,仍應由工程師負責。

透過這種分工,CH32V005 測試器在兩個工作階段內,便從元件選型進展至完成雙層板佈線。安裝任何第三方 MCP 伺服器前,都應先仔細檢查。

JLCPCB PCB 組裝服務橫幅
讓你的 Altium PCB 設計化為實體
立即取得報價
  • PCB 設計完成並通過必要的 DFM 檢查後,請匯出 Gerber 檔案並上傳至 JLCPCB,即可立即取得製造報價。

  • 將 AI 輔助完成的 PCB 設計製作成實體電路板。

Altium MCP 常見問題

Altium MCP 伺服器可以獨立完成 PCB 設計嗎?

不可以。在本次建置中,Claude Code 負責繪製原理圖、擺放元件及佈線,但電路設計決策、最終元件位置,以及每項刪除操作的核准,仍由工程師負責。

Altium MCP 伺服器會將我的設計資料傳送給 AI 嗎?

會。伺服器讀取的任何資料,例如元件數值、網路名稱及參數,都會進入 Claude Code 對話,並由 AI 服務供應商處理。在開啟機密設計之前,請先確認相關資料處理方式。

Altium MCP 伺服器使用 Altium 自家的自動佈線器嗎?

不會。eda-agent 的 pcb_autoroute 會依照電路板設計規則執行伺服器內建的佈線器,只有在套用工作結果後,才會將走線及導通孔寫入電路板。

這個 MCP 伺服器支援哪個版本的 Altium Designer?

根據 eda-agent README,建議使用 Altium Designer 20 或更新版本,以及 Python 3.11 或更新版本。本次建置使用 Altium Designer 26.11.1.5 及 eda-agent 0.8.1。

透過 Altium MCP 設計的電路板可以直接送廠製造嗎?

不可以。這塊電路板在下單前仍需產生 Gerber、鑽孔、BOM 及 Pick-and-Place 檔案,將絲印文字調整至 1.0 mm,並透過 DFM 檢查確認防焊橋寬度。

持續學習