Skip to content
Development
Skill

/electronics-sourcing

Guide for AI agents to source electronic components using parts-mcp — tool sequencing, decision patterns, and multi-step workflows

From plugin
context-hub
14k10 skills

Claude Code

$ npx -y skills add andrewyng/context-hub --skill electronics-sourcing --agent claude-code

SKILL.md

electronics-sourcing.SKILL.md
name: electronics-sourcing
description: "Guide for AI agents to source electronic components using parts-mcp — tool sequencing, decision patterns, and multi-step workflows"
metadata:
  revision: 1
  updated-on: "2026-03-15"
  source: maintainer
  tags: "electronics,sourcing,bom,components,pcb,manufacturing,workflow"

Electronics Sourcing Skill

This skill teaches you how to source electronic components effectively using parts-mcp tools. It covers tool sequencing, decision patterns, and how to handle common scenarios.

When to Use Which Search Tool

**`search_parts`** — Use when you have a part number, description, or general keywords. This is your default starting point.

"Find me a 100nF capacitor" → search_parts(query="100nF capacitor")
"Look up STM32F411" → search_parts(query="STM32F411")

**`search_by_parameters`** — Use when you need to match specific electrical parameters within a category. More precise than keyword search.

"I need a 50V 100nF X7R 0402 cap" → search_by_parameters(
  parameters={"capacitance": "100nF", "voltage": "50V", "dielectric": "X7R", "package": "0402"},
  category="capacitor"
)

**Decision rule**: If the user gives you 3+ specific parameters, use `search_by_parameters`. For part numbers or general queries, use `search_parts`.

The Search → Price → Availability → Alternative Pattern

This is the core sourcing workflow. Follow this sequence:

1. SEARCH → Find the part
2. DETAILS → Get full specifications (if needed for validation)
3. PRICE → Compare across suppliers
4. AVAILABILITY → Check stock levels
5. ALTERNATIVE → Find replacements (only if price is too high or stock is insufficient)

Do not skip steps 3 and 4. A part that exists in the database may be out of stock or prohibitively expensive.

When the user asks to "source" or "find" a part, they expect pricing and availability — not just search results. Always follow through to at least step 4.

BOM Processing Pattern

BOM processing is asynchronous. Always follow this exact sequence:

1. upload_bom(file_path=path)           → Get job_id
2. check_bom_status(job_id=job_id)      → Poll until status is "complete"
3. Review matched_parts and unknown_parts
4. For unmatched: search_parts() to resolve manually
5. calculate_bom_cost() with all resolved parts

**Polling**: Call `check_bom_status` and check the `status` field. If `"in_progress"`, wait and poll again. Do not assume instant completion.

**Handling unmatched parts**: When `unknown_parts` is not empty, try `search_parts` with the `value` and `footprint` fields as the query. If still unmatched, report them to the user — do not silently skip them.

Datasheet Reading Strategy

Datasheets can be hundreds of pages. Always use this two-step approach:

1. list_datasheet_sections(sku="PART-NUMBER")
   → See the table of contents
   → Identify which sections contain what you need

2. read_datasheet(sku="PART-NUMBER", query="relevant keywords")
   → Read only matching chunks
   → Saves significant context window

**Never** call `read_datasheet` without a `query` parameter unless the datasheet is short (< 20 pages). An unfiltered read of a 200-page datasheet will consume excessive context.

**Keyword tips**: Use specific technical terms. "maximum input voltage absolute ratings" is better than "voltage". Multiple keywords narrow the results.

Manufacturing Pipeline

Manufacturing operations (DFM, fab quoting, assembly) are all asynchronous:

submit_dfm() → check_dfm_status()       # DFM analysis
quote_fabrication() → check_manufacturing_status()  # Fab quote
quote_assembly() → polls internally      # Combined fab + assembly

**DFM first**: Always run DFM analysis before requesting a fabrication quote. DFM may reveal issues that affect manufacturability or cost.

**Assembly quotes** combine fabrication and BOM costing in one call. Use `quote_assembly` when the user wants a complete per-unit cost including both PCB fabrication and component assembly.

Handling Partial Failures

Real-world sourcing often has partial results. Handle gracefully:

**Some parts not found in BOM**:

  • Report the unmatched count clearly
  • Attempt `search_parts` for each unmatched part
  • If still unmatched, list them for the user with their reference designators and values
  • Calculate cost for matched parts, noting the incomplete total

**Some parts unavailable**:

  • Report which parts are out of stock
  • Automatically call `find_alternatives` for each unavailable part
  • Present alternatives with their specifications and pricing
  • Let the user decide on substitutions

**Price comparison with missing suppliers**:

  • Report how many suppliers were checked
  • Note if key suppliers (the user's preferred ones) returned no results
  • Present available pricing data without waiting for all suppliers

KiCad Project Workflow

When working with KiCad projects:

1. find_kicad_projects()                    → Discover available projects
2. analyze_kicad_project(project_path=...)  → Understand project structure
3. extract_bom_from_kicad(project_path=...) → Get component list
4. match_components_to_parts(components=...) → Match to real parts
5. Follow the BOM processing pattern above for unmatched components

**KiCad CLI requirement**: BOM extraction may invoke `kicad-cli` if no existing BOM file is found in the project. Ensure KiCad 8+ is installed.

**Local mode only**: All KiCad tools require local mode (stdio transport). They are not available in hosted/HTTP mode.

Cost Optimization Tips

When helping users optimize costs:

1. **Check quantity breaks**: Call `compare_prices` with different quantities (1, 10, 100, 1000) to show price break curves 2. **Suggest alternatives**: If a part is expensive, call `find_alternatives` and compare pricing 3. **Preferred suppliers**: Use `preferred_suppliers` in `calculate_bom_cost` to bias toward the user's existing supplier relationships 4. **Consolidation**: When multiple parts co

Read more
@andrewyng
Ships withcontext-hub

Coding agents hallucinate APIs and forget what they learn in a session. Context Hub gives them curated, versioned docs, plus the ability to get smarter with every task.

Stars on GitHub

Momentum

stars in total
14.0k
Star history of andrewyng/context-hub on GitHub, a chart by star-history.com

Other skills on context-hub.

get-api-docs

get-api-docs

Use this skill to get documentation for third-party APIs, SDKs or libraries before writing code that uses them to ensure you have…

bloc-cubit

bloc-cubit

Use when working with Flutter Bloc/Cubit state management. Covers when to choose Bloc vs Cubit, how to use bloc and flutter_bloc…

riverpod

riverpod

Use when working with Flutter Riverpod state management. Covers providers, consumers, refs, containers, overrides, async state,…

document-extraction

document-extraction

Use this skill for intelligent document processing and content extraction using LandingAI's Agentic Document Extraction (ADE).…

document-workflows

document-workflows

Use this skill for building end-to-end document processing workflows and pipelines using LandingAI ADE. Trigger when users need…

integrate

integrate

Add Olakai monitoring to existing AI code — wrap your LLM client, configure custom KPIs, and validate the integration end-to-end

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills12d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react3d252k
@facebook@facebookInstall Skill

Questions about electronics-sourcing.

Which coding agents can use electronics-sourcing?
electronics-sourcing installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.