bom
BOM (Bill of Materials) management for electronics projects — the workflow skill that coordinates DigiKey, Mouser, LCSC, element14, JLCPCB, PCBWay, and KiCad…
Search Mouser Electronics for electronic components — secondary source for prototype orders. Find parts, check pricing/stock, download datasheets, analyze specifications. Use with KiCad for BOM creation and part selection. Also supports batch MPN-list seeding (`--mpn-list`) for
$ npx -y skills add aklofas/kicad-happy --skill mouser --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/mouserContext preview
The summary Claude sees to decide when to auto-load this skill.
Search Mouser Electronics for electronic components — secondary source for prototype orders. Find parts, check pricing/stock, download datasheets, analyze specifications. Use with KiCad for BOM creation and part selection. Also supports batch MPN-list seeding (`--mpn-list`) for
name: mouser description: Search Mouser Electronics for electronic components — secondary source for prototype orders. Find parts, check pricing/stock, download datasheets, analyze specifications. Use with KiCad for BOM creation and part selection. Also supports batch MPN-list seeding (`--mpn-list`) for bulk datasheet workflows without a KiCad project. Use this skill when the user specifically mentions Mouser, when DigiKey is out of stock or has worse pricing, when comparing prices across distributors, or when searching for parts that DigiKey doesn't carry. For package cross-reference tables and BOM workflow, see the `bom` skill.
| Skill | Purpose | |-------|---------| | `kicad` | Schematic analysis — extracts MPNs for part lookup | | `bom` | BOM management — orchestrates sourcing across distributors | | `digikey` | Primary prototype source (prefer for datasheets — direct PDF links) | | `spice` | Uses Mouser parametric data for behavioral SPICE models |
Mouser is the **secondary source for prototype orders** — use when DigiKey is out of stock or has worse pricing. For production orders, see `lcsc`/`jlcpcb`. For BOM management and export workflows, see `bom`. For datasheets, prefer DigiKey's API (direct PDF links) — Mouser blocks automated PDF downloads.
Mouser uses **simple API key authentication** — no OAuth, no tokens, no callback URLs. The Search API key is a UUID passed as a query parameter.
1. Go to [mouser.com](https://www.mouser.com) → My Mouser → My Account 2. Under "APIs" section, click "Manage" 3. Register for **Search API** key — this is the one needed for part lookups and datasheet downloads 4. Search API keys may require approval (status shows "pending authorization" initially)
Set the environment variable before running the scripts:
export MOUSER_SEARCH_API_KEY=your-search-api-key-uuid
If credentials are stored in a central secrets file (e.g., `~/.config/secrets.env`), load them first:
export $(grep -v '^#' ~/.config/secrets.env | grep -v '^$' | xargs)
All search endpoints use the Search API key as a query parameter: `?apiKey=<key>`. Content-Type is `application/json` for all POST requests.
POST /api/v1/search/keyword?apiKey=<key>
{
"SearchByKeywordRequest": {
"keyword": "100nF 0402 ceramic capacitor",
"records": 50,
"startingRecord": 0,
"searchOptions": "InStock"
}
}POST /api/v1/search/partnumber?apiKey=<key>
{
"SearchByPartRequest": {
"mouserPartNumber": "GRM155R71C104KA88D|RC0402FR-0710KL",
"partSearchOptions": "Exact"
}
}V2 adds manufacturer filtering and pagination by page number.
POST /api/v2/search/keywordandmanufacturer?apiKey=<key>
{
"SearchByKeywordMfrNameRequest": {
"keyword": "LMR51450",
"manufacturerName": "Texas Instruments",
"records": 25,
"pageNumber": 1,
"searchOptions": "InStock"
}
}Note: the wrapper object name is `SearchByKeywordMfrNameRequest` (not `SearchByKeywordMfrRequest` — the V1 name is deprecated).
POST /api/v2/search/partnumberandmanufacturer?apiKey=<key>
GET /api/v2/search/manufacturerlist?apiKey=<key>
Returns the full list of manufacturer names for use in filtered searches.
These still work but V2 equivalents are preferred:
All search endpoints return the same response format:
{
"Errors": [],
"SearchResults": {
"NumberOfResult": 142,
"Parts": [...]
}
}| Field | Type | Description | |-------|------|-------------| | `MouserPartNumber` | string | Mouser's internal part number (prefixed, e.g., `81-GRM155R71C104KA88`) | | `ManufacturerPartNumber` | string | Manufacturer's part number (MPN) — use for cross-distributor matching | | `Manufacturer` | string | Manufacturer name | | `Description` | string | Product description | | `Category` | string | Product category | | `DataSheetUrl` | string | URL to datasheet PDF (Mouser-hosted — see Datasheet section) | | `ProductDetailUrl` | string | URL to Mouser product page | | `ImagePath` | string | Product image URL | | `Availability` | string | Human-readable stock text (e.g., "2648712 In Stock") | | `AvailabilityInStock` | string | Numeric stock quantity (as string) | | `AvailabilityOnOrder` | array | Incoming stock: `[{Quantity, Date}]` | | `LeadTime` | string | Factory lead time (e.g., "84 Days") | | `LifecycleStatus` | string\|null | "New Product", "End of Life", etc. | | `IsDiscontinued` | string | "true" or "false" (string, not boolean) | | `SuggestedReplacement` | string | Replacement MPN if discontinued | | `Min` | string | Minimum order quantity (as string) | | `Mult` | string | Order multiple (as string) | | `Reeling` | bool | Tape-and-reel packaging available | | `ROHSStatus` | string | RoHS compliance status | | `PriceBreaks` | array | Tiered pricing: `[{Quantity, Price, Currency}]` | | `ProductAttributes` | array | Parametric specs: `[{AttributeName, AttributeValue}]` | | `AlternatePackagings` | array\|null | Alternate packaging MPNs: `[{APMfrPN}]` | | `SurchargeMessages` |
AI-powered design review for KiCad. Analyzes schematics, PCB layouts, and Gerbers. Catches real bugs before you order boards.
Repo: aklofas/kicad-happy
BOM (Bill of Materials) management for electronics projects — the workflow skill that coordinates DigiKey, Mouser, LCSC, element14, JLCPCB, PCBWay, and KiCad…
Extract structured specifications from electronic component datasheet PDFs — pinouts, electrical characteristics, peripherals, topology, and features. Cache…
Search DigiKey for electronic components and download datasheets — primary source for prototype orders and the preferred API method for fetching datasheets.…
Search Newark, Farnell, and element14 for electronic components — find parts by MPN or distributor part number, check pricing/stock, download datasheets,…
EMC pre-compliance risk analysis for KiCad PCB designs — 18 check categories, 44 rule IDs covering ground planes, decoupling, I/O filtering, switching…