Skip to main content
Glama

pcb_autoroute_apply

Applies a finished autoroute job's tracks and vias to the specified PCB board, refusing mismatched files and optionally creating a checkpoint and repouring polygons.

Instructions

Write a finished pcb_autoroute job's tracks and vias to the board.

Refuses unless the focused board is expect_file. With checkpoint (default), first snapshots the board's folder as it is ON DISK, so it can be restored with app_restore_checkpoint. Nothing is saved first: unsaved edits in the editor are not in the checkpoint, so save the board yourself beforehand if it has any. Coordinates, widths and via sizes keep their decimals.

Args: job_id: a layout_route job that has finished. expect_file: full path of the board the job routed. checkpoint: take a checkpoint first (default True). repour: repour the board's polygons afterwards when the job relied on them, as planes or as pours joining a net, or routed through their old poured copper (default True). A poured net's connections are not there, and the new copper is not cleared, until the polygons are repoured round it.

Returns: {"tracks": {placed, failed}, "vias": {placed, failed}, "checkpoint": ..., "repoured": bool, "via_in_pad": [...], "notes": [...]} or {"error": ...}. via_in_pad lists the vias written into pads (BGA balls, exposed pads), which the fabrication notes must ask to be filled and capped.

Input Schema

NameRequiredDescriptionDefault
job_idYes
repourNo
checkpointNo
expect_fileYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full behavioral load and does it well: it discloses the expect_file guard, checkpoint snapshot timing and unsaved-edit caveat, repour implications, decimal preservation, and the fabrication note requirement for via_in_pad. These are precisely the mutation side effects an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the action and critical safety warning, then structured Args and Returns sections; the extra detail on checkpoint and repour is warranted for a destructive write. No sentence appears wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex mutation tool with no annotations and an existing output schema, the description covers preconditions, side effects, checkpoint safety, repour semantics, and return fields including via_in_pad. Nothing essential for correct invocation is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must compensate; it defines all four parameters in an Args section, explaining job_id constraints, expect_file as the full board path, checkpoint default and snapshot behavior, and repour default and when needed. It adds substantial meaning beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Write') and resource ('a finished pcb_autoroute job's tracks and vias to the board'), clearly distinguishing it from the sibling pcb_autoroute that generates the job. An agent can tell this applies finished routing results to the board.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear preconditions: job_id must be a finished layout_route job and the focused board must equal expect_file, implicitly saying when not to call. It also names app_restore_checkpoint as the recovery path, but does not explicitly contrast with pcb_autoroute or other sibling tools, so it is clear context rather than full alternative routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools