name: digikey description: Search DigiKey for components, pricing, stock, and part numbers. Use when the user asks to find components on DigiKey, check DigiKey pricing, look up a DigiKey part number, search for in-stock parts, get price breaks, compare alternatives, or find a datasheet or product page for a specific part.
DigiKey Component Search
Search DigiKey's catalog of millions of electronic components from thousands of manufacturers. Real-time pricing, stock, lead times, and product links.
Architecture
The DigiKey search runs as a shared remote service on a dedicated container. User containers access it via the adom-digikey MCP server, which proxies requests to the shared service over HTTP.
Dedicated Service Container (john/service-digikey)
DigiKey Products API v4 proxy (port 8777, OAuth 2.0, 10-min LRU cache)
↓ (proxied via Coder)
HTTP API: https://coder.john-service-digikey-5fe3ed11d045380c.containers.adom.inc/proxy/8777
MCP: https://coder.john-service-digikey-5fe3ed11d045380c.containers.adom.inc/proxy/8778/mcp
User Containers (any Gallia-enabled container)
MCP Tools (adom-digikey) ──→ HTTP fetch to shared service URL
↓
pushToViewer() ──→ Viewer API (port 8771) ──→ WebSocket ──→ Gallia Viewer
The service URL is hardcoded in digikey/mcp/tools.js — no DIGIKEY_CLIENT_ID / DIGIKEY_CLIENT_SECRET env vars needed on user containers. OAuth credentials live only on the service container.
Service Container Details
- Container:
john/service-digikeyon Adom (john-service-digikey-5fe3ed11d045380c) - Hydrogen: https://hydrogen.adom.inc/john/service-digikey/edit
- Port 8777: HTTP API —
GET /health,GET /search?keyword=...,GET /part?partNumber=..., orPOST /with JSON body - Port 8778: Streamable HTTP MCP endpoint at
/mcp— add to.mcp.jsonas{ "type": "streamable-http", "url": "...proxy/8778/mcp" } - Bootstrap:
bash <(curl -fsSL https://coder.john-gallia-f280e93ffec7e79d.containers.adom.inc/proxy/9999/bootstrap.sh) --service digikey - Update:
cd ~/gallia && git pull && pkill -f 'node.*services/digikey/server.js'; bash services/digikey/start-digikey.sh
Available MCP Tools
digikey_search — Keyword / Part Number Search
Search by keyword, description, manufacturer part number (MPN), or DigiKey part number.
Parameters:
| Parameter | Type | Default | Description |
|---|---|---|---|
keyword | string | required | Part number, keyword, description, or category + specs |
limit | number | 10 | Max results (1–50) |
inStockOnly | boolean | false | Only return parts currently in stock |
Example uses:
keyword: "STM32F103RBT6"— find by MPNkeyword: "497-STM32F103RBT6-ND"— find by DigiKey PNkeyword: "ESP32 WiFi Bluetooth"— keyword searchkeyword: "LDO 3.3V 500mA SOT-23"— parametric-style searchkeyword: "STM32F4 microcontroller",inStockOnly: true— in-stock only
digikey_part — Exact Part Lookup
Get full details for a specific part by DigiKey PN or MPN. Returns complete price break table, packaging options, RoHS status, lifecycle, datasheet URL, and product page.
Parameters:
| Parameter | Type | Description |
|---|---|---|
partNumber | string | DigiKey PN (e.g. 497-STM32F103RBT6-ND) or MPN (e.g. STM32F103RBT6) |
Use digikey_search first to discover parts, then digikey_part to get full details.
digikey_health — Health Check
Verify the API credentials are set and DigiKey API is reachable. No parameters.
What's in a Result
Each part includes:
- DigiKey part number — use this for BOM ordering
- Manufacturer part number (MPN) — use this in schematics/footprints
- Manufacturer name
- Description and category
- Stock — in-stock quantity at DigiKey (live)
- Lead time — estimated delivery in weeks if ordering from factory
- Price breaks — quantity pricing tiers (1+, 10+, 25+, 100+, etc.)
- Min order qty
- RoHS status — compliance flag
- Lifecycle status — e.g. Active, Last Time Buy, Obsolete
- Product page URL — direct link to DigiKey product listing
- Datasheet URL — direct PDF link if available
Workflow
Finding a part from scratch
- Use
digikey_searchwith a keyword or description - Scan results for the right part (check stock, price, lifecycle)
- Use
digikey_partto get full pricing and product details - Copy the DigiKey PN for BOM and the MPN for schematic/footprint use
Checking price for a known MPN
Use digikey_search with the MPN as the keyword — typically returns exact or near-exact matches as the first results.
Checking in-stock alternatives
Use digikey_search with inStockOnly: true and a descriptive keyword (e.g. "32-bit ARM Cortex-M3 flash 128KB LQFP-48").
Files
| File | Purpose |
|---|---|
services/digikey/server.js | HTTP API server (port 8777), DigiKey OAuth 2.0 proxy, landing page |
services/digikey/start-digikey.sh | Idempotent start script (used by container boot) |
services/digikey/test.js | 14-test integration suite with GV output |
digikey/mcp/server.js | MCP stdio transport entry point |
digikey/mcp/tools.js | 3 MCP tools + fire-and-forget push to Gallia Viewer (hardcoded service URL) |
digikey/mcp/remote.js | MCP streamable-http transport (port 8778) |
Notes
- Results are sorted by DigiKey's internal relevance algorithm (not necessarily by stock)
- DigiKey prices are in USD and do not include shipping
- Stock levels are live at time of query (10-minute cache on the service)
- OAuth credentials live only on the service container — user containers don't need them
- Authentication uses OAuth 2.0 client_credentials flow (tokens cached with 80% TTL safety margin)