Skip to main content
Glama
uSimmics MCP Bridge

uSimmics MCP Bridge

by timecino-hub

build_schematic

Destructive

Build and save circuits from component and pin descriptions, including orthogonal connections and harmonics, without writing .sch syntax.

Instructions

Build and save a circuit from component/pin descriptions without writing .sch syntax.

Components: {type,name,position:[x,y],orientation:0..3,params:{parameter:value}}. Diode additionally requires model='BAT54' (loaded locally) or explicit properties. Connections: {from:{component,pin},to:{component,pin},via:[[x,y]],label:optional}. Pins are zero-based; default R/filter/diode pin0 left, Vac pin0 top, GND pin0 center. All routes must be orthogonal. Different-net crossings/touches are rejected. Harmonics: {order:3,count:4}. Source frequencies are inserted automatically.

Input Schema

NameRequiredDescriptionDefault
pathYes
harmonicsNo
componentsYes
connectionsYes
expected_sha256No

Output Schema

NameRequiredDescriptionDefault
pathYes
savedYes
backupYes
sha256Yes
warningsYes
gui_reload_requiredYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, readOnlyHint=false, and idempotentHint=false, so the description need not restate that this writes. It adds real behavioral rules beyond the annotations – orthogonal routing required, different-net crossings rejected, source frequencies auto-inserted – which materially affect how the call is constructed. However it never mentions that writing to an existing path may overwrite it, nor what expected_sha256 guards, leaving the destructive behavior under-disclosed.

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?

Front-loaded one-line purpose followed by a terse field-by-field breakdown; no filler sentences. The compressed notation ('default R/filter/diode pin0 left') is dense but every clause conveys a usable constraint.

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

Completeness3/5

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

An output schema exists and annotations cover the safety profile, so those areas need no prose. But for a 5-parameter destructive tool with no top-level schema descriptions, the omission of path semantics (create vs overwrite) and expected_sha256's optimistic-concurrency role is a meaningful gap.

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

Parameters4/5

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

Top-level schema description coverage is 0%, so the description must carry the burden, and it does explain the components and connections payload shapes, zero-based pin indices with default pin conventions, and the harmonics object with a concrete example. It omits meaning for path and expected_sha256, keeping it below 5.

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 – build and save a circuit – plus the distinguishing constraint 'from component/pin descriptions without writing .sch syntax', which separates it from raw schematic editing. It does not explicitly contrast with save_schematic or preview_schematic, which is the only reason it isn't a 5.

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 phrase 'without writing .sch syntax' implies the usage context (programmatic construction rather than hand-written files), and 'Diode additionally requires model=...' states a prerequisite. But there is no explicit when-to-use vs siblings like save_schematic, preview_schematic, or validate_schematic, so the agent must infer the workflow position.

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