mcpField
E
electronics-sourcing

electronics-sourcing

github.com/andrewyng其他14.0k98 次安装21 周前更新
代码仓库

关于 electronics-sourcing

electronics-sourcing 为使用 parts-mcp 的电子元件采购任务提供操作指南,面向处理选型、询价和物料清单的用户。它规定了搜索、价格与库存核查、替代料及制造报价的步骤。

主要功能

  1. 01按参数或关键词搜索元件
  2. 02比较供应商价格并检查库存
  3. 03处理 BOM 匹配及成本计算
  4. 04分步骤读取数据手册
  5. 05指导 DFM 与制造报价流程

适用场景

  1. 01按电气参数筛选电容等元件
  2. 02处理 BOM 中未匹配的物料
  3. 03检查缺货元件并寻找替代品
  4. 04获取 PCB 制造或组装报价

MCP 相关

该技能指导如何依次使用 parts-mcp 工具进行元件搜索、价格和库存核查、BOM 处理及制造相关操作。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/andrewyng/context-hub --skill electronics-sourcing

安装后在 Claude Code 中输入/electronics-sourcing确认已加载。

详细介绍

电子元件采购技能

此技能将教你如何使用 parts-mcp 工具高效采购电子元件,涵盖工具调用顺序、决策模式以及如何处理常见场景。

何时使用哪种搜索工具

search_parts——当你有料号、描述或一般关键词时使用。这是默认的起点。

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

search_by_parameters——当你需要在某个类别中匹配特定电气参数时使用。它比关键词搜索更精确。

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

决策规则:如果用户提供了 3 个或更多具体参数,请使用 search_by_parameters。对于料号或一般查询,请使用 search_parts。

搜索 → 价格 → 库存情况 → 替代方案模式

这是核心采购工作流。请按以下顺序操作:

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)

不要跳过第 3 步和第 4 步。数据库中存在的元件可能缺货或价格过高。

当用户要求“采购”或“查找”元件时,他们期望获得价格和库存情况,而不只是搜索结果。请务必继续执行,至少完成第 4 步。

BOM 处理模式

BOM 处理是异步的。请务必严格遵循以下顺序:

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

轮询:调用 check_bom_status 并检查 status 字段。如果状态为 "in_progress",请等待后再次轮询。不要假设它会立即完成。

处理未匹配元件:当 unknown_parts 不为空时,请使用 value 和 footprint 字段作为查询条件调用 search_parts。如果仍未匹配,请告知用户,不要默默跳过。

数据手册阅读策略

数据手册可能长达数百页。请务必采用以下两步方法:

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

切勿在没有 query 参数的情况下调用 read_datasheet,除非数据手册较短(少于 20 页)。未筛选地读取一份 200 页的数据手册会过度消耗上下文。

关键词提示:使用具体的技术术语。“maximum input voltage absolute ratings”比“voltage”更合适。使用多个关键词可以缩小结果范围。

制造流程

制造操作(DFM、制造报价、组装)都是异步的:

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

先进行 DFM:请求制造报价前,请务必先运行 DFM 分析。DFM 可能会发现影响可制造性或成本的问题。

组装报价会在一次调用中结合制造和 BOM 成本核算。当用户需要包含 PCB 制造和元件组装的完整单件成本时,请使用 quote_assembly。

处理部分失败

实际采购中经常会出现部分结果。请妥善处理:

BOM 中有些元件未找到:

  • 明确告知未匹配元件的数量
  • 尝试为每个未匹配元件调用 search_parts
  • 如果仍未匹配,请将它们连同位号和值列出并告知用户
  • 计算已匹配元件的成本,并注明总额不完整

有些元件无法供应:

  • 告知用户哪些元件缺货
  • 自动为每个缺货元件调用 find_alternatives
  • 提供替代方案及其规格和价格
  • 让用户决定是否替换

供应商不全时的价格比较:

  • 告知用户已查询的供应商数量
  • 说明关键供应商(用户偏好的供应商)是否未返回结果
  • 无需等待所有供应商返回结果,即可提供已有的价格数据

KiCad 项目工作流

使用 KiCad 项目时:

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 要求:如果项目中没有现成的 BOM 文件,提取 BOM 时可能会调用 kicad-cli。请确保已安装 KiCad 8+。

仅限本地模式:所有 KiCad 工具都要求使用本地模式(stdio 传输)。它们在托管/HTTP 模式下不可用。

成本优化技巧

帮助用户优化成本时:

  1. 检查数量折扣:使用不同数量(1、10、100、1000)调用 compare_prices,展示价格折扣曲线
  2. 推荐替代品:如果某个零件价格较高,调用 find_alternatives 并比较价格
  3. 优先供应商:在 calculate_bom_cost 中使用 preferred_suppliers,优先考虑用户现有的供应商合作关系
  4. 合并发货:如果多个零件来自同一供应商,指出合并发货的潜在优势

响应模式

当用户要求“采购一个零件”时: → search_parts → get_part_details → compare_prices → check_availability 提供:零件详情、最优价格、库存状态和任何需要注意的问题。

当用户提供 BOM 文件时: → upload_bom → 轮询 check_bom_status → 报告匹配/未匹配情况 → calculate_bom_cost 提供:匹配率、未匹配项、总成本和逐行明细。

当用户询问“有库存吗?”时: → 使用数量参数调用 check_availability 提供:库存水平、有库存的供应商数量,以及所需数量是否可以满足。

当用户询问数据手册时: → list_datasheet_sections → 使用有针对性的查询调用 read_datasheet 提供:用户要求的具体信息,并注明页码。

当用户要求制造报价时: → submit_dfm(如果尚未执行)→ quote_fabrication 或 quote_assembly 提供:DFM 问题(如有)、预估成本和交货周期。

评论

支持 Markdown