Skip to main content
Glama

pcb_autoplace_apply

Apply finished autoplace results by moving parts onto the expected board, with an optional checkpoint before changes.

Instructions

Move the parts of a finished pcb_autoplace job on 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; unsaved edits in the editor are not in it, so save first if there are any. Positions are whole mils, as the job reported and judged them.

Args: job_id: a layout_place job that has finished. expect_file: full path of the board the job placed. checkpoint: take a checkpoint first (default True).

Returns: {"moved", "failed", "expected", "checkpoint", "notes"} or {"error": ...}.

Input Schema

NameRequiredDescriptionDefault
job_idYes
checkpointNo
expect_fileYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the burden well: it discloses the refusal condition, that the checkpoint snapshots the folder ON DISK (so unsaved editor state is excluded), and that positions are whole mils. It does not state what happens to components absent from the job or whether a failure leaves a partial placement, which matters for a mutation tool.

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

Conciseness4/5

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

Front-loaded with the action, then constraints, then Args, then Returns. The Args section is necessary given zero schema coverage, though a few lines (e.g. restating the default already in the schema) are redundant; still, no sentence is wasted overall.

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 3-parameter mutation tool with no annotations, the description supplies the precondition, the side effect (checkpoint), the unit convention, and the failure mode ('Refuses'). A return shape exists in the output schema, so the short Returns line is bonus rather than a gap.

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 description coverage is 0%, yet the description defines all three parameters meaningfully: job_id must be a finished layout_place job, expect_file is the full path that must match the focused board, and checkpoint defaults to True and controls the on-disk snapshot. This adds substantial meaning beyond the bare schema titles.

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 and resource: 'Move the parts of a finished pcb_autoplace job on the board.' The 'finished job' scoping implicitly separates it from pcb_autoplace (which creates the job) and from pcb_plan_placement, so the agent can identify the apply step without opening a schema.

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?

Gives an explicit precondition ('Refuses unless the focused board is expect_file') and a sequencing requirement ('save first if there are any' unsaved edits). It also points at app_restore_checkpoint for undoing the checkpoint. It does not explicitly name pcb_autoplace as the tool that produces the job_id, leaving that one hop to inference.

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