KiCAD MCP is a Model Context Protocol (MCP) implementation that enables Large Language Models (LLMs) like Claude to directly interact with KiCAD for printed circuit board design.
KiCAD MCP is a Model Context Protocol (MCP) implementation that enables Large Language Models (LLMs) like Claude to directly interact with KiCAD for printed circuit board design.
Is it safe?
No known CVEs for pip3.
No authentication — any process on your machine can connect to this server.
MIT. View license →
Last scanned 0 days ago.
Is it maintained?
Last commit 4 days ago. 564 GitHub stars. 44 weekly downloads.
Will it work with my client?
Transport: stdio, sse. Works with Claude Desktop, Cursor, Claude Code, and most MCP clients.
How much context will it use?
12 tools. Estimated ~1,300 tokens of your context window (0.6% of 200K).
What if it doesn't work?
Common issues: JSON syntax errors in config, wrong Node.js version, npx cache, network or firewall blocking. Setup guide covers troubleshooting. Or check GitHub issues for known problems.
{
"mcpServers": {
"kicad": {
"env": {
"LOG_LEVEL": "info",
"PYTHONPATH": "/path/to/kicad/python"
},
"args": [
"/path/to/KiCAD-MCP-Server/dist/index.js"
],
"command": "node"
}
}
}Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y pip3 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
connect_passthroughWires all pins of one connector to matching pins of another in the schematic with auto-named nets
sync_schematic_to_boardImports net assignments from schematic into the PCB
route_pad_to_padRoutes connections between pads with automatic via insertion when pads are on opposite copper layers
snapshot_projectSaves a named checkpoint into project snapshots directory
add_board_outlineAdds board outline with shape support including rounded rectangles
create_projectCreates a new KiCAD project with both schematic and PCB files
add_schematic_componentAdds a component to the schematic, supporting dynamic symbol loading from KiCAD libraries
add_connectionCreates intelligent wire connections between component pins with automatic routing
connect_to_netConnects a component pin to a power or signal net
get_net_connectionsAnalyzes and returns all components and pins connected to a specific net
project_stateCurrent KiCAD project state including components, nets, and design information
kicad://project/state
schematic_componentsList of all components in the current schematic with properties
kicad://schematic/components
board_layoutCurrent PCB board layout and footprint placement information
kicad://board/layout
design_rulesDesign rules and constraints for the current project
kicad://project/design_rules
symbol_libraryAvailable KiCAD symbol libraries with ~10,000 symbols
kicad://libraries/symbols
footprint_libraryAvailable KiCAD footprint libraries
kicad://libraries/footprints
project_netsElectrical nets defined in the project
kicad://project/nets
jlcpcb_catalogJLCPCB parts catalog with 2.5M+ components and local library search
kicad://jlcpcb/catalog
Last scanned 1h ago
No known vulnerabilities.
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.