KiCAD MCP:AI辅助PCB设计
KiCAD MCP 是一种模型上下文协议 (MCP) 实现,它使像 Claude 这样的大型语言模型 (LLM) 能够直接与 KiCAD 交互进行印刷电路板设计。它在 AI 助手和 KiCAD PCB 设计软件之间建立了标准化的通信桥梁,允许通过自然语言控制高级 PCB 设计操作。
🎉 新功能!原理图生成
**我们很高兴地宣布新增原理图生成功能!**现在,除了 PCB 设计之外,KiCAD MCP 还支持 AI 助手:
通过自然语言创建和管理 KiCAD 原理图
将电阻器、电容器和 IC 等元件添加到原理图
用电线连接组件以创建完整的电路
以 KiCAD 格式保存和加载原理图文件
将原理图导出为 PDF
这一强大的附加功能完善了 PCB 设计工作流程,允许 AI 助手在单一集成环境中帮助进行原理图捕获和 PCB 布局。
项目状态
该项目已完成并可供生产使用:
实现了与 KiCAD 9.0 的完全 Python 接口兼容性
创建了模块化且可维护的组件架构
实施用于电路板操作、元件放置和布线的综合工具
从项目创建到组件放置和布线,成功测试了操作
创建了一个精简的 MCP 服务器实现,可以可靠地将命令传递给 KiCAD
该服务器与 Cline/Claude 无缝协作,通过自然语言实现 AI 辅助 PCB 设计。
它的作用
KiCAD MCP 通过使 AI 助手能够执行以下操作,从而改变工程师和设计师使用 KiCAD 的方式:
通过自然语言请求创建和管理 KiCAD PCB 项目
创建包含组件和连接的原理图
操控电路板的几何形状、轮廓、层和属性
以各种模式(网格、圆形、对齐)放置和组织组件
布线、差分对和创建铜箔
实施设计规则并执行设计规则检查
生成各种格式的导出(Gerber、PDF、SVG、3D 模型)
向 AI 助手提供有关电路板的全面背景信息
这使得自然语言驱动的 PCB 设计工作流程成为可能,其中可以用简单的英语请求复杂的操作,同时仍然保持工程师的全面监督和控制。
核心架构
TypeScript MCP 服务器:实现人因模型上下文协议规范,以便与 Claude 和其他兼容的 AI 助手进行通信
Python KiCAD 接口:通过 pcbnew Python API 和 kicad-skip 库处理实际的 KiCAD 操作,并具有全面的错误处理功能
模块化设计:按领域(项目、原理图、电路板、组件、布线)组织功能,以实现可维护性和可扩展性
系统要求
KiCAD 9.0 或更高版本(必须完全安装)
Node.js v18 或更高版本和 npm
带有 pip 的Python 3.8 或更高版本(KiCAD 9.0 附带的版本就足够了)
Cline (VSCode Claude 扩展)或其他与 MCP 兼容的客户端
Windows 10/11 (当前版本针对 Windows 进行了优化;计划支持 Linux/Mac)
安装
步骤 1:安装 KiCAD 9.0
从KiCAD 官方网站下载 KiCAD 9.0
运行安装程序并选择默认安装选项
确保已安装 Python 模块(包含在默认安装中)
步骤 2:克隆并设置 KiCAD MCP 存储库
步骤3:配置Cline(VSCode Claude扩展)
如果尚未安装 VSCode,请从官方网站安装
从 VSCode 市场安装 Cline 扩展(Claude for VSCode)
编辑 Cline MCP 设置文件:
Windows:
%USERPROFILE%\AppData\Roaming\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
macOS:
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
Linux:
~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
将此配置添加到文件(根据系统需要更新路径):
重新启动 VSCode 或重新加载窗口以使更改生效。
步骤 4:验证安装
使用 Cline 扩展打开 VSCode
与 Claude 开始新的对话
要求 Claude 创建一个新的 KiCAD 项目:
Create a new KiCAD project named 'TestProject' in the 'test' directory.Claude 应该使用 KiCAD MCP 创建项目并报告成功
使用示例
以下是您可以要求 Claude 使用 KiCAD MCP 执行的操作的一些示例:
项目管理
方案设计
电路板设计
元件放置
路由
设计规则和导出
按类别划分的功能
项目管理
使用可自定义的设置创建新的 KiCAD 项目
从文件路径打开现有的 KiCAD 项目
使用可选的新位置保存项目
检索项目元数据和属性
方案设计
使用可自定义的设置创建新的原理图
从符号库中添加组件(电阻器、电容器、IC 等)
用电线连接组件以创建电路
向原理图添加标签、注释和文档
以 KiCAD 格式保存和加载原理图
将原理图导出为 PDF 以供记录
电路板设计
设置精确的电路板尺寸,支持公制和英制单位
添加自定义板轮廓(矩形、圆角矩形、圆形、多边形)
创建和管理具有各种配置的电路板层
添加安装孔、文本注释和其他电路板功能
可视化当前董事会状态
成分
将具有指定封装的组件放置在精确的位置
以网格或圆形图案创建组件阵列
移动、旋转和修改现有组件
对齐并均匀分布组件
具有可自定义属性的重复组件
获取详细的组件属性和列表
路由
创建和管理具有特定属性的网络
在元件焊盘或任意点之间布线
添加过孔,包括盲孔和埋孔
为高速信号创建差分对路由
生成铜箔(接地层、电源层)
使用特定的设计规则定义网络类
设计规则
设置间隙、轨道宽度等全局设计规则。
为不同的网络类定义特定的规则
运行设计规则检查 (DRC) 来验证设计
查看和管理 DRC 违规
出口
生成用于制造的行业标准 Gerber 文件
导出 PCB 的 PDF 文档
创建棋盘的 SVG 矢量图形
生成 STEP 或 VRML 格式的 3D 模型
生成各种格式的物料清单 (BOM)
实现细节
KiCAD MCP 实现采用模块化、可维护的架构:
TypeScript MCP 服务器 (Node.js)
kicad-server.ts :实现 MCP 协议的主服务器
使用 STDIO 传输与 Cline 进行可靠通信
管理 KiCAD 操作的 Python 进程
处理命令排队、错误恢复和响应格式化
Python接口
kicad_interface.py :主要的 Python 接口:
解析通过 stdin 接收的 JSON 命令
将命令路由到适当的专门处理程序
通过 stdout 返回 JSON 结果
使用详细信息优雅地处理错误
模块化指挥结构:
commands/project.py
:项目创建、打开、保存commands/schematic.py
:原理图创建和管理commands/component_schematic.py
:原理图组件操作commands/connection_schematic.py
:线路和连接管理commands/library_schematic.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 设计的每个方面都由专门的模块处理,同时保持干净、一致的接口层。
故障排除
常见问题和解决方案
问题:KiCAD MCP 没有出现在 Claude 的工具中
确保更新 Cline MCP 设置后完全重启 VSCode
验证配置中的路径是否适合您的系统
检查
npm run build
是否成功完成
问题:启动服务器时出现 Node.js 错误
确保您使用的是 Node.js v18 或更高版本
尝试再次运行
npm install
以确保所有依赖项都已正确安装检查控制台输出中的具体错误消息
问题:Python 错误或 KiCAD 命令失败
验证 KiCAD 9.0 是否正确安装
检查配置中的 PYTHONPATH 是否指向正确的位置
尝试直接运行一个简单的 KiCAD Python 脚本,以确保 pcbnew 模块可访问
问题:Claude 无法找到或加载您的 KiCAD 项目
引用项目位置时使用绝对路径
确保运行 VSCode 的用户具有目录的访问权限
获取帮助
如果您遇到本故障排除部分未涵盖的问题:
检查控制台输出的错误消息
在 GitHub 存储库的“问题”部分中查找类似问题
打开一个新问题,提供有关问题的详细信息
贡献
欢迎为本项目做出贡献!您可以通过以下方式提供帮助:
报告错误:打开一个问题,描述出了什么问题以及如何重现它
建议功能:有想法?通过问题分享
提交 PR :修复了 bug 或添加了新功能?那就提交 PR 吧!
改进文档:帮助澄清或扩展文档
请遵循现有的代码风格并包含新功能的测试。
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
KiCAD-MCP 服务器
Related MCP Servers
- Apache 2.0
- MIT License
- MIT License