项目简介
KiCad MCP服务器是一个基于Model Context Protocol (MCP) 的后端应用,旨在增强KiCad PCB设计软件与大型语言模型(LLM)客户端(如Claude Desktop)的交互能力。通过此服务器,用户可以使用自然语言与KiCad项目进行更智能的交互,例如查询项目信息、执行设计规则检查、生成PCB缩略图等。
主要功能点
-
资源访问 (Resources):
- 项目列表:列出用户目录下的所有KiCad项目。
- 项目详情:获取指定KiCad项目的详细信息,包括文件列表和设置。
- 原理图信息:提取并展示KiCad原理图文件的基本组件信息。
- 设计规则检查 (DRC) 报告:生成详细的DRC报告,包括错误摘要、分类和详细 violation 信息,并支持查看DRC历史记录和趋势分析。
-
工具执行 (Tools):
- 项目管理:查找项目、获取项目结构、打开KiCad项目。
- 设计分析:验证项目文件的完整性,生成PCB缩略图以便快速识别项目。
- 导出功能:例如,虽然文档中提到BOM导出,但代码中未找到明确的BOM导出工具,实际功能以代码为准。
- DRC 工具:执行设计规则检查,获取详细报告,并跟踪DRC历史改进情况。
-
Prompt 模板 (Prompts):
- 提供预定义的Prompt模板,例如“创建新元件指南”、“调试PCB问题指南”、“PCB制造清单”和“修复DRC违规”、“自定义设计规则”等,方便用户快速发起与LLM的交互,获取KiCad相关操作的指导和帮助。
安装步骤
-
环境准备:
- 确保已安装 macOS 操作系统,并已安装 KiCad PCB设计软件。
- 安装 Python 3.10 或更高版本。
- 建议安装 Claude Desktop 或其他兼容MCP协议的客户端软件。
-
下载仓库:
- 克隆或下载此GitHub仓库 'kicad-mcp' 到本地。
-
设置Python环境:
- 打开终端,进入项目根目录 'kicad-mcp'。
- 创建并激活 Python 虚拟环境:
python3 -m venv venv source venv/bin/activate - 安装项目依赖:
pip install -r requirements.txt
-
运行服务器:
- 在虚拟环境激活的状态下,运行服务器:
python main.py - 服务器默认使用 'stdio' 传输协议,在终端中运行。
- 在虚拟环境激活的状态下,运行服务器:
服务器配置
要将 KiCad MCP 服务器连接到 MCP 客户端(例如 Claude Desktop),您需要配置客户端以启动并连接到服务器。以下是 Claude Desktop 的配置示例,您需要编辑 Claude Desktop 的配置文件 'claude_desktop_config.json' (通常位于 '~/Library/Application Support/Claude/'),添加或修改 'mcpServers' 部分:
{ "mcpServers": { "kicad": { "name": "KiCad MCP Server", // 服务器名称,可自定义 "command": "/ABSOLUTE/PATH/TO/YOUR/PROJECT/kicad-mcp/venv/bin/python", // Python 解释器绝对路径 (请替换为你的实际路径) "args": [ "/ABSOLUTE/PATH/TO/YOUR/PROJECT/kicad-mcp/main.py" // main.py 脚本的绝对路径 (请替换为你的实际路径) ] } } }
请务必将 '/ABSOLUTE/PATH/TO/YOUR/PROJECT/kicad-mcp' 替换为你的 'kicad-mcp' 项目在您本地文件系统中的绝对路径**。**
基本使用方法
- 启动服务器: 确保 KiCad MCP 服务器已在终端中成功运行。
- 配置并重启客户端: 按照上述“服务器配置”步骤配置 Claude Desktop 或其他 MCP 客户端,并重启客户端软件。
- 客户端交互: 在 MCP 客户端中,您应该能够看到已配置的 "KiCad MCP Server"。您可以通过客户端的界面,使用资源 (Resources)、工具 (Tools) 或 Prompt 模板 (Prompts) 与 KiCad 项目进行交互。例如,您可以:
- 使用资源浏览 KiCad 项目列表或查看项目DRC报告。
- 调用工具执行 DRC 检查或生成 PCB 缩略图。
- 使用 Prompt 模板快速发起关于 KiCad 设计的对话。
具体操作方式取决于您使用的 MCP 客户端软件的用户界面。请参考相应客户端软件的文档。
信息
分类
开发者工具