# Konnect: a Rust MCP plugin that lets an LLM edit KiCAD 10 schematics and PCBs

> Konnect is the successor to KiCAD-MCP-Server, rewritten as a single Rust binary that talks to KiCAD 10 over the official IPC API. It is beta software, AGPL-3.0, and it assumes you already know how to design a board.

**mixelpixx/Konnect** — AI-assisted PCB design for KiCAD 10. Native KiCAD plugin — a single Rust binary exposing 217 schematic, layout, routing, placement, design-review, and manufacturing tools to Claude, or the LLM of your choosing

- Repository: https://github.com/mixelpixx/Konnect
- Stars: 841 · Forks: 111
- Language: Rust
- License: AGPL-3.0
- Published: 2026-09-10 · Updated: 2026-09-10 · Language: en
- Canonical page: https://hysenlabs.com/projects/mixelpixx-konnect

## The problem Konnect addresses, and who it is for

Konnect is aimed at people who already design boards in KiCAD and want an LLM to do the mechanical parts of that work: placing decoupling capacitors, wiring a pin to a net by name, rotating footprints, exporting Gerbers. The README frames the tool as a way to stop describing changes and applying them by hand. The AI works the project directly instead.

The project is a successor to KiCAD-MCP-Server, a Python and TypeScript server by the same author. The README is unusually direct about why that architecture was abandoned. In the original, a single tool call crosses TypeScript, schema validation, a spawned Python subprocess, JSON over stdin and stdout, a command router, and SWIG-generated C++ proxy objects. Konnect collapses that into a function call inside one process.

It is not a tool for someone who has never laid out a board. The README lists 226 tools across 21 toolsets, and the model is expected to pull those toolsets in on demand. Nothing in the documentation suggests the assistant will choose a sensible stackup or catch a bad power tree for you. The value is in the edits, not the engineering judgement.

## How a tool call actually reaches your board

The architecture is split by what is being edited, and the README gives a table for it. Schematic editing does not go through KiCAD at all. Konnect parses and rewrites `.kicad_sch` files with its own S-expression engine, using atomic writes (write, fsync, rename) and preserving UUIDs, with round-trip tests. That means schematic work can happen with KiCAD closed.

PCB editing is the opposite. It uses the KiCAD 10 IPC API, which the README describes as protobuf over NNG, and edits are real-time and undo-aware. Single-footprint placement has a safe headless fallback. Routing goes through Specctra: a revision-bound DSN export from Rust, local Freerouting MCP routing, and a strict one-transaction SES import. There is an authenticated KiCAD 10 native-export bridge, but the README says it is explicit opt-in.

Everything else, meaning Gerbers, PDFs, ERC and DRC, shells out to `kicad-cli`. Transport is MCP JSON-RPC over stdio by default, or Streamable HTTP when `transport` is set to `"http"` or `"both"`. Context economy is handled by a router that loads a starter kit of roughly 2K tokens and lets the model pull in the rest, against the roughly 23K tokens that listing all 226 tools would cost.

## Installing Konnect through the KiCAD Plugin and Content Manager

The recommended path is the plugin manager, not a Cargo build. Download the package for your OS from the Releases page. The assets named `konnect-pcm-v<version>-windows.zip`, `-macos.zip` and `-linux.zip` are the KiCAD plugin packages; the README notes that the other archives are standalone server binaries. The macOS package is a universal build, so one download covers Apple Silicon and Intel.

Open KiCAD 10, go to Plugin and Content Manager, click Install from File, and select the zip. Then restart KiCAD. To verify, open the PCB Editor and look under Tools, External Plugins. Konnect should be listed there.

For connecting the server to a client, the repository ships example configuration files rather than a documented install command. `examples/claude_desktop_config.example.json` and `examples/mcp.example.json` are the two starting points. The README does not print their contents, so read them from the repository and adapt the paths to your own binary location.

One optional setting is worth knowing about at install time. The README states that in KiCAD 10 the Konnect settings dialog offers a native Specctra bridge. When enabled, `export_specctra_dsn` can ask the active PCB Editor to generate its native DSN while Konnect still binds the export to the exact IPC snapshot and creates the reverse manifest used during SES import.

## Where Konnect breaks down

The README labels the release beta and says the core toolchain is tested and working but wants real-world mileage and review. That is the author's own assessment, and it should set expectations for anyone routing a production board through it.

The SWIG criticism cuts both ways. Konnect's argument is that KiCAD is deprecating the SWIG Python bindings in favour of the IPC API, so building on IPC is the forward-looking choice. The cost is that PCB editing now depends on a live KiCAD 10 session and on an IPC interface that is itself still settling. The README does not document what happens when the IPC connection drops mid-edit, nor does it describe rollback behaviour for a failed SES import beyond calling the import strict and one-transaction. If your workflow needs KiCAD 9 or earlier, Konnect is the wrong tool outright, because the IPC API it depends on is a KiCAD 10 interface.

The schematic path has a different failure mode. Editing `.kicad_sch` files directly means Konnect owns the correctness of that format. Atomic writes and UUID preservation reduce the blast radius of an interrupted write, but the README does not claim full coverage of every schematic construct, and it recommends round-trip tests rather than asserting format completeness. Keep schematics under version control before letting an assistant touch them.

## Konnect against the Python KiCAD-MCP-Server it replaces

The most useful comparison is the project's own predecessor, which the README says remains open, maintained and useful. The difference is architectural rather than feature-level.

KiCAD-MCP-Server runs on Node.js, Python, wxPython, kicad-skip and KiCAD's SWIG bindings. That is two package ecosystems plus a binding layer, and the README calls each of them a moving target that can break an install. Konnect ships as a single static binary, 20 to 25 MB depending on platform, with a roughly 9 MB download, and the README states there is nothing to install alongside it and nothing to version-match.

The operational difference is in the failure modes the README attributes to SWIG: a zone-fill call that can segfault the backend, proxy-object comparison bugs, and a fallback path that can silently swap backends mid-session. Those are the kinds of bugs that are hard to reproduce and hard to report. Konnect replaces that layer with the IPC API and adds observability tools, `get_recent_calls`, `server_stats` and JSONL call logs, so the model can inspect its own tool failures.

If you are already running the Python server successfully, there is no urgency to migrate. The reason to move is install fragility and the SWIG deprecation, not a missing feature.

## Licence and what upgrading costs you

Konnect is licensed AGPL-3.0-only, per the workspace manifest in `Cargo.toml`. The repository also contains a `COMMERCIAL.md` file, which is where a commercial licensing question should be directed. This is not legal advice, but the practical point for a design team is that AGPL-3.0 is a copyleft licence with a network-use clause, and whether it affects you depends on how you distribute or host anything built on the code. Read `COMMERCIAL.md` and `LICENSE` before assuming either way.

Upgrade cost is low in one sense and non-zero in another. The binary is self-contained, so there is no dependency tree to reconcile on upgrade. But the project is at v0.11.1 with v0.11.0 and v0.10.1 released within weeks of each other, and the README calls the release young. Expect tool names and toolset groupings to move. The README points at `docs/NAMING_CONVENTIONS.md`, which suggests naming stability is a known concern rather than a settled one.

There is also a third-party layer to track. The workspace depends on `topola_specctra` for the DSN and SES format AST, with Konnect owning the KiCad lowering and manifest. That is a small dependency surface compared to the old stack, but it is not zero.

## Conclusion

Adopt Konnect if you already design in KiCAD 10, want an LLM to do repetitive schematic capture and placement, and are willing to run beta software against your own boards in version control. Do not adopt it if you need a stable toolchain for production work, if you are on KiCAD 9 or earlier, or if an AGPL-3.0 dependency in your design flow is a problem. Verify first: that your KiCAD version is 10, that the plugin appears under Tools, External Plugins after a restart, and that a schematic edit survives a save and reopen without UUID or formatting damage.

## FAQ

### What is Konnect and what does it do?

Konnect is a native KiCAD 10 plugin, distributed as a single Rust binary, that exposes 226 schematic, layout, routing, placement, design-review and manufacturing tools to Claude and other LLMs over the Model Context Protocol. It lets an assistant place and wire schematic components, lay out and route a PCB, run ERC and DRC, and export production files.

### Is Konnect free to use?

The repository is licensed AGPL-3.0-only, so the source is available under that licence, and the README describes the KiCAD plugin packages as downloads from the Releases page. The repository also contains a COMMERCIAL.md file, which is the place to look for commercial licensing terms.

### How do I install Konnect for KiCAD?

Download the `konnect-pcm-v<version>` zip for your platform from Releases, then in KiCAD 10 open Plugin and Content Manager, click Install from File, select the zip, and restart KiCAD. The README says you can verify the install by opening the PCB Editor and checking Tools, External Plugins for Konnect.

### Does Konnect require KiCAD to be running?

Only for PCB work. The README states that schematic editing uses direct `.kicad_sch` S-expression editing with atomic writes and no KiCAD required, while PCB editing goes through the KiCAD 10 IPC API and is real-time and undo-aware.

### Which KiCAD versions does Konnect support?

The README describes Konnect as AI-assisted PCB design for KiCAD 10 and names the KiCAD 10 IPC API as its PCB backend. Nothing in the documentation claims support for earlier KiCAD releases.

## Sources

- [Issues](https://github.com/mixelpixx/Konnect/issues)
- [License: AGPL-3.0](https://github.com/mixelpixx/Konnect/blob/main/LICENSE)
- [mixelpixx/Konnect on GitHub](https://github.com/mixelpixx/Konnect)
- [README](https://github.com/mixelpixx/Konnect/blob/main/README.md)
- [Releases](https://github.com/mixelpixx/Konnect/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/mixelpixx-konnect
