Skip to main content
Glama
hulryung

jlcpcb-skill-mcp

by hulryung

Suggest JLCPCB parts for a BOM

suggest_bom_parts

Suggest concrete JLCPCB parts for an entire BOM with assembly-cost awareness. Ranks candidates by stock, price, and tier, providing reasons, warnings, and a full cost breakdown.

Instructions

Suggest concrete JLCPCB parts for a whole BOM with assembly-cost awareness. Input EITHER 'path' (a .kicad_sch schematic or KiCad BOM .csv) OR 'bom_lines' (inline rows) — exactly one. Each line gets ranked candidates with reasons/warnings and a status: matched, needs_review (verify manually — e.g. IC matched only by fuzzy text), no_match, preassigned (schematic already carries an LCSC number), or skipped_dnp. Also returns a cost breakdown: component cost at price breaks plus one-time $3 loading fee per unique extended-tier part (basic and preferred parts are fee-free). Ranking prefers basic tier, deep stock vs. needed qty (board_qty × qty × stock_multiple), and lower price.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathNoPath to a .kicad_sch or BOM .csv (mutually exclusive with bom_lines). Relative paths resolve against the server's working directory.
board_qtyNoNumber of boards to assemble (default 10)
bom_linesNoInline BOM lines (mutually exclusive with path)
max_candidatesNoRanked candidates kept per line, clamped to 1-50 (default 5)
stock_multipleNoStock safety factor: warn unless stock ≥ needed × this (default 5)
Behavior5/5

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

With no annotations, the description carries full burden. It discloses ranking preferences (basic tier, deep stock, lower price), the $3 loading fee for extended-tier parts, fee-free status for basic/preferred, and the statuses including needs_review with a warning about fuzzy text matching. This is rich behavioral detail.

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?

The description is a single dense paragraph, but every sentence adds relevant information. It is front-loaded with the core purpose, then details input, output statuses, and cost logic. Slightly long but efficient.

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

Completeness5/5

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

Given 5 parameters, no output schema, and no annotations, the description thoroughly covers expected outputs (statuses, candidates, reasons/warnings, cost breakdown) and ranking logic. Nothing critical is missing for an agent to invoke and understand the 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 100%, so baseline is 3. The description adds value by clarifying the 'exactly one' input rule and explaining how inputs like board_qty and stock_multiple influence ranking and stock warnings, going beyond bare schema definitions.

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 description clearly states the tool's function: 'Suggest concrete JLCPCB parts for a whole BOM with assembly-cost awareness.' This is specific and distinguishes it from sibling tools like search_parts or estimate_assembly_cost, which handle individual searches or cost estimation separately.

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 explains the intended context (whole BOM, assembly-cost awareness) and explicitly describes the input switch (path vs bom_lines, exactly one). It does not explicitly name alternatives or exclusions, but the scope is clear enough.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hulryung/jlcpcb-skill-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server