KiCad schematic capture, PCB layout, ERC, DRC, and manufacturing exports
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β we're steadily working through the catalog.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by KiCad.
get_schematic_summaryGet item counts for a schematic sheet
list_schematic_componentsList all components (symbols) on a sheet
list_schematic_labelsList all net labels on a sheet
list_schematic_wiresList all wires on a sheet
list_schematic_global_labelsList all global labels on a sheet
list_schematic_hierarchical_labelsList all hierarchical labels on a sheet
Let an AI assistant edit real KiCad projects without corrupting them.
109 MCP tools covering schematic capture, PCB layout, symbol and footprint libraries, ERC and DRC, and manufacturing exports. No screenshots, no copy-paste, no hand-edited s-expressions: the model calls tools, KiCad files change on disk.
Quick start β’ What you get β’ Configuration β’ Tool reference β’ Requirements β’ Contributing
Every tool works on the real file. Writes go through a byte-preserving substrate, so bytes you did not ask to change reach the disk unchanged, and an edit that cannot be done correctly is refused with the file intact. That now covers every board and schematic this server writes. The two library upgrades are the only tools that let KiCad do the writing, and they say so on themselves.
Install the plugin. It wires up the server and ships the design skills with it:
Download kicad-<version>.mcpb from the latest release and install it
from Settings, then Extensions. Claude Desktop fetches Python and the package
itself, so KiCad is the only thing you need installed first.
Fill in the schematic, board, and export paths it asks for. Unlike the Claude
Code plugin, Desktop does not run from your project directory, so nothing is
auto-detected. Leave the kicad-cli field blank unless KiCad lives somewhere
unusual; stock installs are found on their own, on every platform. The design
skills are Claude Code only.
Then point your MCP client at the unified server and set cwd to a KiCad
project directory so paths resolve themselves:
That single entry registers all 109 tools. Prefer to split them across five smaller servers? See Configuration.
Run them as one unified server, or separately when you want a smaller tool surface in context.
| Server | Tools | What it does |
|---|---|---|
mcp-server-kicad-schematic | 42 | Schematic read/write, net tracing, ERC, exports (PDF, SVG, DXF, netlist, BOM) |
mcp-server-kicad-pcb | 34 | Board read/write, netlist import, zones, DRC, autorouting, exports (Gerber, drill, 3D, pick-and-place) |
mcp-server-kicad-project | 24 | Project scaffolding, hierarchical sheets, hierarchy validation, annotation, cross-sheet net tracing |
mcp-server-kicad-symbol | 5 | Symbol library browsing, authoring, SVG export, format upgrade |
mcp-server-kicad-footprint | 4 | Footprint library browsing, SVG export, format upgrade |
Tools alone let a model click every button. The bundled skills teach it which buttons, in what order, and what "done" looks like.
| Skill | Kicks in when |
|---|---|
using-kicad | Any electronics or EDA conversation starts. Routes to the right skill below |
circuit-design | Choosing topology, regulators, and component values, before any file exists |
schematic-plan | Planning exact placement coordinates and wiring. Pure planning, no writes |
schematic-design | Executing that plan, or modifying an existing schematic |
pcb-layout | Placing footprints, routing, zones, stackup, trace widths |
verification | ERC and DRC failures, unconnected nets, export prep |
The design skills hand their artifacts to independent reviewer subagents
(agents/) before moving on, so a bad BOM or a bad placement plan
gets caught before it becomes a schematic.
Five entries instead of one, when you want to load only part of the tool surface:
Each is also runnable directly:
Highest priority wins:
.kicad_pro, and
the schematic, board, and library paths are derived from it.| Variable | Points at |
|---|---|
KICAD_SCH_PATH | a .kicad_sch schematic file |
KICAD_PCB_PATH | a .kicad_pcb board file |
KICAD_SYM_LIB | a .kicad_sym symbol library file |
KICAD_FP_LIB | a .pretty footprint library directory |
KICAD_OUTPUT_DIR | where exports and reports are written |
kicad-cli: ERC, DRC,
and every export. The read and write tools parse files directly and need no
KiCad install at all.CI runs the full suite on Linux against KiCad 9 and on macOS against KiCad 10, plus a KiCad-free matrix across Python 3.10 through 3.13.
kicad-cli is looked up on PATH, then inside /Applications/KiCad/KiCad.app
on macOS, then in the standard Windows install folders, machine-wide under
Program Files and per-user under AppData, newest version first. Neither
installer adds it to PATH. Everything else in the KiCad tree is located
relative to it, the same way KiCad itself does it, so a stock install on any
platform needs no configuration: the stock symbol libraries and the bundled
Python that provides pcbnew are both found automatically.
Override any of it if your install is unusual:
| Variable | Overrides |
|---|---|
KICAD_CLI_PATH | the kicad-cli executable, and everything derived from its location |
KICAD_SYMBOL_DIR | the directory holding the stock .kicad_sym libraries |
KICAD_PYTHON | the interpreter used for pcbnew (fill_zones, autoroute_pcb) |
CLI-backed tools are always registered. Without kicad-cli they fail with a
message naming KICAD_CLI_PATH, rather than vanishing from the tool list.
| File | What works today |
|---|---|
.kicad_sch | Everything, read and write: the whole schematic server and the whole project server |
.kicad_pcb | Everything, read and write |
.kicad_sym, .kicad_mod | Everything: your own libraries as well as the stock ones |
Every tool parses and edits through the byte-preserving substrate, so none of them refuses a file on its format version, and none of them rewrites bytes you did not ask to change. Two caveats are worth knowing about.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/kicad)<a href="https://allmcps.com/mcp/kicad"><img src="https://allmcps.com/api/badge/kicad?style=directory" alt="KiCad on AllMCPs" /></a>