Skip to main content
Glama
IntelligentElectron

Universal Netlist MCP Server

Trace XNET from a pin

query_xnet_by_pin_name
Read-onlyIdempotent

Trace full XNET connectivity from a component pin (REFDES.PIN) through series components to identify the whole electrical node, stopping at power/ground nets and optionally excluding passive types.

Instructions

Get full XNET connectivity starting from a component pin, named REFDES.PIN (e.g. U1.A5, R10.1). Traces through series components, so the result is the whole electrical node; circuit_hash identifies unique topologies. Traversal stops at power and ground nets, recognised by name (VCC*, VDD*, 3V3, GND*, VSS*, ...) or by carrying more than 40 pins; a rail named outside that is traversed like a signal, and visited_nets names every net the result crossed. skip_types leaves series passives out, for example skip_types=['C','L','R']. A pin on no net reads as the net NC and returns an empty result. component_notes names the parts with no MPN. Rejects pins connected to ground nets (GND, AGND, DGND, etc.) with an error.

Input Schema

NameRequiredDescriptionDefault
designYesPath to design file
pin_nameYesPin spec: REFDES.PIN (e.g., U2.10, U1.A5)
skip_typesNoComponent prefixes to exclude
include_dnsNoInclude DNS components
design_variantNoDesign variant name from list_designs' design_variants. Required when the design records named variants, which are its only builds. <Default> (alias: default) is the one build of a design that records none

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.0.0-development

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already cover the safety profile, and the description adds substantial behavior beyond them: traversal rules (stops at power/ground by name pattern or >40 pins), what happens with rails named outside the pattern, NC handling for unconnected pins, and the ground-pin rejection error. This is exactly the kind of context annotations cannot express.

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 purpose and format, then behavior. Dense but nearly every clause carries information; the parenthetical rail-name list and trailing notes are slightly crowded but not wasteful.

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?

With no output schema, the description correctly explains return contents (whole electrical node, circuit_hash, visited_nets, component_notes, empty result for NC). Gaps remain around include_dns and design_variant behavior, which an agent must infer from schema text alone.

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?

Schema coverage is 100%, so baseline is 3, but the description goes further by explaining skip_types semantics with a concrete example (skip_types=['C','L','R'] leaves series passives out) and by describing pin_name's NC edge case. design_variant and include_dns are left entirely to the schema, keeping it from a 5.

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 with an explicit entry point: 'Get full XNET connectivity starting from a component pin, named REFDES.PIN'. The 'starting from a pin' framing implicitly distinguishes it from query_xnet_by_net_name, and the format example removes ambiguity about the input.

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?

Clear context for use: starting from a pin rather than a net, with skip_types for excluding series passives and a note that ground-connected pins are rejected. It does not explicitly name query_xnet_by_net_name or search_nets as alternatives, so routing is inferred rather than stated.

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