Token导航 LogoToken导航TokenDH.com
Octopart MCP logo
搜索检索stdio官方级别未说明来源级核验

Octopart MCP

MCP Server

Nexar MCP Server是一个通过Nexar API搜索电子元件并获取数据表的模型上下文协议服务器,适用于电子工程师和AI助手。

工具数

0

提示词数

0

GitHub Stars

6

资源数

0
PythonClaude搜索Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Farad-Labs

提供方

Farad-Labs

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python octopart_server.py

详细介绍

Nexar MCP服务器

一种模型上下文协议(MCP)服务器,用于通过Nexar API(前身为API Octopart)搜索电子组件和检索数据表。

关键词:Nexar、Octopart、MCP、电子元件、零件搜索、数据表、BOM、元件采购、电子设计、PCB、Claude、AI助手

目的

此MCP服务器为AI助手提供了一个安全的界面,用于搜索Octopart/Nexar组件数据库、比较分销商之间的价格、检查可用性和检索数据表URL。非常适合使用Claude Desktop或其他兼容MCP的AI助手的电子工程师。

特性

组件特定工具

服务器为不同的组件类型提供专门的工具,允许AI客户端选择合适的工具并传递结构化参数:

工具说明
find_resistors按电阻、公差、额定功率、安装(SMD/通孔)搜索电阻器
find_capacitors按电容、电压、电介质、安装(SMD/通孔)搜索电容器
find_inductors按电感、额定电流、DCR、安装(SMD/通孔)、屏蔽搜索电感器
find_semiconductors按零件号、安装方式(SMD/通孔)搜索MCU、晶体管、IC、二极管
find_crystals按频率、ppm公差、安装(SMD/通孔)搜索晶体/振荡器
find_connectors按类型、引脚数、间距、安装方式搜索连接器
search_components零件号或未知组件类型的通用回退
search_bom在一次调用中批量搜索多个组件(用于BOM)
get_part_details获取特定MPN的完整规格、定价和可用性
get_datasheet获取特定MPN的数据表URL

公共参数

所有搜索工具都共享这些参数:

参数类型说明
manufacturerstring按制造商名称筛选
max_price浮动美元最高单价
distributorstring筛选到特定的分发器(digikey、mouser等)
quantityint用于价格折扣查找和排序的数量
in_stock_onlybool仅显示有库存的零件
limitint要返回的最大结果(默认值:10)

使用示例

自然地问克劳德——它会自动选择合适的工具。

电阻器

  • “给我找一个0805封装的10k 1%电阻器”
  • “我需要100个来自DigiKey的4.7k 0.25W电阻器”
  • “搜索0.01美元以下的100欧姆5%0402电阻器”

电容器

  • “在0805中找到一个100nF 16V X7R电容器”
  • “我需要Mouser 1206的10uF 25V电容”
  • “搜索0402封装中的47pF C0G电容器”

电感器

  • “找到一个2.2uH SMD电感器”
  • “找到一个额定电流为2A、屏蔽的10uH电感器”
  • “我需要DigiKey的100nH 0603电感器”
  • “搜索额定电流为3A的4.7uH通孔电感器”

半导体

  • “查找STM32F103C8T6”
  • “我需要一个额定电压为60V 10A的SO-8 N沟道MOSFET”
  • “搜索库存中的ESP32-WROOM模块”
  • “在DigiKey找到LM7805稳压器,我需要25个”

晶体

  • “在HC-49封装中找到一个容差为20ppm的8MHz晶体”
  • “我需要一个负载电容为12pF的32.768kHz晶体”
  • “搜索10ppm或更高的25MHz晶体”

连接器

  • “查找用于SMD安装的USB-C插座”
  • “我需要一个间距为2mm的4针JST-PH连接器”
  • “搜索RJ45插孔”
  • “查找间距为2.54mm的40针公接头”

零件号查找

  • “查找零件号LM358”
  • “查找有库存的ATmega328P PU”
  • “在Mouser搜索BME280传感器”

零件详细信息和数据表

  • “给我STM32F103C8T6的数据表”
  • “显示RC0805JR-0710KL的完整详细信息和定价”

分销商筛选

您可以将结果筛选到特定的分销商:

  • 得捷
  • 鼠标器
  • 纽瓦克
  • 法尼尔
  • 立创商城

示例:“在DigiKey找到至少有100个库存的10k电阻器”

BOM搜索(散装零部件查找)

使用以下命令在单个调用中搜索多个组件 search_bom.为每种组件类型传递一个带有数组的JSON对象:

{
  "resistors": [
    {"resistance": "10k", "tolerance": "1%", "package": "0805"},
    {"resistance": "4.7k", "package": "0603"}
  ],
  "capacitors": [
    {"capacitance": "100nF", "voltage_rating": "16V", "dielectric": "X7R", "package": "0805"},
    {"capacitance": "10uF", "voltage_rating": "25V"}
  ],
  "semiconductors": [
    {"query": "STM32F103C8T6"}
  ]
}

支持的组件阵列:

  • resistors -参数与 find_resistors
  • capacitors -参数与 find_capacitors
  • inductors -参数与 find_inductors
  • semiconductors -参数与 find_semiconductors
  • crystals -参数与 find_crystals
  • connectors -参数与 find_connectors
  • components -参数与 search_components (通用回退)

参数:

  • bom_json (string):带组件数组的JSON对象
  • default_limit (int):每个组件的结果(默认值:1)。用以下内容覆盖每个组件 "limit" 现场。

示例:“搜索这些BOM组件:10k 1%0805电阻器、100nF X7R电容器和STM32F103”

查询最佳实践

基于对Nexar API的广泛测试,以下是获得最佳结果的提示:

在查询字符串中包含包(推荐)

对于半导体和复杂元件,直接在 query 参数,而不是使用单独的 package 筛选器:

# Better results - package in query
find_semiconductors(query="N-channel MOSFET 60V SO-8")
find_semiconductors(query="2N2222 NPN SOT-23")

# May return fewer results - package as separate filter
find_semiconductors(query="N-channel MOSFET 60V", package="SO-8")

保持查询重点

具有关键规范的简单查询通常比过于详细的查询返回更好的结果:

# Good - focused query
find_semiconductors(query="STM32 microcontroller", distributor="digikey")

# May return 0 results - too specific
find_semiconductors(query="STM32 32-bit 3.3V microcontroller 20 GPIO")

针对业务约束使用筛选器

distributor, quantity, max_price,以及 in_stock_only 过滤器工作可靠:

find_resistors(resistance="10k", tolerance="1%", distributor="mouser", quantity=100)
find_capacitors(capacitance="100nF", max_price=0.05, in_stock_only=True)

无源元件与滤波器配合良好

对于电阻器、电容器、电感器和晶体,专用参数工作可靠:

find_resistors(resistance="4.7k", tolerance="1%", package="0805")
find_capacitors(capacitance="10uF", voltage_rating="16V", dielectric="X5R")
find_inductors(inductance="10uH", current_rating="2A", shielded=True)
find_crystals(frequency="8MHz", ppm_tolerance="20ppm")

先决条件

  • 启用MCP工具包的Docker桌面
  • Docker MCP CLI插件(docker mcp 命令)
  • Nexar API证书(客户ID和机密)

获取Nexar API证书

  1. 注册地址:https://nexar.com
  2. 创建或加入组织
  3. 访问portal.nexar.com创建应用程序
  4. 记下您的客户端ID和客户端密码

安装

第一步:构建Docker镜像

docker build -t nexar-mcp-server .

第二步:设置秘密

docker mcp secret set NEXAR_CLIENT_ID="your-client-id"
docker mcp secret set NEXAR_CLIENT_SECRET="your-client-secret"

# Verify secrets
docker mcp secret ls

步骤3:创建自定义目录

创建或编辑 ~/.docker/mcp/catalogs/custom.yaml:

version: 2
name: custom
displayName: Custom MCP Servers
registry:
  nexar:
    description: "Search electronic components and get datasheets via Nexar/Octopart API"
    title: "Nexar"
    type: server
    dateAdded: "2025-12-05T00:00:00Z"
    image: nexar-mcp-server:latest
    ref: ""
    readme: ""
    toolsUrl: ""
    source: ""
    upstream: ""
    icon: ""
    tools:
      - name: find_resistors
      - name: find_capacitors
      - name: find_inductors
      - name: find_semiconductors
      - name: find_crystals
      - name: find_connectors
      - name: search_components
      - name: get_datasheet
      - name: get_part_details
    secrets:
      - name: NEXAR_CLIENT_ID
        env: NEXAR_CLIENT_ID
        example: "your-client-id"
      - name: NEXAR_CLIENT_SECRET
        env: NEXAR_CLIENT_SECRET
        example: "your-client-secret"
    metadata:
      category: integration
      tags:
        - electronics
        - components
        - nexar
        - octopart
        - hardware
      license: MIT
      owner: local

步骤4:更新注册表

编辑 ~/.docker/mcp/registry.yaml 并在下面添加 registry: 按键:

registry:
  # ... existing servers ...
  nexar:
    ref: ""

步骤5:配置Claude桌面

查找您的Claude Desktop配置文件:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

确保自定义目录包含在args数组中:

{
  "mcpServers": {
    "mcp-toolkit-gateway": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v", "/var/run/docker.sock:/var/run/docker.sock",
        "-v", "/Users/YOUR_USERNAME/.docker/mcp:/mcp",
        "docker/mcp-gateway",
        "--catalog=/mcp/catalogs/docker-mcp.yaml",
        "--catalog=/mcp/catalogs/custom.yaml",
        "--config=/mcp/config.yaml",
        "--registry=/mcp/registry.yaml",
        "--tools-config=/mcp/tools.yaml",
        "--transport=stdio"
      ]
    }
  }
}

步骤6:重新启动克劳德桌面

  1. 完全退出克劳德桌面
  2. 重新启动克劳德桌面
  3. 你的新工具应该出现了!

配置

服务器支持通过环境变量进行可选配置。默认情况下,结果按100个数量的最低价格排序。

可用设置

变量默认值描述
NEXAR_DEFAULT_SORT_QUANTITY100用于价格排序的数量细分(例如100、1000)
NEXAR_DEFAULT_DISTRIBUTOR(无)始终筛选到此分发服务器(例如,“digikey”、“mouser”)
NEXAR_DEFAULT_IN_STOCK_ONLYfalse默认情况下仅显示库存零件

设置配置

在目录条目中添加环境变量 ~/.docker/mcp/catalogs/custom.yaml:

registry:
  nexar:
    # ... other settings ...
    env:
      - name: NEXAR_DEFAULT_SORT_QUANTITY
        value: "100"
      - name: NEXAR_DEFAULT_DISTRIBUTOR
        value: "digikey"
      - name: NEXAR_DEFAULT_IN_STOCK_ONLY
        value: "true"

或者对于本地测试,直接设置环境变量:

export NEXAR_DEFAULT_SORT_QUANTITY=1000
export NEXAR_DEFAULT_DISTRIBUTOR=mouser
export NEXAR_DEFAULT_IN_STOCK_ONLY=true

建筑

Claude Desktop -> MCP Gateway -> Nexar MCP Server -> Nexar GraphQL API (Octopart)
                                       |
                              Docker Desktop Secrets
                              (NEXAR_CLIENT_ID,
                               NEXAR_CLIENT_SECRET)

发展

局部测试

# Set environment variables for testing
export NEXAR_CLIENT_ID="your-client-id"
export NEXAR_CLIENT_SECRET="your-client-secret"

# Run directly
python octopart_server.py

# Test MCP protocol
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | python octopart_server.py

添加新工具

  1. 将该功能添加到 octopart_server.py
  2. 用…装饰 @mcp.tool()
  3. 用新的工具名称更新目录条目
  4. 重建Docker镜像

故障排除

工具未出现

  • 验证Docker镜像构建成功
  • 检查目录和注册表文件
  • 确保Claude Desktop配置包括自定义目录
  • 重新启动克劳德桌面

身份验证错误

  • 通过以下方式验证机密 docker mcp secret list
  • 确保密码和目录中的秘密名称匹配
  • 检查您的Nexar应用程序是否启用了供应范围

未找到结果

  • 尝试更广泛的搜索查询
  • 检查零件号是否正确
  • 某些零件可能不在Nexar/Octart数据库中

安全注意事项

  • 存储在Docker Desktop secrets中的所有机密
  • 从不硬编码凭据
  • 以非root用户身份运行
  • 从未记录敏感数据

API费率限制

Nexar API的使用限制取决于您的订阅计划。根据返回的匹配零件数量,每个搜索查询都会计入您的每月配额。

相关

许可证

MIT许可证

目录标签

目录标签

PythonClaude搜索电子元件搜索本地部署数据表检索BOM管理PCB设计AI助手集成

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP