mcpField
L
lcsc

lcsc

github.com/aklofas其他1.5k650 次安装5 天前更新
代码仓库

关于 lcsc

lcsc 是面向硬件设计与 BOM 工作流的 LCSC 元器件采购和数据手册获取技能。它整合元器件搜索、库存与价格信息及数据手册下载,且无需 API 密钥。

主要功能

  1. 01按关键词或料号搜索 LCSC 元器件
  2. 02查看库存、阶梯价格和封装信息
  3. 03筛选 JLCPCB 基础元器件
  4. 04下载单个数据手册
  5. 05为 KiCad 项目同步数据手册
  6. 06将搜索结果导出为 JSON

适用场景

  1. 01为 JLCPCB 装配 BOM 查找元器件
  2. 02采购前核对库存和价格
  3. 03收集 KiCad 项目的数据手册
  4. 04为 BOM 补充元器件信息

安装

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

$npx skills add https://github.com/aklofas/kicad-happy --skill lcsc

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

scripts/
fetch_datasheet_lcsc.py
search_lcsc.py
sync_datasheets_lcsc.py
test_search_lcsc.py

详细介绍

LCSC Electronics — 元器件搜索、数据手册与订购

相关技能

技能用途
kicad原理图分析 — 提取 MPN 以查找元器件
bomBOM 管理 — 协调从各分销商采购
jlcpcbPCB 组装 — 共用同一元器件库
spice使用 LCSC 参数数据创建行为级 SPICE 模型(无需身份验证)

LCSC 是 JLCPCB 的姊妹公司,两者共用同一元器件库和 Cxxxxx 零件编号。对于量产采购(通过 JLCPCB/PCBWay 组装电路板),请使用 LCSC。DigiKey/Mouser 适用于原型制作。如需了解 BOM 管理和导出工作流,请参阅 bom。

与 DigiKey/Mouser 的主要区别

  • 无需 API 密钥 — jlcsearch 社区 API 免费且开放
  • 价格更低 — 尤其是无源器件和中国制造的 IC
  • 集成 JLCPCB — JLCPCB 组装 BOM 使用相同的 LCSC 零件编号
  • 直接下载 PDF — LCSC 的 CDN(wmsc.lcsc.com)提供数据手册,无机器人防护限制
  • 最低起订量低 — 许多元器件最低仅需订购 1 个
  • 仓库 — 深圳(JS)、珠海(ZH)、香港(HK)
  • 网站:https://www.lcsc.com

LCSC 零件编号

格式:Cxxxxx(例如 C14663)。这是 LCSC 和 JLCPCB 通用的标识符。可用于:

  • 在 LCSC 直接订购
  • 在 JLCPCB 组装中匹配 BOM(参见 jlcpcb 技能)
  • 在不同平台之间交叉引用

元器件搜索

使用 search_lcsc.py 搜索 LCSC 和 JLCPCB 的电子元器件、查看实时库存、检查阶梯定价、识别基础型与扩展型元器件,并获取参数属性。无需 API 密钥。

# Search by keyword or description
python3 <skill-path>/scripts/search_lcsc.py "tactile switch"

# Search for basic parts only (no JLCPCB extended loading fees)
python3 <skill-path>/scripts/search_lcsc.py "0805 100R" --basic

# Filter by package/footprint and stock
python3 <skill-path>/scripts/search_lcsc.py "red led" --package 0805 --in-stock

# Inspect full component details (manufacturer, datasheet URL, price breaks, parametric attributes)
python3 <skill-path>/scripts/search_lcsc.py "C318884" --details

# Output machine-readable JSON (for scripts and agent workflows)
python3 <skill-path>/scripts/search_lcsc.py "ME2108" --limit 5 --json

# Sort results by price or stock
python3 <skill-path>/scripts/search_lcsc.py "microcontroller STM32" --sort price

# Parametric category search (rows carry package, stock, price and attributes)
python3 <skill-path>/scripts/search_lcsc.py "STM32" --category microcontrollers

该脚本:

  • 通过免费的 jlcsearch 社区 API 搜索,随后从 LCSC 的直接商品详情端点补充信息(制造商、数据手册 URL、阶梯价格):针对精确的 Cxxxxx 查询,以及通过 --details 显示的每条结果都会补充信息;每条结果额外请求一次,间隔 0.5 秒。如果 jlcsearch 没有 Cxxxxx 代码对应的记录,则使用直接查询作为备用方案。
  • 将结果整理为清晰的终端表格,突出显示 LCSC #、MPN、Package、Basic/Ext 状态、Stock、Price 和 Description
  • 支持使用 --basic 进行筛选,以优化面向 JLCPCB 制造的 PCB 组装 BOM 成本
  • 支持使用 --json,用于自动补充 BOM 信息和 Agent 工作流

jlcsearch API 参考

jlcsearch 社区 API 是搜索 LCSC 的推荐方式。无需身份验证。

基础 URL: https://jlcsearch.tscircuit.com

通用搜索
GET /api/search?q=<query>&limit=20&full=true

参数:

  • q — 搜索查询(匹配 MPN、LCSC 代码或描述关键词)
  • package — 可选的封装筛选条件(例如 0402)
  • limit — 最大结果数(默认值为 100)
  • full — 可接受,但现在不会再增加字段(原先的 extra 块已移除,见下文)
按类别搜索
GET /resistors/list.json?search=10k+0402
GET /capacitors/list.json?search=100nF+0402
GET /microcontrollers/list.json?search=STM32
GET /voltage_regulators/list.json?search=3.3V
响应格式

通用搜索返回 {"components": [...]}。截至 2026-09,每条结果仅包含以下字段 — 即使设置 full=true,也不再返回 extra 块(制造商、数据手册 URL、各仓库库存、属性、阶梯价格):

{
  "lcsc": 318884,
  "mfr": "TS-1187A-B-A-B",
  "package": "SMD-4P,5.1x5.1mm",
  "is_basic": true,
  "is_preferred": false,
  "description": "-30℃~+85℃ 1.5mm 1.6N ... SMD-4P,5.1x5.1mm Tactile Switches ROHS",
  "stock": 1683297,
  "price": 0.0197
}

关键字段:

  • lcsc — LCSC 数字 ID(不含“C”前缀);在前面加上 C 即为 LCSC 代码
  • mfr — 制造商零件编号(不含制造商名称)
  • is_basic — 如果是 JLCPCB 基础型元器件则为 true(免收设置费);is_preferred — JLCPCB 优选扩展型元器件
  • stock / price — JLCPCB 组装库存和单价(美元)

类别端点返回 {"<category>": [...]} — 以类别名称为键,而不是 components。其行数据与通用搜索不同:使用 price1 而非 price、包含 in_stock、description 为空、包含参数列(例如 resistance、cpu_core),且 attributes 是 JSON 字符串:

{"resistors": [{"lcsc": 25804, "mfr": "0603WAF1002T5E", "description": "", "stock": 37165617,
  "price1": 0.000842857, "in_stock": true, "package": "0603", "resistance": 10000,
  "is_basic": true, "is_preferred": false,
  "attributes": "{\"Resistance\":\"10kΩ\",\"Power(Watts)\":\"100mW\",\"Tolerance\":\"±1%\"}"}]}
LCSC 直达产品详情(信息补充)

对于制造商、数据手册 URL 和阶梯价格,可通过 Cxxxxx 代码查询 LCSC 自有端点——无需身份验证,返回 JSON,成功时 code: 200:

GET https://wmsc.lcsc.com/ftps/wm/product/detail?productCode=C318884

有用的 result 字段:productModel(MPN)、brandNameEn(制造商)、pdfUrl(数据手册 PDF 直链)、encapStandard(封装)、productIntroEn / productDescEn(描述)、stockNumber(LCSC 库存编号)、productPriceList[](ladder = 最小数量,usdPrice = 美元价格)。fetch_datasheet_lcsc.search_lcsc_direct() 对此进行封装,并将结果规范化为 jlcsearch 字典格式(extra.number、extra.mpn、extra.manufacturer.name、extra.datasheet.pdf、price 中的阶梯价格列表);search_lcsc.py 使用它为 Cxxxxx 补充信息,并在 jlcsearch 没有结果时将其用作备用方案。

速率限制

两个 API 都没有说明速率限制,但请注意控制频率——每次调用之间间隔 0.5 秒。

数据手册下载与同步

LCSC 的 CDN 可直接提供数据手册 PDF——没有机器人防护,也不需要特殊请求头。因此,LCSC 与 DigiKey 一样,是可靠的数据手册来源。

数据手册目录同步

使用 sync_datasheets_lcsc.py 在 KiCad 项目旁维护一个 datasheets/ 目录。工作流和 manifest.json 格式与 DigiKey 和 Mouser 技能相同。无需 API 密钥。

# Sync datasheets for a KiCad project
python3 <skill-path>/scripts/sync_datasheets_lcsc.py <file.kicad_sch>

# Preview what would be downloaded
python3 <skill-path>/scripts/sync_datasheets_lcsc.py <file.kicad_sch> --dry-run

# Retry previously failed downloads
python3 <skill-path>/scripts/sync_datasheets_lcsc.py <file.kicad_sch> --force

# Custom output directory
python3 <skill-path>/scripts/sync_datasheets_lcsc.py <file.kicad_sch> -o ./my-datasheets

# Parallel downloads (3 workers)
python3 <skill-path>/scripts/sync_datasheets_lcsc.py <file.kicad_sch> --parallel 3

# Batch mode — sync from a plain MPN list (no KiCad project required)
python3 <skill-path>/scripts/sync_datasheets_lcsc.py --mpn-list mpns.txt --output ./datasheets

MPN 列表批处理模式(KH-312)——适用于有 MPN 列表,但没有可供指定的 KiCad 项目的情况。每行一个 MPN;会跳过空行和 # 注释(整行注释和行内注释);通过 is_real_mpn() 过滤通用值并去重。省略 --output 时,默认将输出保存到当前工作目录下的 ./datasheets/。

该脚本:

  • 运行 KiCad 原理图分析器,提取元件、MPN 和 LCSC 代码
  • 接受任何标识符——KiCad 符号属性中的 MPN、LCSC 代码或其他分销商 PN
  • 优先使用 LCSC 代码进行搜索(精确匹配)——匹配不到时再使用 MPN 关键词搜索
  • 在 jlcsearch 无结果,或命中结果没有数据手册 URL 时,对于 LCSC 代码(Cxxxxx)会回退到 wmsc.lcsc.com API
  • 从 LCSC CDN 下载——PDF 直链,没有机器人防护
  • 写入 manifest.json 清单——格式与 DigiKey/Mouser 技能相同
  • 验证 PDF 内容——检查 MPN、制造商和描述关键词
  • 限制请求速率——API 调用之间间隔 0.5 秒(可通过 --delay 配置)
  • 增量保存进度——可安全中断
单个数据手册下载

单次下载请使用 fetch_datasheet_lcsc.py。

# Search by MPN
python3 <skill-path>/scripts/fetch_datasheet_lcsc.py --search "GRM155R71C104KA88D" -o datasheet.pdf

# Search by LCSC code
python3 <skill-path>/scripts/fetch_datasheet_lcsc.py --search "C14663" -o datasheet.pdf

# Direct URL download
python3 <skill-path>/scripts/fetch_datasheet_lcsc.py "https://wmsc.lcsc.com/..." -o datasheet.pdf

# JSON output
python3 <skill-path>/scripts/fetch_datasheet_lcsc.py --search "C14663" --json

该脚本:

  • 跨操作系统兼容——使用 requests → urllib → playwright 回退链(不使用 wget/curl)
  • 验证 PDF 文件头——拒绝 HTML 错误页面
  • LCSC URL 失效时,回退到制造商的其他来源
  • 退出代码:0 = 成功,1 = 下载失败,2 = 搜索/API 错误
  • 依赖项:
    • pip install requests(推荐;对于 LCSC,urllib 回退方案也能正常工作)
    • pip install playwright && playwright install chromium(可选;LCSC 通常不需要)

LCSC 官方 API(需要审批)

基础 URL: https://ips.lcsc.com。需要使用 API 密钥 + 签名进行身份验证。请联系 [email protected] 申请访问权限。通常不需要——jlcsearch 已能满足大多数用例。

网页搜索备用方案

如果 jlcsearch API 不可用,可直接获取网站来搜索 LCSC:

https://www.lcsc.com/search?q=<query>

交叉引用与缺失的等效型号

LCSC 零件编号仅适用于 LCSC/JLCPCB 生态系统。使用 mfr 字段(MPN)在 DigiKey/Mouser 上进行交叉查询。

当 MPN 没有精确匹配的 LCSC 型号时:

  1. 按关键参数搜索(例如,“100nF 0402 X7R 16V”)
  2. 查找中国制造商提供的引脚兼容替代品
  3. 验证规格和封装是否匹配——即使封装尺寸相同,焊盘尺寸也可能不同
  4. 最后可将其标记为“寄售”,并单独采购

提示

  • is_basic 字段很重要——JLCPCB 基础元件免收备料费;扩展元件每个收费 3 美元
  • jlcsearch 的 stock 是 JLCPCB 的贴片库存;wmsc 详情中的 stockNumber 是 LCSC 自有库存——两者并不相同
  • jlcsearch 响应中已不再包含最小起订量和订购倍数——下单前请查看 LCSC 产品页面
  • 中国制造商的数据手册质量参差不齐——可在 DigiKey 上交叉查询 MPN,以获取更好的文档

评论

支持 Markdown