PCB Tools

The agent has 16 PCB tools for layout and manufacturing.

Read & Inspect

pcb_get_summary

Overview of footprints, tracks, vias, zones, nets, layers.

pcb_get_summary

pcb_inspect

Inspect specific PCB sections.

pcb_inspect section="footprints"
ParameterTypeDescription
sectionstring"footprints", "tracks", "vias", "zones", "nets"

pcb_refill_zones

Refill all copper zones on the PCB. Run this after adding vias, moving components, or modifying traces.

pcb_refill_zones

pcb_run_drc

Run Design Rule Check.

pcb_run_drc output="detailed"
ParameterTypeDescription
outputstring"summary", "detailed", "grouped"

pcb_get_pads

Get pad positions for footprints.

pcb_get_pads reference="U1"

pcb_get_footprint

Detailed footprint info with pads and courtyard bounds.

pcb_get_footprint reference="U1"

pcb_get_nets

Net list with connections and routing status.

pcb_get_nets net="VCC"

Create & Modify

pcb_place

Batch footprint placement with rotation and layer selection.

pcb_place reference="U1" position=[50, 50] rotation=0 layer="F.Cu"
ParameterTypeDescription
referencestringComponent reference
positionarray[x, y] coordinates in mm
rotationnumberRotation in degrees
layerstring"F.Cu" or "B.Cu"

pcb_add

Add tracks, vias, zones, keepouts, graphics, text.

pcb_add type="track" net="VCC" points=[[10, 10], [20, 10]] width=0.25 layer="F.Cu"
ParameterTypeDescription
typestring"track", "via", "zone", "keepout", "graphic", "text"
netstringNet name (for electrical elements)
pointsarrayCoordinates
widthnumberTrack width in mm
layerstringLayer name

pcb_update

Batch update positions, nets, widths, locked state.

pcb_update references=["R1", "R2"] locked=true

pcb_delete

Delete elements by reference or UUID.

pcb_delete references=["R1"]

pcb_set_outline

Set board shape.

pcb_set_outline type="rectangle" width=50 height=30
ParameterTypeDescription
typestring"rectangle", "polygon", "rounded_rectangle"
widthnumberBoard width in mm
heightnumberBoard height in mm
corner_radiusnumberCorner radius for rounded rectangle

pcb_sync_schematic

Update PCB from schematic changes.

pcb_sync_schematic

pcb_export

Export Gerber, drill, STEP, POS files.

pcb_export format="gerber" output="/path/to/output"
ParameterTypeDescription
formatstring"gerber", "drill", "step", "pos", "bom"
outputstringOutput directory or file path

pcb_autoroute

Run Freerouting autorouter on unrouted connections.

pcb_autoroute nets=["VCC", "GND"]
ParameterTypeDescription
netsarraySpecific nets to route (optional, routes all if omitted)

pcb_setup

Read/write PCB board settings.

pcb_setup net_classes=[{name: "Power", track_width: 0.5, clearance: 0.3}]

Configures layer stackup, design rules, net classes, and teardrops.