Skip to main content
Glama

lib_create_ic_symbol

Creates a complete IC symbol in one call by grouping left and right pins, generating the body rectangle, and placing grid-aligned pins for schematic use.

Instructions

Create a COMPLETE, discipline-compliant IC symbol in ONE call.

You decide the functional grouping (inputs/power/control on the LEFT, outputs/status on the RIGHT -- discipline rule 18); this lays them out cleanly and emits the whole symbol: the body rectangle (Altium-yellow fill) plus every pin, grid-aligned with the top-left pin's wire-end at the origin (rule 14), in one create + one bulk add_pins + one rectangle.

Args: name: Component name. left_pins: Pins on the LEFT side, top-to-bottom. Each a dict with designator, name, and optional electrical_type (input/output/power/passive/...). right_pins: Pins on the RIGHT side, top-to-bottom, same shape. designator_prefix: e.g. "U". description: Component description.

Returns: Dict with the symbol name, pin count, body extent, and the per-step bridge results.

Input Schema

NameRequiredDescriptionDefault
nameYes
left_pinsYes
right_pinsYes
descriptionNo
designator_prefixNoU

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.1

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the composite write behavior (create + bulk pins + rectangle), the placement origin convention (top-left pin wire-end at origin per rule 14), and the resulting body fill. It doesn't cover what happens to an existing symbol of the same name, overwrite semantics, or permission requirements.

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 single-sentence purpose before the Args block, so an agent can stop reading early. Slightly verbose with inlined discipline-rule citations, but each sentence carries operational information rather than restating the name.

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 five-parameter mutation tool with zero annotation coverage, the description covers layout rules, pin semantics, and side effects well, and an output schema exists so return-value detail is not required (though a summary is still given). Left unpinned: symbol-name collision behavior and failure modes, which matter for a create tool.

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 0%, so the description must compensate, and it does: it documents all five parameters and the nested dict shape of left_pins/right_pins (`designator`, `name`, optional `electrical_type` with enumerated examples), plus the default designator prefix. Minor gaps remain around ordering edge cases and duplicate designators.

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 ('Create a COMPLETE, discipline-compliant IC symbol in ONE call') with the scope of what gets emitted (body rectangle plus every pin). An agent can distinguish it from lib_create_symbol, lib_create_passive_symbol, and manual lib_add_pins composition by the 'IC' and 'complete in one call' framing.

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?

The 'in ONE call' phrasing and the description of the internal steps (one create + one bulk add_pins + one rectangle) make clear this is the high-level alternative to assembling a symbol primitive-by-primitive. It doesn't explicitly name lib_create_symbol/lib_create_passive_symbol/lib_add_pins as the alternatives to avoid, so routing is implied rather than stated.

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