Skip to main content
Glama
HackInvent
by HackInvent

update_bom_fields

Destructive

Update custom BOM fields, values, or assembly flags on specified PCB references in a single undo step, without altering the schematic.

Instructions

Update custom BOM fields, value or assembly flags on exact PCB references in one undo step; do not save or change the schematic.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dnpNo
valueNo
fieldsNo
referencesYes
exclude_from_bomNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.8/5.0
Behavior4/5

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

The description adds behavioral context beyond the annotations: it notes the operation is atomic ('in one undo step') and explicitly states it does not save or change the schematic. This complements the destructiveHint=true annotation and gives the agent a clearer picture of side effects.

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 a single, front-loaded sentence with no filler. It states the action first, then the atomicity and scope restrictions, making every word earn its place.

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

Completeness2/5

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

Given 5 parameters and zero schema descriptions, the description is insufficient. It does not explain the format of the 'fields' parameter, does not enumerate which parameters correspond to assembly flags (dnp vs exclude_from_bom), and omits how references should be formatted. The output schema exists, but that does not compensate for missing parameter semantics. An agent would likely need to infer or experiment to use it correctly.

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

Parameters3/5

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

Schema description coverage is 0%, so the description must compensate. It gives a high-level mapping of parameters: 'custom BOM fields' to fields, 'value' to value, and 'assembly flags' to dnp and exclude_from_bom. However, it does not explain the structure of the fields object (string-to-string map) or enumerate which flags are included, leaving some ambiguity.

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?

The description clearly states the tool updates BOM fields, value, and assembly flags on exact PCB references, which is a specific verb+resource. It distinguishes itself from read-only siblings like get_bom and export_bom, and the scope 'exact PCB references' adds precision.

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

Usage Guidelines3/5

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

It provides context by stating it does not save or change the schematic, which helps scope usage, but it does not explicitly name alternatives or conditions for when to use this tool over others. The sibling list offers no direct alternative for updating BOM data, so guidance is implied rather than explicit.

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