kicad-tools CLI
The kct CLI and a Python library for agents: parse and edit KiCad schematics and PCBs with JSON output, run DRC and ERC without a running KiCad
- 74 ★ on the repository
- Last commit
- MIT
Extended access
Why this level
- Runs code and reads and writes project files
- The datasheet features reach the network
Install
- Works in
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/kicad-toolsDetects the agents on your machine, shows the access level and pins the version.
Other ways to install
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Runs code and reads and writes project files
- The datasheet features reach the network
This is third-party code. Review the repository files before installing.
What it does
The toolkit parses KiCad files into clean Python objects and edits schematics and boards without a GUI, and every CLI command can emit JSON. Through the kct command you get symbol listings, net tracing, a bill of materials, ERC, and DRC against a chosen manufacturer's rules. It adds an autorouter, placement optimization by physics-based and evolutionary methods, trace optimization, ready circuit blocks, and IPC-7351 footprint generators. A separate module exposes a reasoning interface where an LLM makes placement decisions while the tools handle geometry. It also ships an MCP server and datasheet tooling for search, download, and PDF parsing.
Who it is for. For hardware engineers and developers who automate KiCad work or build agents that design PCBs.
Good fit when
- You need to parse or modify a KiCad schematic or board from a script and get JSON
- You need to run ERC or DRC against manufacturer rules in CI
- An agent should reason about board placement and routing
Not a fit when
- You need manual work in the GUI editor rather than automation
- The project is unrelated to KiCad and electronics
Example request
Run DRC on board.kicad_pcb against jlcpcb rules and return the violations as JSONLimitations
ERC and some checks rely on the external kicad-cli; without it they are skipped. GPU acceleration, the native C++ router, placement optimization, and the MCP server install as separate extras. The datasheet features reach the network for search and download. The project is marked beta.
How to disable. Remove the package with pip uninstall kicad-tools. If you configured the MCP server, delete the kicad-tools entry from your agent's config.
FAQ
Do I need KiCad installed?
Parsing, editing, and pure-Python DRC work without a running KiCad. ERC and some checks need the external kicad-cli.
Can I use it as an MCP server?
Yes, install the mcp extra and run kct mcp serve or python -m kicad_tools.mcp.server, then add the server to your agent config.
Discussion
No questions or reviews yet.
Related
CLI toolsSkills for coding agents that analyze KiCad schematics and boards, catch design mistakes and prepare boards for fabrication
MCP server for KiCad: schematics, PCBs, ERC and DRC checks, DFM and manufacturing prep from an agent
A CLI agent for circuit boards: edits KiCad schematics and boards from a description and checks itself with ERC and DRC
An MCP server for PCB design in KiCAD: the agent places components, routes connections, runs DRC and prepares manufacturing files
An MCP server that lets an agent edit an open project in Altium Designer, KiCad or EasyEDA Pro: schematics, boards, libraries, checks
A Codex skill that guides KiCad component placement, routing and copper pours and prepares the board for ordering
README in short
The README presents standalone Python tools for agents that work with KiCad schematics and boards and emit machine-readable JSON without a running KiCad. It covers the kct command, the Python API, the autorouter, an LLM reasoning module, an MCP server, circuit blocks, whole-project workflow, footprint generators, pure-Python DRC, placement and trace optimization, and datasheet tooling. The package installs through pip with optional extras for GPU, the native router, and placement. It is MIT licensed, needs Python 3.10 or newer, and has a gallery of example boards on a separate site.