Skip to main content
Glama
sheares

easyeda-mcp-fix

by sheares

pcb_import_changes

Destructive

Import schematic changes into the PCB to sync design updates and keep components and nets aligned with the current schematic.

Instructions

Import changes from schematic into the PCB (sync schematic to PCB). Warning (upstream EDA bug, pro-api-sdk issue #33): pads of components newly placed by this call can read back with a null pad number until the PCB document is reloaded, and DRC may report an unstructured "Netlist Error". Close and reopen the PCB document (or reload via editor_open_document) before reading pads of freshly placed components.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
uuidNoSchematic UUID (uses associated schematic if not provided)
documentYesTarget document UUID — auto-switches to this document before executing. Get UUIDs from list_instances or editor_get_open_tabs.
instance_idNoTarget EasyEDA instance ID (8-char hex). Required when multiple instances are connected. Omit when only one instance is connected (auto-selected). Use list_instances to see connected instances.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.6.5

TDQS

A3.9/5.0
Behavior5/5

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

Annotations already flag destructiveHint=true and idempotentHint=false, but the description goes well beyond that: it discloses a specific upstream bug (pads reading back null pad number), an unstructured DRC 'Netlist Error', and a concrete remediation (reload via editor_open_document). This is exactly the kind of behavioral context annotations cannot convey.

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-loads the purpose in the first sentence, then delivers the warning with issue reference and fix. It is somewhat dense due to the quoted error string, but every sentence earns its place given the severity of the disclosed bug.

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

Completeness4/5

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

For a destructive sync operation with full schema coverage and no output schema, the description covers the critical operational risk and remediation path. It omits what the sync actually mutates (component/net addition vs. deletion), a minor gap for a destructive tool.

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 100%, with each of the three parameters documented inline (uuid, document, instance_id) including how to obtain UUIDs. The description adds no parameter-level detail, so the baseline 3 applies.

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

Purpose4/5

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

States a specific verb and resource with directionality: 'Import changes from schematic into the PCB (sync schematic to PCB).' This clearly signals the schematic-to-PCB direction, though it never names the reverse-direction sibling sch_import_changes, so an agent distinguishing the two must infer from the parenthetical.

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?

The description implies when to use it (to sync schematic changes into the PCB) but gives no explicit when-not guidance and does not name sch_import_changes as the opposite-direction alternative or pcb_import as a related tool. Usage is inferable but not spelled out.

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