KiCad Copilot

io.github.biosshot由 GitHub 帳號 biosshot 發布v0.1.0更新於 Oct 24, 2026

File-oriented MCP server for KiCad schematics, PCB placement, routing, and pours.

已驗證STDIO僅桌面開發者工具媒體與設計

概覽

AI 產生的概覽

讓 AI 助理建立與修改 KiCad 電路圖、完成 PCB 佈局與佈線,並對本機專案檔案執行 KiCad CLI 檢查。

可以做什麼
KiCad Copilot 為代理提供以檔案為主的 KiCad 專案介面:在電路圖中新增、移除、替換並連接真實元件,在保留電氣連接的前提下重組電路區塊,並建立專案、階層式圖頁與 PCB 檔案。它可依 MPN 或元件 UUID 搜尋元件,儲存與還原檔案檢查點,把電路圖變更匯入電路板,依 JavaScript DSL 產生 PCB 佈局並提供 PNG/SVG 預覽,在本機完成佈線並加入鋪銅。它也會尋找 kicad-cli,用於 ERC、DRC、匯出、渲染與製造檔案,並提供 analyze_schematic 與 analyze_pcb 輸出精簡的設計分析結果。
適用情境
適合讓助理以自然語言草擬或修改 KiCad 電路圖與電路板、反覆調整佈局與佈線,或對現有專案執行 ERC、DRC 與匯出步驟。它針對以檔案為主的階層式 KiCad 工作流程,而非編輯器內外掛方式。
執行需求
透過 npx 以 stdio 在本機執行(npm 套件 kicad-copilot-mcp)。需要 Node.js 20 或更新版本、KiCad 9 或 10,以及用於托管安裝 EasyEDA2KiCad 與 kicad-happy 分析的 Python 3。kicad-cli 會從 PATH 或標準安裝位置尋找,可用 KICAD_CLI_PATH 覆寫;選用的 KICAD_HAPPY_DIR 可指向可信的本機副本。未宣告帳號或 API 金鑰。
安裝前請注意
它會寫入磁碟上的 .kicad_pro、.kicad_sch 與 .kicad_pcb 檔案,而 KiCad 無法可靠地把這些變更與編輯器中尚未儲存的內容合併,因此需謹慎儲存與重新載入。首次呼叫 analyze_schematic 或 analyze_pcb 時會先驗證大小與 SHA-256 再下載固定版本的 kicad-happy;首次真實元件轉換可能把 EasyEDA2KiCad 安裝到托管的本機虛擬環境。套用佈局前應先檢視預覽。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 KiCad Copilot,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

KiCad Copilot

AI-powered MCP server for KiCad. Create and modify schematics from natural language, search real components, work with hierarchical projects, generate PCB placement, route boards locally, and create simple copper pours directly through an AI agent.

KiCad Copilot is the KiCad counterpart to EasyEDA Copilot. It provides the same core circuit-generation and PCB automation capabilities—and goes further with file-oriented hierarchical projects, recoverable checkpoints, native kicad-cli integration, and fully local PCB routing.

Integrated analysis: KiCad Copilot downloads a pinned, verified kicad-happy v2.2.0 release on first use of analyze_schematic or analyze_pcb. The MCP tools return compact, token-efficient actionable findings and focused design data.

[Latest release] [npm package] [License] [Discord]

What it does

KiCad Copilot gives AI agents a high-level, file-oriented interface to KiCad:

  • Generate and modify schematics: add, remove, replace, and connect real components without editing every KiCad object individually.
  • Rebuild schematic blocks: reorganize selected components while preserving their electrical connections.
  • Search components and reusable blocks: resolve components by MPN or part UUID and insert proven functional circuits.
  • Work with KiCad projects: inspect project trees and create projects, standalone schematics, hierarchical sheets, and PCB files.
  • Preserve recoverable checkpoints: save, list, and restore exact versions of individual KiCad files.
  • Synchronize schematic and PCB: explicitly import schematic changes into the associated board.
  • Generate PCB placement: describe board constraints in a compact JavaScript DSL, review PNG/SVG previews, and apply the approved result.
  • Route locally: use eda-copilot-router with its managed KRT backend without sending routing work to an external service.
  • Create copper pours: add simple full-board zones with optional stitching vias.
  • Use native KiCad tooling: discover kicad-cli for ERC, DRC, previews, exports, manufacturing files, and other native operations.

KiCad Copilot works directly with saved .kicad_pro, .kicad_sch, and .kicad_pcb files. It does not require KiCad IPC or a plugin installed inside KiCad.

Examples

These projects were generated and iterated through KiCad Copilot. The complete KiCad source files are available in the examples directory.

ATmega328P development board

A hierarchical ATmega328P design with the MCU core, clock, reset, decoupling, USB-UART power, Nano-compatible headers, and debug connections split across functional sheets.

Download the ATmega328P project

Geiger high-voltage supply

A larger multi-sheet design covering power input, 3.3 V regulation, the high-voltage generator, flyback stage, feedback, detector, controller, and user interface.

Download the Geiger high-voltage project

RP2350 development board

A hierarchical RP2350 design with power, clock, flash, USB/debug, GPIO headers, and an AI-generated PCB placement. The example includes the placement DSL and an editable KiCad board.

[3D render of the RP2350 PCB placement generated with KiCad Copilot]
KiCad 3D render of the generated PCB placement

Download the RP2350 project

Installation

Add the MCP server to your AI agent.

Codex:

bash
codex mcp add kicad-copilot -- npx -y kicad-copilot-mcp

Claude Code:

bash
claude mcp add kicad-copilot -- npx -y kicad-copilot-mcp

Generic MCP configuration:

json
{  "mcpServers": {    "kicad-copilot": {      "command": "npx",      "args": ["-y", "kicad-copilot-mcp"]    }  }}

Restart the MCP client after adding the server. KiCad Copilot includes local workflow documentation for the agent; tool descriptions expose its installed path automatically.

Requirements

  • Node.js 20 or newer
  • KiCad 9 or 10
  • Python 3 for managed EasyEDA2KiCad installation and kicad-happy analysis

KiCad Copilot searches for kicad-cli in PATH and standard KiCad installation locations, preferring KiCad 10 when multiple supported versions are installed. Set KICAD_CLI_PATH when the executable is stored elsewhere.

The first real-component conversion uses an existing EasyEDA2KiCad installation or installs it automatically into a managed local virtual environment.

The first design-analysis call downloads the pinned kicad-happy release into the shared EDA Copilot asset cache after verifying its archive size and SHA-256 hash. Set KICAD_HAPPY_DIR to use a trusted local checkout instead.

Schematic workflow

Ask the agent to inspect a KiCad project or give it the path to a target .kicad_sch file. A typical request can be as simple as:

text
Open D:\Projects\sensor\sensor.kicad_pro and add a 3.3 V regulator block to the Power sheet.

The agent can inspect the project tree, read the target sheet as compact component/net JSON, find exact components, assemble the requested change, and validate the saved result through KiCad.

Hierarchical projects remain file-oriented: each physical schematic sheet is modified through its own .kicad_sch path, while project-wide context is used where the operation requires the complete signal map.

File synchronization

KiCad Copilot changes files on disk. KiCad does not reliably merge those changes with newer unsaved edits in an already open editor.

Before a write:

  1. Save intentional changes in KiCad.
  2. Avoid keeping the only copy of newer work in the editor buffer.

After a write:

  1. Reload, revert, or reopen the document in KiCad.
  2. Do not overwrite the updated file with an older editor buffer.

PCB workflow

PCB placement and routing use an explicit review flow:

  1. Import schematic changes into the target .kicad_pcb file.
  2. Describe the outline, holes, constraints, regions, and important components in the placement DSL.
  3. Generate a mechanical preview without modifying the PCB.
  4. Review the returned PNG or SVG preview.
  5. Generate and approve the complete placement.
  6. Apply the stored placement to the PCB.
  7. Route the remaining connections locally.
  8. Inspect the result and run final KiCad DRC.

Every placement response containing a PCB is checkpointed and applied atomically, including preview and issue-bearing results. The agent inspects the returned preview or PCB analysis and can roll back through checkpoints when needed; no separate assembly tool call is required.

Placement and router DSL execution remain separate operations. This keeps schematic-to-PCB synchronization explicit and makes it possible to clear or rebuild routing without deleting placed components.

KiCad CLI

get_project_info reports the discovered kicad-cli path and version. Agents should use the native CLI whenever KiCad already provides the operation, including:

  • schematic ERC and PCB DRC;
  • schematic and PCB PDF/SVG exports;
  • 3D PCB renders;
  • Gerber and drill generation;
  • BOM, position, STEP, STL, GLB, and VRML exports;
  • project jobsets and format upgrades.

See KiCad CLI workflow for ready-to-use commands.

Design analysis

analyze_schematic runs the offline schematic checks and can return focused top-level overview, hierarchy, block, connectivity, power, bus, BOM, assembly, and verification data. analyze_pcb automatically enriches PCB analysis from the associated schematic, runs cross-domain checks, and optionally adds thermal, EMC, or trace-proximity analysis. Individual boolean flags control each optional report field; compact findings are enabled by default. Long-running PCB layout, PCB routing, and lifecycle audits return a prefixed operation_id such as pcb-dsl:1a2b3c4d. Continue any of them with wait_operation; stop obsolete work with cancel_operation. The tools omit internal rule identifiers, runtime metrics, and coordinate-level copper from the LLM response.

See design analysis for the exact compact result contract and workflow.

Compatibility

KiCad versionStatus
KiCad 10Supported
KiCad 9Supported

Other major versions are rejected because their file formats and CLI behavior are not covered by the current implementation.

Documentation

Development

bash
git clone https://github.com/biosshot/kicad-copilot.gitcd kicad-copilotnpm installnpm run checknpm start

Run the MCP Inspector with:

bash
npm run inspect

The repository also contains focused schematic, PCB, and routing test scripts for development against disposable files.

License

MIT

來源:README.md,提交 505081d

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.1.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分