README
🚀 KiCAD MCP 使用指南
KiCAD MCP(Microcontroller Protocol)是一个基于 Node.js 和 Python 的接口协议,旨在实现 PCB 设计自动化。用户可通过发送 JSON 命令,轻松控制 KiCAD 进行各类操作。
🚀 快速开始
KiCAD MCP 能让你借助 JSON 命令控制 KiCAD 实现 PCB 设计自动化。以下为你介绍使用前的安装配置步骤。
📦 安装指南
环境要求
- Node.js 版本 >= v18.x.x
- KiCAD 9.0 或更高版本
- 具有 Python 支持的 KiCAD 安装
配置步骤
- 克隆项目仓库:
git clone https://github.com/your-repository/kicad-mcp.git cd kicad-mcp - 安装依赖:
npm install - 启动服务:
npm run build && npm start
✨ 主要特性
项目管理
- 可新建、打开和保存 KiCAD 项目。
- 能管理项目配置文件。
- 支持获取项目元数据。
PCB 设计
- 可设置电路板尺寸与单位。
- 能添加自定义边框(矩形、圆角矩形、圆形等)。
- 可创建和管理图层。
- 支持添加固定孔、文本注释等功能。
元件操作
- 能放置元件并指定封装类型。
- 可创建元件数组(网格或圆形布局)。
- 能调整元件位置、旋转参数。
- 支持对齐和分布元件。
- 可复制元件并修改属性。
信号布线
- 能创建并管理网络。
- 支持自动或手动绘制走线。
- 可添加过孔(盲孔、埋孔等)。
- 能布置差分对线对。
- 可创建铜皮(电源地平面)。
设计规则检查
- 可设置全局设计规范(间距、线宽等)。
- 能定义网络类别的特殊规则。
- 支持执行 DRC 检查。
- 可管理违规列表。
输出文件
- 能生成 Gerber 文件。
- 可导出 PDF 文档。
- 能创建 SVG 图形。
- 可生成 3D 模型。
- 能制作 BOM 清单。
🔧 技术细节
项目采用分层架构设计,具体如下:
Node.js MCP 服务器
kicad-server.ts:实现 MCP 协议的核心服务。- 使用 STDIO 传输协议。
- 管理 Python 进程。
- 处理命令队列和错误恢复。
Python 接口
-
kicad_interface.py:主要功能包括:- 解析从标准输入接收的 JSON 命令。
- 将指令转发给专用处理器。
- 返回 JSON 格式的结果。
- 优雅处理各类错误。
-
按模块划分的功能组件:
commands/project.py:处理项目创建、打开、保存等操作。commands/board/:包含多个功能子模块:size.py:管理电路板尺寸。layers.py:控制图层配置。outline.py:添加边框。view.py:可视化显示。
commands/component.py:处理元件的放置与编辑。commands/routing.py:实现走线功能。commands/design_rules.py:管理设计规则检查。commands/export.py:输出不同格式的文件。
这种架构确保了每个 PCB 设计环节都有专门模块负责,同时保持接口的一致性和简洁性。
📚 详细文档
常见问题与解决方案
问题 1:KiCAD MCP 未在 Claude 工具中显示
- 确保重启 VSCode 后,Cline MCP 设置已生效。
- 检查配置文件中的路径是否正确无误。
- 确认
npm run build命令执行成功。
问题 2:启动服务失败
- 检查 Node.js 版本是否符合要求。
- 确保 KiCAD 安装了 Python 支持。
- 查看控制台输出的错误信息。
项目贡献
欢迎提交 Pull Request,帮助改进本项目! Contributing Guidelines
Scan to contact