Skip to main content
Glama
ShamanAndrey

kicad-mcp-layer

by ShamanAndrey

stackup_info

Read-onlyIdempotent

Fetches PCB stack-up presets with layer thickness, permittivity, and fab trace geometries per target impedance. Lists all presets for KiCad designs.

Instructions

A stack-up preset: layers with thickness and permittivity, and the fab's published trace geometries per target impedance, with the source they were read from.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stackupNoPreset name: jlc04161h-7628, pcbway-4l-1.6mm or aisler-4l-1.6mm (aliases jlcpcb, pcbway, aisler); default JLCPCB's 4-layer JLC04161H-7628. The result lists every preset.jlc04161h-7628

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
tableYesFab-published width (w) and gap (s) per target impedance in ohm; empty when the fab publishes none.
layersYes
sourceYes
presetsNoEvery preset name impedance_calc and stackup_info accept.
thickness_mmYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is fully covered by structured fields. The description adds modest value by noting the data is the fab's published geometry plus the source it was read from (provenance), but says nothing about caching, network access, or freshness.

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?

A single front-loaded sentence with no filler; the returned fields are listed compactly. It is efficient, though the trailing 'with the source they were read from' clause is slightly dense and could be tightened.

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?

An output schema exists, so the description need not explain return shapes, yet it still characterizes the payload; annotations cover the safety profile and the sole parameter is fully documented. The remaining gap is usage/routing context relative to sibling tools like impedance_calc.

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?

With a single parameter and 100% schema description coverage, the schema already documents the preset names, aliases, and default. The description adds no parameter-level detail beyond what the schema provides, so the baseline of 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?

The description names the resource precisely and enumerates its contents (layers with thickness and permittivity, trace geometries per target impedance, provenance source), which lets an agent know exactly what data comes back. However, the action is nominalized ('A stack-up preset:') rather than stated as a verb+resource, and it never distinguishes this lookup from siblings such as impedance_calc or fp_info.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites, and no mention of alternatives or exclusions. The only routing signal lives in the parameter description (available preset names/aliases), not in the tool description itself.

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