KiCad Tools
PYPI · MCP-SERVER-KICAD · SCANNED AUG 18
Byte-preserving KiCad automation: 100+ tools for schematics, PCB layout, ERC, DRC, exports
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- Runs hatchling.build at install time, a recognised native-build step with no shell scripting around it. View diagnostics → Pass
- 2 of 30 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 2 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability69
- AI-judged instruction clarity (good).Pass
- Context-footprint check failed: tool/resource definitions use about 14242 tokens (~130/item across 109 items; 109 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
- Stability check failed: the tool surface changed between 0.13.0 and 0.20.1: 0 tool removals, 7 breaking changes, 0 additions. See how to fix → Fail
Tool Coverage71
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 0% of tool parameters carry a description.Fail
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
pypi · mcp-server-kicad
claude mcp add productofamerica-mcp-server-kicad -- uvx mcp-server-kicad
codex mcp add productofamerica-mcp-server-kicad -- uvx mcp-server-kicad
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"productofamerica-mcp-server-kicad": {
"type": "local",
"command": [
"uvx",
"mcp-server-kicad"
],
"enabled": true
}
}
} openclaw mcp add productofamerica-mcp-server-kicad --command uvx --arg mcp-server-kicad
mcp_servers:
productofamerica-mcp-server-kicad:
command: "uvx"
args: ["mcp-server-kicad"] {
"mcpServers": {
"productofamerica-mcp-server-kicad": {
"command": "uvx",
"args": [
"mcp-server-kicad"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 17 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20.
- 16 Aug 26 +16
- Malware scan: unverified → pass ▲ security
- 15 Aug 26 0
- Malware scan: unverified → pass ▲ security
- Package version: 0.19.2 → 0.20.1 functional
- Package version: 0.19.2 → 0.20.0 functional
- Package version: 0.19.2 → 0.19.4 functional
- Package version: 0.19.2 → 0.19.3 functional
- 14 Aug 26 −15
- Malware scan: pass → unverified ▼ security
- Stability: fail → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- Package version: 0.17.3 → 0.19.2 functional
- Package version: 0.17.3 → 0.19.1 functional
- Package version: 0.17.3 → 0.18.0 functional
- 13 Aug 26 +1
- Stability: fail → unverified ▼ security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- Package version: 0.17.1 → 0.17.3 functional
- Package version: 0.17.1 → 0.17.2 functional
- 12 Aug 26 +15
- Stability: 0.03 → fail ▼ security
- Malware scan: unverified → pass ▲ security
- Package version: 0.13.4 → 0.17.1 functional
- Package version: 0.13.4 → 0.17.0 functional
- Package version: 0.13.4 → 0.16.0 functional
- Package version: 0.13.4 → 0.15.0 functional
- Package version: 0.13.4 → 0.14.0 functional
- 11 Aug 26 0
- Schema quality: 109 → 121 ▼ functional
- Stability: unverified → 0.03 ▲ functional
- Package version: 0.13.0 → 0.13.4 functional
- Package version: 0.13.0 → 0.13.3 functional
- Package version: 0.13.0 → 0.13.1 functional
- 10 Aug 26 51
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 18 Aug 2026 · Analysed pypi/mcp-server-kicad@0.20.1
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | pypi |
Install scripts 1 script
| Hook | Tier | Command |
|---|---|---|
| build_backend | allowlisted | hatchling.build |
Dependencies 30 packages
| Packages resolved | 30 |
|---|---|
| Stale | 1 |
| No linked repository | 1 |
| Tree resolution | Complete |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
get_symbol_info Symbol details from a library file ~79
Get detailed pin and property info for a symbol in a library. Args: symbol_name: Symbol name (e.g. "LM7805") symbol_lib_path: Path to .kicad_sym file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol_lib_path | string | – | – |
| symbol_name | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
get_symbol_instances ~56
List all symbol instances from a root schematic's symbolInstances table. Args: schematic_path: Path to root .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| count | integer | yes | – |
| instances | array | yes | – |
No examples provided.
get_symbol_pins Symbol pins from the schematic's embedded library ~85
Get pin info for a symbol in the schematic's lib_symbols. Args: symbol_name: Symbol name (e.g. "LM7805", "C", "Fuse") schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| symbol_name | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
get_version ~20
Get KiCad version information including build details and library versions.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| version_info | string | yes | – |
No examples provided.
is_root_schematic ~55
Check if a schematic is the root or a sub-sheet. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| is_root | boolean | yes | – |
| root_path | – | yes | – |
No examples provided.
list_cross_sheet_nets ~60
List all nets that cross sheet boundaries (hierarchical pins and global labels). Args: schematic_path: Path to root .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| global_nets | array | yes | – |
| hierarchical_nets | array | yes | – |
No examples provided.
list_hierarchy ~54
List the full sheet hierarchy starting from a root schematic. Args: schematic_path: Path to root .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| component_count | integer | yes | – |
| root | string | yes | – |
| sheet_count | integer | yes | – |
| sheets | array | yes | – |
No examples provided.
list_lib_footprints ~48
List all footprints in a .pretty library directory. Args: pretty_dir: Path to .pretty directory containing .kicad_mod files
| Name | Type | Req | Description |
|---|---|---|---|
| pretty_dir | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
list_lib_symbols ~56
List all symbols in a .kicad_sym library file. Args: symbol_lib_path: Path to .kicad_sym file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol_lib_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
list_pcb_footprints ~52
List all footprints on the PCB. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_pcb_graphic_items ~60
List all graphic items (lines, text, etc.) on the PCB. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_pcb_layers ~115
List all layers defined in the PCB stackup: copper, silkscreen, soldermask, solder paste, courtyard, fabrication, and the board outline. Which of those a given board actually defines is up to the board. Call this before any tool that takes a layer name, since the valid set is per-board and renamed layers are common. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_pcb_nets ~52
List all named nets on the PCB. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_pcb_traces ~54
List all trace segments and vias on the PCB. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_pcb_zones ~58
List all zones (copper and keepout) on the PCB. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_bus_entries ~52
List all bus entries in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_components ~51
List all placed components in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_global_labels ~52
List all global labels in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_hierarchical_labels ~54
List all hierarchical labels in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_junctions ~53
List all junctions in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_labels ~51
List all net labels in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_no_connects ~54
List all no-connect flags in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_sheets ~52
List all hierarchical sheets in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_schematic_wires ~52
List all wire segments in the schematic. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | array | yes | – |
No examples provided.
list_unconnected_pins ~134
List unconnected pins by running ERC and filtering results. Requires kicad-cli. Auto-redirects to root schematic for sub-sheets to avoid false positives from hierarchical label context. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default. output_dir: Directory for ERC report file. Optional; omit to use the configured default. project_path: Path to .kicad_pro file for explicit root resolution
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | string | – | – |
| project_path | string | – | – |
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| note | – | – | – |
| pins | array | yes | – |
| unconnected_count | integer | yes | – |
No examples provided.
modify_hierarchical_label ~163
Modify an existing hierarchical label. Args: text: Current label text to find schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default. new_text: New label text (empty = keep current) new_shape: New shape/direction (empty = keep current) new_x: New X position (None = keep current) new_y: New Y position (None = keep current) uuid: UUID for disambiguation
| Name | Type | Req | Description |
|---|---|---|---|
| new_shape | string | – | – |
| new_text | string | – | – |
| new_x | – | – | – |
| new_y | – | – | – |
| schematic_path | string | – | – |
| text | string | yes | – |
| uuid | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
modify_hierarchical_sheet ~153
Modify properties of an existing hierarchical sheet block. Args: sheet_uuid: UUID of the sheet to modify (from list_schematic_sheets) schematic_path: Path to parent .kicad_sch. Optional; omit to use the configured default. sheet_name: New display name (empty = keep) file_name: New file path (empty = keep) width: New width in mm (None = keep) height: New height in mm (None = keep)
| Name | Type | Req | Description |
|---|---|---|---|
| file_name | string | – | – |
| height | – | – | – |
| schematic_path | string | – | – |
| sheet_name | string | – | – |
| sheet_uuid | string | yes | – |
| width | – | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
move_component ~117
Move a placed component to a new position. Args: reference: Reference designator (e.g. "R1") x: New X position y: New Y position rotation: New rotation in degrees (None = keep current) schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| reference | string | yes | – |
| rotation | – | – | – |
| schematic_path | string | – | – |
| x | number | yes | – |
| y | number | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
move_footprint ~196
Move a footprint to a new position. Args: reference: Reference designator (e.g. "R1") x: New X position y: New Y position rotation: New rotation (None = keep current) layer: New layer. Naming the other side flips the footprint: every pad, graphic and text layer mirrors with it, the local geometry mirrors, and text gains a mirrored justification, which is what KiCad's own flip does. A footprint carrying a construct whose flip has not been measured here is refused rather than half-transformed. pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| layer | string | – | – |
| pcb_path | string | – | – |
| reference | string | yes | – |
| rotation | – | – | – |
| x | number | yes | – |
| y | number | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
move_hierarchical_sheet ~113
Move a hierarchical sheet block to a new position, including all pins. Args: sheet_uuid: UUID of the sheet to move new_x: New X position in mm new_y: New Y position in mm schematic_path: Path to parent .kicad_sch. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| new_x | number | yes | – |
| new_y | number | yes | – |
| schematic_path | string | – | – |
| sheet_uuid | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
no_connect_pin ~131
Place a no-connect flag on a component pin. Resolves pin position and places a no-connect flag. Idempotent: calling again for a pin that already has one is a no-op. Args: reference: Component reference (e.g. "U2") pin_name: Pin name (e.g. "NC") or number (e.g. "3") schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pin_name | string | yes | – |
| reference | string | yes | – |
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
place_component ~322
Place a schematic symbol: resistor, capacitor, inductor, diode, LED, transistor, crystal, switch, connector, or an IC such as a microcontroller or regulator chip. Any lib_id in a library works. Args: lib_id: Library identifier (e.g. "Device:R", "Device:C", "MyLib:MyPart") reference: Reference designator (e.g. "R1", "U1") value: Component value (e.g. "10K", "100nF") x: X position in schematic units (mm) y: Y position in schematic units (mm) rotation: Rotation angle in degrees (0, 90, 180, 270) symbol_lib_path: Path to .kicad_sym file if using custom library. Optional; omit to use the configured default. mirror: Mirror axis ("x", "y", or "" for none) schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default. project_path: Path to .kicad_pro file (for correct hierarchy resolution in sub-sheets)
| Name | Type | Req | Description |
|---|---|---|---|
| lib_id | string | yes | – |
| mirror | string | – | – |
| project_path | string | – | – |
| reference | string | yes | – |
| rotation | integer | – | – |
| schematic_path | string | – | – |
| symbol_lib_path | string | – | – |
| value | string | yes | – |
| x | number | yes | – |
| y | number | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
place_footprint ~337
Place a footprint on the PCB. Name a library and a footprint to place the real thing: its pads, silkscreen, courtyard and 3D model are copied from the library file exactly as KiCad would place them. Without them you get a marker carrying only the reference and value, which has NO PADS and so cannot be routed or checked; that is the older behaviour and it is kept for callers that only want a placeholder. Use list_lib_footprints to see what a library holds. Args: reference: Reference designator (e.g. "R2") value: Component value (e.g. "4.7K") x: X position in mm y: Y position in mm rotation: Rotation in degrees layer: Layer (F.Cu or B.Cu) library: Footprint library nickname (e.g. "Resistor_SMD"), or a path to a .pretty directory. Optional; omit for a pad-less marker. footprint: Footprint name within that library (e.g. "R_0805_2012Metric"). Required when library is given. pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| footprint | string | – | – |
| layer | string | – | – |
| library | string | – | – |
| pcb_path | string | – | – |
| reference | string | yes | – |
| rotation | number | – | – |
| value | string | yes | – |
| x | number | yes | – |
| y | number | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_component ~72
Remove a component by reference designator. Args: reference: Reference designator to remove (e.g. "U2") schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| reference | string | yes | – |
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_dangling_tracks ~88
Detect and remove trace segments with unconnected endpoints. Iteratively removes dangling segments until no more are found. A segment is considered dangling if either endpoint does not connect to a pad, via, or another trace endpoint. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| iterations | integer | yes | – |
| tracks_removed | integer | yes | – |
No examples provided.
remove_footprint ~72
Remove a footprint by reference designator. Args: reference: Reference designator (e.g. "R1") pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pcb_path | string | – | – |
| reference | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_hierarchical_label ~91
Remove a hierarchical label by name or UUID. Args: text: Label text to match schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default. uuid: Optional UUID for disambiguation when multiple labels share a name
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| text | string | yes | – |
| uuid | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_hierarchical_sheet ~143
Remove a hierarchical sheet block from a parent schematic. Identify the sheet by name, uuid, or both. If name matches multiple sheets, returns an error with UUIDs for disambiguation. Args: parent_schematic_path: Path to parent .kicad_sch name: Sheet name to match uuid: Sheet UUID for unambiguous identification delete_child_file: If True, delete the child .kicad_sch file (unless still referenced by another sheet)
| Name | Type | Req | Description |
|---|---|---|---|
| delete_child_file | boolean | – | – |
| name | – | – | – |
| parent_schematic_path | string | yes | – |
| uuid | – | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_junction ~76
Remove a junction at the given coordinates. Args: x: X position y: Y position schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| x | number | yes | – |
| y | number | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_label ~168
Remove net label(s) or global label(s) by text, optionally filtered by position. If x and y are provided, only removes labels matching both text AND position (within 0.1mm tolerance). Otherwise removes ALL labels with matching text. To move a global label, remove it and re-add with add_global_label (which takes shape and rotation). Args: text: Label text to match (e.g. "VCC", "PGND") x: Optional X position filter y: Optional Y position filter schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| text | string | yes | – |
| x | – | – | – |
| y | – | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_no_connect ~129
Remove no-connect flag(s) from a component pin. Removes every no-connect at the pin's position, so stacked duplicates from repeated no_connect_pin calls clear in one go. Args: reference: Component reference (e.g. "U2") pin_name: Pin name (e.g. "NC") or number (e.g. "3") schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pin_name | string | yes | – |
| reference | string | yes | – |
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_sheet_pin ~87
Remove a pin from a hierarchical sheet block. Args: sheet_uuid: UUID of the sheet pin_name: Name of the pin to remove schematic_path: Path to parent .kicad_sch. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| pin_name | string | yes | – |
| schematic_path | string | – | – |
| sheet_uuid | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_text ~129
Remove text annotation(s) by content, optionally filtered by position. If x and y are provided, only removes texts matching both content AND position (within 0.1mm tolerance). Otherwise removes ALL texts with matching content. Args: text: Text content to match x: Optional X position filter y: Optional Y position filter schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| text | string | yes | – |
| x | – | – | – |
| y | – | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
remove_traces ~189
Remove trace segments matching the given filters. Does not remove vias. At least one filter (net_name, layer, or bounding box) is required. Args: net_name: Filter by net name layer: Filter by layer name (e.g. "F.Cu", "B.Cu") x_min: Left edge of bounding box filter (mm) y_min: Top edge of bounding box filter (mm) x_max: Right edge of bounding box filter (mm) y_max: Bottom edge of bounding box filter (mm) pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| layer | – | – | – |
| net_name | – | – | – |
| pcb_path | string | – | – |
| x_max | – | – | – |
| x_min | – | – | – |
| y_max | – | – | – |
| y_min | – | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| layer | – | yes | – |
| net | – | yes | – |
| traces_removed | integer | yes | – |
No examples provided.
remove_wire ~138
Remove a wire segment by its endpoint coordinates. Matches wires with endpoints within 0.1mm tolerance (in either order). Use list_schematic_wires to get wire coordinates first. Args: x1: Start X y1: Start Y x2: End X y2: End Y schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| schematic_path | string | – | – |
| x1 | number | yes | – |
| x2 | number | yes | – |
| y1 | number | yes | – |
| y2 | number | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
reorder_sheet_pages ~75
Reorder hierarchical sheets by specifying the desired UUID order. Args: page_order: List of sheet UUIDs in desired order schematic_path: Path to root .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| page_order | array | yes | – |
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
run_drc ~93
Run Design Rules Check (DRC) on a PCB. Returns structured report with violations. Args: pcb_path: Path to .kicad_pcb file. Optional; omit to use the configured default. output_dir: Directory for report file (default: same as PCB). Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | string | – | – |
| pcb_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| kicad_version | string | yes | – |
| note | – | – | – |
| source | string | yes | – |
| unconnected_count | integer | yes | – |
| unconnected_items | array | yes | – |
| violation_count | integer | yes | – |
| violations | array | yes | – |
No examples provided.
run_erc ~139
Run Electrical Rules Check (ERC) on a schematic. Auto-redirects to root schematic for sub-sheets to avoid false positives from missing hierarchical context. Returns JSON report with violations. Args: schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default. output_dir: Directory for report file (default: same as schematic). Optional; omit to use the configured default. project_path: Path to .kicad_pro file for explicit root resolution
| Name | Type | Req | Description |
|---|---|---|---|
| output_dir | string | – | – |
| project_path | string | – | – |
| schematic_path | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| kicad_version | string | yes | – |
| note | – | – | – |
| source | string | yes | – |
| violation_count | integer | yes | – |
| violations | array | yes | – |
No examples provided.
run_jobset ~43
Run a KiCad jobset file. Args: jobset_path: Path to .kicad_jobset file
| Name | Type | Req | Description |
|---|---|---|---|
| jobset_path | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
set_component_property ~207
Set any property on a placed component, or rename it. Creates the property if it is missing. Reference, Value and Footprint are mirrored into the symbol's own instances and into the root symbol_instances table, so setting key="Reference" is how a component is renamed and both views stay in step. The root table needs the .kicad_pro to resolve the hierarchy path; a loose .kicad_sch with no project beside it keeps the symbol correct and leaves that table alone. Args: reference: Component reference (e.g. "R1") key: Property name (e.g. "MPN", "Tolerance", "Value") value: Property value schematic_path: Path to .kicad_sch file. Optional; omit to use the configured default.
| Name | Type | Req | Description |
|---|---|---|---|
| key | string | yes | – |
| reference | string | yes | – |
| schematic_path | string | – | – |
| value | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.