kicad-mcp
Enables natural language control of KiCad PCB design software through Claude Desktop, automating project creation, design rule checks, component management, export, and cost estimation.
README
⚡ KiCad MCP
🔧 Automate PCB design • 🤖 AI-powered workflows • 🚀 Natural language commands
✨ What It Does
Control KiCad PCB design software through natural language via Claude Desktop:
| Feature | Description |
|---|---|
| 🎨 Project Creation | Initialize new KiCad projects with custom templates |
| 🔍 DRC/ERC Checks | Run design rule and electrical rule checks automatically |
| 📦 Component Management | Add, remove, and organize components programmatically |
| 📤 Export & Manufacturing | Generate Gerber files, drill files, BOMs, and 3D models |
| 🔄 Auto-Routing | Automatically route PCB traces with AI assistance |
| 💰 Cost Estimation | Get production cost estimates from JLCPCB, PCBWay |
🚀 Quick Setup
📋 Prerequisites
- Node.js >= 18.0.0
- KiCad 8.x installed on your system
- Claude Desktop app
📥 Installation
npm install -g @spark-apps/kicad-mcp
⚙️ Configure Claude Desktop
-
Open Claude Desktop settings and locate the MCP configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Add KiCad MCP server to the configuration:
{
"mcpServers": {
"kicad-mcp": {
"command": "npx",
"args": ["-y", "@spark-apps/kicad-mcp"]
}
}
}
-
Restart Claude Desktop
-
Verify installation: Look for the 🔌 icon in Claude Desktop. Click it to see "kicad-mcp" listed as a connected server.
🛠️ Available Tools
| Tool | Description | |
|---|---|---|
| init | Create new KiCad projects with custom templates | |
| fix | Run design rule and electrical rule checks with auto-fix | |
| add/remove | Manage components programmatically | |
| export | Generate Gerber, drill files, PDFs, SVGs, STEP models | |
| bom | Generate Bill of Materials with supplier integration | |
| gen-3d | Create 3D models for visualization and verification | |
| route | Intelligent trace routing with AI assistance | |
| estimate | Production cost estimation (JLCPCB, PCBWay) |
💬 Example Commands in Claude Desktop
<details> <summary><strong>🎨 Project Creation</strong></summary>
"Create a new 4-layer PCB project for ESP32 development"
"Initialize a simple Arduino shield project"
"List available project templates"
"Create a basic 2-layer PCB called 'my-sensor-board'"
Available Templates:
basic- Simple 2-layer PCBesp32-dev- 4-layer ESP32 dev board with USB-Carduino-shield- 2-layer Arduino-compatible shieldpower-supply- 2-layer power supply board
</details>
<details> <summary><strong>🔍 Design Validation</strong></summary>
"Run DRC checks on my current board and fix all errors"
"Check for electrical rule violations in the schematic"
</details>
<details> <summary><strong>📤 Manufacturing Output</strong></summary>
"Export Gerber files for JLCPCB fabrication"
"Generate a complete BOM with supplier links"
"Create a 3D STEP model for mechanical verification"
</details>
<details> <summary><strong>🤖 AI-Powered Automation</strong></summary>
"Auto-route all remaining traces on the power supply section"
"Estimate production cost for 100 units via JLCPCB"
"Optimize component placement for thermal management"
</details>
🔧 Using with KiCad
Workflow Integration
- Open your KiCad project in KiCad software
- Open Claude Desktop alongside KiCad
- Ask Claude to automate tasks using natural language
- Review results in KiCad and iterate
Supported KiCad Versions
- KiCad 8.x (recommended)
- KiCad 7.x (limited support)
Important Notes
⚠️ Current Status: This MCP server uses a mock implementation for development. Real KiCad integration requires KiCad's IPC protocol implementation (coming soon).
✅ What Works Now:
- Project creation with templates and natural language prompts
- Template selection (basic, esp32-dev, arduino-shield, power-supply)
- Project metadata injection (author, description, tags, version)
- Command interface and workflow testing
- All tool signatures and parameter validation
- Integration with Claude Desktop
- Mock KiCad client for development/testing
🔄 Coming Soon:
- Real KiCad IPC integration
- Live project synchronization
- Advanced AI-powered routing
- Supplier API integration for BOMs
🐛 Troubleshooting
MCP Server Not Showing in Claude Desktop
- Verify Node.js is installed:
node --version - Check configuration file path is correct
- Ensure JSON syntax is valid (use a JSON validator)
- Restart Claude Desktop completely
Commands Not Working
- Ensure KiCad is installed and accessible
- Check project paths are correct
- Verify file permissions for project directories
Need Help?
📝 License
MIT © Muammar Yacoob
🌟 Support
If you find this MCP server helpful:
- ⭐ Star the repository
- 💖 Sponsor the project
- 🐛 Report bugs and suggest features
Built with ❤️ for the KiCad and AI automation community
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.