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
CLI

Extended access

Why this level

  • Runs code and reads and writes project files
  • The datasheet features reach the network
All reasons and checks

rjwalters/kicad-tools

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/kicad-tools

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended 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 JSON

Limitations

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.

CLI tools

Skills for coding agents that analyze KiCad schematics and boards, catch design mistakes and prepare boards for fabrication

PluginExtended access1.7KRepository stars

MCP server for KiCad: schematics, PCBs, ERC and DRC checks, DFM and manufacturing prep from an agent

MCP serverExtended access212Repository stars

A CLI agent for circuit boards: edits KiCad schematics and boards from a description and checks itself with ERC and DRC

CLIBroad access694Repository stars

An MCP server for PCB design in KiCAD: the agent places components, routes connections, runs DRC and prepares manufacturing files

MCP serverExtended access3.3KRepository stars

An MCP server that lets an agent edit an open project in Altium Designer, KiCad or EasyEDA Pro: schematics, boards, libraries, checks

MCP serverBroad access355Repository stars

A Codex skill that guides KiCad component placement, routing and copper pours and prepares the board for ordering

SkillExtended access173Repository stars

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.

README badge

Report a problem