mcpField
K
KiCad Copilot

KiCad Copilot

本地服务
github.com/biosshot科研与教育219 周前更新

关于 KiCad Copilot

KiCad Copilot 是面向 KiCad 设计文件的 MCP 服务,供 AI Agent 创建和修改原理图、进行 PCB 布局与布线。它采用文件式工作流,支持检查点恢复,并使用本地 PCB 布线。

主要功能

  1. 01生成和修改原理图
  2. 02搜索元件并插入电路模块
  3. 03创建层级项目与检查点
  4. 04生成并审阅 PCB 布局
  5. 05本地 PCB 布线与覆铜
  6. 06调用 KiCad CLI 进行检查和导出

适用场景

  1. 01通过自然语言编辑 KiCad 原理图
  2. 02在多页项目中调整电路模块
  3. 03预览并应用 PCB 元件布局
  4. 04本地布线后运行设计规则检查

MCP 相关

它通过 MCP 向 AI Agent 提供 KiCad 项目、原理图和 PCB 操作工具,包括分析、布局及本地布线能力。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"biosshot-kicad-copilot": {
"command": "npx",
"args": [
"-y",
"kicad-copilot-mcp"
]
}
}
}
启动命令npx -y kicad-copilot-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmkicad-copilot-mcp0.1.0

工具

22

收录的工具列表 · 更新于 2 周前

参数类型必填说明
MPNstring|null否
part_uuidstring|null否

详细介绍

KiCad Copilot

面向 KiCad 的 AI 驱动 MCP 服务。通过自然语言创建和修改原理图、搜索真实元件、处理分层项目、生成 PCB 布局、在本地布线,并通过 AI Agent 直接创建简单的铜箔填充区。

KiCad Copilot 是 EasyEDA Copilot 的 KiCad 对应版本。它提供相同的核心电路生成和 PCB 自动化能力,并进一步支持面向文件的分层项目、可恢复检查点、原生 kicad-cli 集成以及完全本地的 PCB 布线。

集成分析: KiCad Copilot 会在首次使用 analyze_schematic 或 analyze_pcb 时下载经过固定版本并验证的 kicad-happy v2.2.0 版本。MCP 工具会返回精简、节省令牌且可操作的分析结果,以及重点设计数据。

最新版本 npm 软件包 许可证 Discord

功能

KiCad Copilot 为 AI Agent 提供面向文件的 KiCad 高层接口:

  • 生成和修改原理图:添加、移除、替换和连接真实元件,无需逐个编辑 KiCad 对象。
  • 重建原理图模块:重新组织选定的元件,同时保留其电气连接。
  • 搜索元件和可复用模块:按 MPN 或零件 UUID 查找元件,并插入经过验证的功能电路。
  • 处理 KiCad 项目:检查项目树,并创建项目、独立原理图、分层图纸和 PCB 文件。
  • 保留可恢复检查点:保存、列出和恢复单个 KiCad 文件的准确版本。
  • 同步原理图和 PCB:将原理图变更显式导入关联的电路板。
  • 生成 PCB 布局:通过精简的 JavaScript DSL 描述电路板约束,查看 PNG/SVG 预览,并应用已批准的结果。
  • 本地布线:使用 eda-copilot-router 及其托管的 KRT 后端,无需将布线任务发送到外部服务。
  • 创建铜箔填充区:添加简单的整板覆铜区,并可选择添加缝合过孔。
  • 使用 KiCad 原生工具:查找 kicad-cli,用于 ERC、DRC、预览、导出、制造文件及其他原生操作。

KiCad Copilot 直接处理已保存的 .kicad_pro、.kicad_sch 和 .kicad_pcb 文件。它不需要 KiCad IPC,也不需要在 KiCad 内安装插件。

示例

这些项目通过 KiCad Copilot 生成并迭代完成。完整的 KiCad 源文件位于 examples 目录中。

ATmega328P 开发板

一个层次化的 ATmega328P 设计,包含 MCU 核心、时钟、复位、去耦、USB-UART 电源、兼容 Nano 的排针和调试连接,并按功能拆分到不同图纸中。

ATmega328P 项目概览
项目概览
ATmega328P USB-UART 和电源图纸
USB-UART 和电源
ATmega328P MCU 核心图纸
MCU 核心
ATmega328P Nano 排针和调试图纸
Nano 排针和调试

下载 ATmega328P 项目

盖革高压电源

一个较大的多图纸设计,涵盖电源输入、3.3 V 稳压、高压发生器、反激级、反馈、探测器、控制器和用户界面。

盖革高压项目概览
项目概览
盖革高压电源输入图纸
电源输入
盖革高压发生器图纸
高压发生器
盖革探测器图纸
探测器
盖革控制器 UI 图纸
控制器 UI
盖革 3.3 V 电源图纸
3.3 V 电源
盖革高压反激图纸
高压反激
盖革高压反馈图纸
高压反馈
盖革用户界面图纸
用户界面

下载盖革高压项目

RP2350 开发板

采用层次化设计的 RP2350 电路,包含电源、时钟、闪存、USB/调试、GPIO 接口,以及由 AI 生成的 PCB 布局。本示例包含布局 DSL 和可编辑的 KiCad 电路板。

RP2350 项目概览
项目概览
RP2350 电源图纸
电源
RP2350 和时钟图纸
RP2350 和时钟
RP2350 闪存图纸
闪存
RP2350 USB 和调试图纸
USB 和调试
RP2350 GPIO 接口图纸
GPIO 接口

使用 KiCad Copilot 生成的 RP2350 PCB 布局的 3D 渲染图
生成的 PCB 布局的 KiCad 3D 渲染图

下载 RP2350 项目

安装

将 MCP 服务添加到你的 AI Agent。

Codex:

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

Claude Code:

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

通用 MCP 配置:

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

添加服务后,重启 MCP 客户端。KiCad Copilot 内含供 Agent 使用的本地工作流文档;工具描述会自动提供其安装路径。

要求

  • Node.js 20 或更高版本
  • KiCad 9 或 10
  • 使用托管的 EasyEDA2KiCad 安装方式和 kicad-happy 分析时需要 Python 3

KiCad Copilot 会在 PATH 和 KiCad 的标准安装位置中查找 kicad-cli;如果安装了多个受支持的版本,则优先使用 KiCad 10。如果可执行文件位于其他位置,请设置 KICAD_CLI_PATH。

首次转换实际元件时,会使用已有的 EasyEDA2KiCad 安装;如果没有,则会自动将其安装到托管的本地虚拟环境中。

首次调用设计分析功能时,会将固定版本的 kicad-happy 发布包下载到共享的 EDA Copilot 资源缓存,并验证其归档大小和 SHA-256 哈希值。若要改用可信的本地检出版本,请设置 KICAD_HAPPY_DIR。

原理图工作流

请 Agent 检查 KiCad 项目,或提供目标 .kicad_sch 文件的路径。典型请求可以简单到:

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

Agent 可以检查项目树,以紧凑的元件/网络 JSON 格式读取目标图纸,查找精确元件,组装所需更改,并通过 KiCad 验证保存的结果。

层次化项目仍按文件操作:每张实体原理图都通过各自的 .kicad_sch 路径进行修改;当操作需要完整信号映射时,则会使用整个项目的上下文。

文件同步

KiCad Copilot 会修改磁盘上的文件。KiCad 无法可靠地将这些更改与已打开编辑器中较新的未保存修改合并。

写入前:

  1. 在 KiCad 中保存有意进行的更改。
  2. 避免仅在编辑器缓冲区中保留较新工作的唯一副本。

写入后:

  1. 在 KiCad 中重新加载、还原或重新打开文档。
  2. 不要用较旧的编辑器缓冲区覆盖更新后的文件。

PCB 工作流

PCB 布局和布线采用明确的审核流程:

  1. 将原理图变更导入目标 .kicad_pcb 文件。
  2. 在布局 DSL 中描述外形、孔、约束、区域和重要元件。
  3. 生成机械预览,不修改 PCB。
  4. 审核返回的 PNG 或 SVG 预览。
  5. 生成并批准完整布局。
  6. 将已存储的布局应用到 PCB。
  7. 在本地为剩余连接布线。
  8. 检查结果并运行最终的 KiCad DRC。

每个包含 PCB 的布局响应都会创建检查点并以原子方式应用,包括预览和包含问题的结果。Agent 会检查返回的预览或 PCB 分析结果,并可在需要时通过检查点回滚;无需单独调用装配工具。

布局和布线 DSL 的执行仍是分开的操作。这样可以明确原理图与 PCB 的同步,并且能够清除或重建布线,而不会删除已放置的元件。

KiCad CLI

get_project_info 会报告检测到的 kicad-cli 路径和版本。只要 KiCad 已提供相应操作,Agent 就应使用原生 CLI,包括:

  • 原理图 ERC 和 PCB DRC;
  • 原理图和 PCB 的 PDF/SVG 导出;
  • 3D PCB 渲染;
  • Gerber 和钻孔文件生成;
  • BOM、位置、STEP、STL、GLB 和 VRML 导出;
  • 项目 jobsets 和格式升级。

请参阅 KiCad CLI 工作流 获取可直接使用的命令。

设计分析

analyze_schematic 会运行离线原理图检查,并可返回精简的顶层概览、层级、模块、连通性、电源、总线、BOM、装配和验证数据。 analyze_pcb 会根据关联的原理图自动补充 PCB 分析,运行跨域检查,并可选择添加热、EMC 或走线邻近度分析。各个布尔标志分别控制可选报告字段;默认启用精简结果。 耗时较长的 PCB 布局、PCB 布线和生命周期审计会返回带前缀的 operation_id,例如 pcb-dsl:1a2b3c4d。使用 wait_operation 继续执行其中任一操作;使用 cancel_operation 停止已过时的任务。 这些工具不会在 LLM 响应中包含内部规则标识符、运行时指标和坐标级别的铜箔数据。

请参阅设计分析,了解精简结果的准确约定和工作流。

兼容性

KiCad 版本状态
KiCad 10支持
KiCad 9支持

由于当前实现不支持其他主要版本的文件格式和 CLI 行为,因此会拒绝这些版本。

文档

开发

git clone https://github.com/biosshot/kicad-copilot.git
cd kicad-copilot
npm install
npm run check
npm start

使用以下命令运行 MCP Inspector:

npm run inspect

仓库还包含针对原理图、PCB 和布线的专用测试脚本,可用于基于临时文件进行开发。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。