Use Konnect MCP toolsets for live KiCad PCB operations without confusing them with verdict authority.
Resources
1Install
npx skillscat add vibebb/electrical-circuit-agent/circuit-konnect Install via the SkillsCat registry.
Circuit Konnect
For schematic authoring, validate a design brief first, load the project/library
toolsets, call get_symbol_info, place symbols with batch_place_components, and
wire the schematic like a hand-drawn one: connect the main signal chain and serial
paths with add_wire/batch_add_wire (or connect_pins/batch_connect_pins)
plus add_junction at T-junctions, reserving batch_connect_to_net labels for
power rails (VCC/GND) and nets that would otherwise cross. Do not draw pin-to-pin
wires across components. In v0.13.0 call save_project with {}.
Konnect loads most authoring operations through load_toolset, and some
harnesses never re-fetch tools/list after that call, so the operations never
appear as visible konnect_* tools. Do not loop on get_active_toolsets when
that happens. Invoke the operation through circuit_konnect_call instead:{"tool": "batch_place_components", "arguments": {...}} spawns a managed
Konnect stdio session and returns its result verbatim. Because toolset state is
session-scoped, batch related calls in the ops array so load_toolset and the
real ops share one session: {"ops": [{"tool": "load_toolset", "arguments": {"name": "sch_batch"}}, {"tool": "batch_edit_schematic_components", "arguments": {...}}]} — the call reports isError when any op fails.
v0.13.0 gates tools behind 21 toolsets: project, library,editor_navigation, sch_components, sch_wiring, sch_bus, sch_analysis,sch_batch, sch_export, sch_hierarchy, pcb_board, pcb_components,pcb_routing, placement, pcb_export, verification, integration,config, design_review, manufacturing, templates. Load the toolset
recorded for the tool in the coverage matrix; tools marked core are
always available without load_toolset. Note that sheet authoring
(create_schematic, edit_sheet, add_hierarchical_sheet) now lives insch_hierarchy, bus wiring in sch_bus, and Specctra/JLCPCB calls inintegration. As a fallback, drive
the same ops with a small stdio JSON-RPC client (the repository'sscripts/konnect_client.py pattern) against the konnect binary withKICAD_API_SOCKET set; record such terminal invocations in the summary since
they are less visible to policy than circuit_konnect_call events.
Keep the .kicad_sch under a single-writer discipline: while a Konnect
session is authoring the schematic, do not run host-side writers
(inject_title_block, fit-sheet, or any other edit) against the same
file — two writers can interleave a truncated file. Apply host-side
writes only between Konnect ops, after save_project has flushed. Whencircuit_sch_lint reports item_out_of_bounds on label/global_label/hierarchical_label items, python -m circuit fit-sheet <schematic>
clamps them back inside the frame; out-of-bounds symbols or wires must be
re-placed through Konnect ops instead.
Set KICAD_API_SOCKET=ipc:///tmp/circuit-kicad.sock and start the circuit API
server for the selected board first. Load the PCB toolset as needed, then useupdate_pcb_from_schematic, set_component_placements, route_pad_to_pad, andsave_project. The source should report ipc for live operations. Konnect is an
unmodified AGPL subprocess; the authoritative connectivity, ERC, and DRC results
remain the circuit kicad-cli-backed reports.
The complete v0.13.0 coverage matrix is inreferences/konnect-tools.json, rendered in docs/konnect-tools.md. Use it before
adding a tool to an authoring flow. IPC-required tools currently includealign_components, export_manufacturing_package (native midpoint geometry),get_board_stackup, get_component_list, query_traces,
and set_placed_footprint_models.
Advisory checks and export comparisons are recorded in the design report and never
change its kicad-cli-derived verdict. Mutating advisory tools run on copies or withdry_run where supported.
Terminal tool notes
The terminal tool runs one command per call: a payload carrying several commands is bounced
as "Cannot execute multiple commands at once". Chain with && inside a single command when you
need two steps, and write files with file_editor rather than multi-line heredocs.