Konnect *BETA Release
AI-assisted PCB design for KiCAD 10. Konnect is a native KiCAD plugin — a singleRust binary — that lets Claude and other AI assistants design schematics and PCBsthrough the Model Context Protocol (MCP).
187 tools across 18 on-demand toolsets. Schematic capture, PCB layout androuting, ERC/DRC, design-review audits, JLCPCB part search, Freerouting, referencecircuits, and a full manufacturing export pipeline — with bundled skills and agentsthat teach Claude KiCAD conventions out of the box.
Status: beta. The core toolchain is tested and working, but this is a youngrelease and it wants real-world mileage and review. Issues and PRs are welcome —see CONTRIBUTING.md and thenaming conventions.
Add realtime research to KiCAD MCP and Konnect. Introducing Nimrod
Nimrod is our web-research MCP server:quality-scored Google search, clean webpage extraction, and deep multi-sourceresearch. Design the board with Konnect while Nimrod pulls live parts availability, datasheets,and errata — no more guessing from year-old training data
- Works with claude.ai, Claude Desktop, Claude Code, VS Code, and any MCP client
- 1 credit = 1 search · extraction always free · free 50-credit trial, no card
- Official MCP Registry:
ai.orchis/nimrod
Why Konnect exists
Konnect is the successor to KiCAD-MCP-Server,a Python/TypeScript project that proved AI-driven PCB design works — and, in theprocess, showed exactly where that architecture runs out of road. Konnect was builtto fix those specific problems:
The call path was too long. In the original server, a single tool call travelsthrough TypeScript, schema validation, a spawned Python subprocess, JSON overstdin/stdout, a command router, and finally SWIG-generated C++ proxy objects beforeanything touches your board. That's four language and serialization boundaries, eachwith its own failure modes — subprocess lifecycle management, stdout parsing thatfilters out warnings KiCAD leaks into the stream, chunked-JSON reassembly. InKonnect, a tool call is a function call. One process, one language, no plumbing.
The dependency surface was enormous. Running the original means carrying Node.jsand its npm tree, Python and its pip packages, wxPython, kicad-skip, and KiCAD'sSWIG bindings — two package ecosystems plus a binding layer, every one of them amoving target that can break an install. Konnect is a single static binary, about5 MB. There is nothing to install alongside it and nothing to version-match.
SWIG is a dead end. The original's PCB backend depends on KiCAD's SWIG Pythonbindings, which KiCAD is deprecating in favor of its IPC API. SWIG also carriedreal operational scars: a zone-fill call that can segfault the backend, proxy-objectcomparison bugs, and a fallback path that can silently swap backends mid-session.Konnect talks to KiCAD 10 through the official IPC API (protobuf over NNG) — theinterface KiCAD is investing in — with real-time board edits that integrate withKiCAD's own undo/redo.
Schematic edits should not corrupt files. Konnect edits .kicad_sch filesthrough its own S-expression engine with atomic writes (write, fsync, rename), UUIDpreservation, and round-trip tests — no third-party schematic library with knowngaps, no text-manipulation workarounds.
Context economy is a feature. Exposing ~180 tools to an LLM costs roughly 23Ktokens of context on every listing. Konnect's router loads a starter kit (~2Ktokens) and lets the model pull in toolsets on demand — plus built-in observability(get_recent_calls, server_stats, JSONL call logs) so the model can diagnose itsown tool failures.
The result is smaller, faster to install, aligned with where KiCAD is going, andbuilt for production use rather than experimentation. The original project remainsopen, maintained, and useful — see the comparison below.
What it does
Instead of describing changes and applying them by hand, the AI works your projectdirectly:
- Place and wire schematic components — add resistors, ICs, connectors; wire themtogether by pin name
- Lay out the PCB — place, move, rotate, and route footprints in real time viaKiCAD's IPC API, with full undo/redo integration
- Run design checks — ERC, DRC, connectivity validation, decoupling audits,power-rail review, BOM health checks
- Export production files — Gerbers, drill, BOM, pick-and-place, 3D models, PDF
- Search JLCPCB parts — find in-stock components in a local 2.5M-part catalog andsuggest alternatives
- Start from reference circuits — USB-C, LDO, buck converter, STM32, I2C, LEDtemplates with verified component values
- Watch it happen — a live schematic viewer auto-refreshes as the AI edits
The full tool catalog is documented in tool-directory.md.
How it works
| Layer | Mechanism |
|---|---|
| Schematic editing | Direct .kicad_sch S-expression editing with atomic writes (no KiCAD required) |
| PCB editing | KiCAD 10 IPC API (NNG + protobuf) — real-time, undo-aware, requires KiCAD running |
| Exports & checks | kicad-cli subprocess (Gerber, PDF, ERC, DRC, …) |
| Transport | MCP JSON-RPC over stdio (default), or Streamable HTTP (transport = "http" / "both") |
Installation
From the KiCAD Plugin Manager (recommended)
- Download the package for your OS from Releases:
konnect-pcm-v<version>-windows.zip,-macos.zip, or-linux.zip. Eachbundles that platform's server binary — the macOS package is a universalbuild, so one download covers Apple Silicon and Intel. (Thekonnect-pcm-*assets are the KiCAD plugin packages; the other archives are standaloneserver binaries.) - Open KiCAD 10 → Plugin and Content Manager
- Click Install from File and select the zip
- Restart KiCAD
Verify: open the PCB Editor → Tools → External Plugins → you should seeKonnect.
Build from source
# protoc is required (protobuf code generation), and cmake (the nng crate
# compiles the NNG C library with it).
# Windows: choco install protoc cmake
# macOS: brew install protobuf cmake
# Linux: apt install protobuf-compiler cmake
cargo build --release -p konnect
macOS
The Releases page shipsstandalone server binaries for both Apple Silicon (aarch64-apple-darwin) andIntel (x86_64-apple-darwin). They are not yet code-signed, so if you downloadone through a browser, clear the quarantine flag before first launch:
tar xzf konnect-v*-aarch64-apple-darwin.tar.gz
xattr -d com.apple.quarantine ./konnect # only needed for browser downloads
./konnect --help
Or build from source as above (verified on Apple Silicon; the sametarget/release/konnect binary is the MCP server).
KiCad on macOS keeps its tools inside the app bundle and they are not onPATH, so point Konnect at them in ~/Library/Application Support/konnect/config.toml:
kicad_cli = "/Applications/KiCad/KiCad.app/Contents/MacOS/kicad-cli"
kicad_binary = "/Applications/KiCad/KiCad.app/Contents/MacOS/kicad"
# KiCad 10's IPC socket on macOS (enable it in KiCad:
# Preferences → Plugins → "Enable KiCad API")
ipc_address = "ipc:///tmp/kicad/api.sock"
Claude Desktop's config lives at~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"konnect": {
"command": "/path/to/konnect"
}
}
}
For Claude Code, put the same snippet in a .mcp.json in your project root.
Starting with the next release, the PCM package for macOS(konnect-pcm-v<version>-macos.zip) bundles a universal server binary; forv0.1.3 and earlier, install via a release tarball or a source build. The schematicviewer compiles and launches on macOS (Tauri 2 uses the system WKWebView —WebView2 is only a Windows requirement) but hasn't had the same mileage asthe Windows build yet.
Setup with Claude Desktop
After a PCM install, the server binary lives in your KiCAD documents folder:
C:\Users\<YOU>\Documents\KiCad\10.0\3rdparty\plugins\com_github_mixelpixx_konnect\bin\konnect.exe
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"konnect": {
"command": "C:\\Users\\<YOU>\\Documents\\KiCad\\10.0\\3rdparty\\plugins\\com_github_mixelpixx_konnect\\bin\\konnect.exe"
}
}
}
Restart Claude Desktop and the Konnect tools appear. For Claude Code, drop the samesnippet into a .mcp.json in your project root (see examples/).
Schematic viewer
A standalone viewer that auto-refreshes as the schematic file changes:
schematic-viewer.exe path\to\your\root_schematic.kicad_sch
Point it at the root sheet of a hierarchical design and every sub-sheet is renderedtoo, with a depth-indented sheet selector in the toolbar. Edits saved from KiCAD (ormade by the AI through the schematic tools) re-render only the sheets that changedand refresh the view live — rendering runs against temp-folder snapshots, so theviewer never blocks KiCAD from saving. Pan with click-drag, zoom with the wheel,0 to fit, R to refresh, drag-and-drop to open a different file. Also launchableby the AI via the open_schematic_viewer tool.
Needs the WebView2 runtime (pre-installed on Windows 10/11) and a KiCAD install forkicad-cli (auto-discovered, or pass --kicad-cli <path>). Built separately fromthe main workspace — see DEV.md for build steps.
Requirements
- KiCAD 10 (Windows is the most-tested platform; macOS works from the releasebinaries or a source build — see the macOS section above. Linuxcompiles and passes tests in CI but hasn't had per-platform QA yet; both aretracked on the roadmap)
kicad-cli(ships with KiCAD — used for exports, ERC, DRC)- For PCB tools: KiCAD running with the target board open (IPC API)
License: free for the little guys
Konnect is licensed under the GNU AGPL-3.0.
If you're a hobbyist, student, freelancer, or open-source project: use it freely,no strings attached. Design boards, ship them, sell them.
If you're a business: the AGPL requires that anything you build on or around Konnect —including software provided over a network — be open-sourced under the same license.If that doesn't work for you, commercial licenses are available: seeCOMMERCIAL.md.
Relationship to KiCAD-MCP-Server
The original Python/TypeScript projectremains fully open (MIT) and maintained. Konnect is where new development happens —the architecture it proved, rebuilt for production:
| KiCAD-MCP-Server | Konnect | |
|---|---|---|
| Runtime | Node.js + Python + SWIG bindings | Single static binary (~5 MB) |
| Tool call path | TS → subprocess → Python → SWIG C++ | Direct function call |
| PCB backend | SWIG (deprecated by KiCAD) + experimental IPC | KiCAD 10 IPC API |
| Schematic backend | kicad-skip + custom loaders | Native S-expression engine, atomic writes |
| Context cost | Router pattern | Load/unload toolsets + observability |
| Skills / agents | — | 6 skills + 2 agents bundled |
| License | MIT | AGPL-3.0 + commercial |
Troubleshooting
Plugin doesn't appear in KiCAD — install via the Plugin and Content Manager (notmanual copy), then restart KiCAD.
PCB tools return "IPC connect failed" — open KiCAD with your board file first;PCB tools talk to the running PCB editor.
"kicad-cli not found" — common install paths are auto-detected; set the pathexplicitly in the plugin settings dialog or your konnect-settings.json if yoursis elsewhere.
Support
- Issues & feature requests: GitHub Issues
- Roadmap: ROADMAP.md
- Contributing: CONTRIBUTING.md