Skip to main content
Glama

part_pin_map

Fetch the pin-name to pad-number mapping for any LCSC part number from EasyEDA, enabling pinout inspection before building a netlist. Results are cached for reuse.

Instructions

Fetch the pin-name → pad-number map for an LCSC C-number from EasyEDA's component endpoint. Used internally by pcb_generate; exposed as a standalone tool so Claude can inspect a part's pinout before constructing a nets spec. Rate-limited (~12s between unique fetches); cached indefinitely in SQLite after first fetch.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lcscYesLCSC C-number, e.g. 'C82942' for ME6211C33M5G-N LDO.
force_refreshNoBypass cache and re-fetch from EasyEDA.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.16.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden and delivers: it discloses rate limiting ('~12s between unique fetches') and indefinite SQLite caching after first fetch — the two operational traits most likely to surprise an agent. It does not cover failure modes (invalid C-number, network errors), but for a read-only fetch tool the disclosed traits are the important ones. No contradiction exists since annotations are absent.

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?

Three sentences with zero filler. The core verb+resource is front-loaded, the standalone-use context comes second, and the operational constraints (rate limit, caching) close it out. Every sentence earns its place and nothing needs to be cut.

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 two-parameter tool with no output schema and no annotations, the description covers purpose, usage timing, and both behavioral constraints (rate limit and caching). Since no output schema exists, the description arguably should hint at the return shape, and 'pin-name → pad-number map' effectively does. Minor omissions like error behavior on invalid C-numbers are the only gap.

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%, so both parameters (lcsc, force_refresh) are already well documented in the schema, setting a baseline of 3. The description adds modest value by explaining that caching is indefinite, which gives semantic weight to force_refresh's 'bypass cache' purpose. This is a small increment but not a substantial one — the schema already says enough for correct invocation.

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?

The first sentence names a specific verb, resource, and scope: 'Fetch the pin-name → pad-number map for an LCSC C-number from EasyEDA's component endpoint.' This is immediately distinguishable from siblings like fetch_part_library (full library) and lcsc_search (part lookup). The second sentence further clarifies its niche relative to pcb_generate (pinout inspection before nets spec construction), leaving no ambiguity about what this tool does.

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 description gives clear context for standalone use: 'so Claude can inspect a part's pinout before constructing a nets spec.' This explains the appropriate moment to invoke the tool. It does not, however, explicitly name sibling alternatives or state when NOT to use it as opposed to lcsc_search or fetch_part_library; the differentiation is implied rather than spelled out.

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