关于 Mouser Electronics Search
Mouser Electronics Search 将 Mouser Search API 封装为 MCP 服务,供 MCP 客户端搜索电子元件目录。它支持按关键词、料号和制造商筛选,并可查询制造商名称;不提供购物车或下单接口。
主要功能
- 01按关键词搜索元件
- 02按料号查询元件
- 03按制造商筛选搜索
- 04列出制造商名称
- 05支持分页及 RoHS、库存筛选
适用场景
- 01按关键词查找电子元件
- 02核对指定料号及制造商
- 03筛选符合 RoHS 或有库存的元件
MCP 相关
该 MCP 服务通过 stdio 暴露 Mouser Search API 的搜索工具,包括关键词、料号、制造商筛选和制造商列表查询。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mouser-search-mcp
适用于 Mouser Electronics Search API 的模型上下文协议服务。
将 Mouser Search API 作为 MCP 工具提供,以便支持 MCP 的客户端(Claude Code、Claude Desktop 等)查询 Mouser 的元器件目录。
工具
| 工具 | 端点 | 功能 |
|---|---|---|
search_by_keyword | POST /api/v1/search/keyword | 按关键词搜索目录(最多 50 个元器件)。支持分页以及 RoHS/有货筛选。 |
search_by_part_number | POST /api/v1/search/partnumber | 查询 1–10 个元器件编号(以竖线分隔),可选精确匹配。 |
search_by_keyword_and_manufacturer | POST /api/v2/search/keywordandmanufacturer | 按关键词搜索,并限定制造商名称。 |
search_by_part_number_and_manufacturer | POST /api/v2/search/partnumberandmanufacturer | 按元器件编号查询,并限定制造商名称。 |
list_manufacturers | GET /api/v2/search/manufacturerlist | 列出制造商名称(使用结果为两个按制造商筛选的工具填充 manufacturer_name 参数)。 |
先决条件
- Python 3.10+
- Mouser Search API 密钥 — 请在 https://www.mouser.com/api-search/ 申请。
安装
使用 uv(推荐):
uv pip install -e .
或使用 pip:
pip install -e .
配置
服务从 MOUSER_API_KEY 环境变量读取 API 密钥。将 .env.example 复制为 .env 并填入密钥,或在 shell 中导出该变量。
运行
该服务通过 stdio 使用 MCP:
MOUSER_API_KEY=... mouser-search-mcp
与 Claude Code 搭配使用
注册该服务(替换路径和密钥):
claude mcp add mouser-search \
--env MOUSER_API_KEY=your-key \
-- mouser-search-mcp
与 Claude Desktop 搭配使用
添加到 claude_desktop_config.json:
{
"mcpServers": {
"mouser-search": {
"command": "mouser-search-mcp",
"env": {
"MOUSER_API_KEY": "your-key"
}
}
}
}
如果 mouser-search-mcp 不在你的 PATH 中,请将 command 指向脚本的绝对路径(例如 venv 的 bin/ 目录中的路径)。
说明
- Mouser 每次搜索响应最多返回 50 条记录。分页时,使用
records+starting_record(v1 关键词搜索)或records+page_number(v2 关键词+制造商搜索)。 search_options接受None、Rohs、InStock或RohsAndInStock,每次只能选择一项。part_search_options接受None或Exact。- Mouser 文档中介绍的购物车和订单端点需要 Ordering API 密钥,本服务不提供这些端点 — 本服务仅涵盖搜索功能。
发布
版本管理和发布均由 python-semantic-release 全自动完成。每次向 main 推送时,都会运行 .github/workflows/release.yml,该工作流会:
- 检查自上一个标签以来的提交。
- 决定下一个版本(如果没有符合发布条件的提交,则不执行任何操作)。
- 更新
pyproject.toml中的version,生成变更日志,提交更改并推送vX.Y.Z标签。 - 构建 wheel 和 sdist,并将其上传到 PyPI。
- 创建带有自动生成说明的 GitHub Release。
提交规范
提交必须遵循 Conventional Commits。开头的关键词决定版本升级幅度:
| 前缀 | 升级幅度 | 示例 |
|---|---|---|
feat: | 次版本 | feat: add list_manufacturers tool |
fix: | 补丁版本 | fix: handle empty Errors array |
perf: | 补丁版本 | perf: reuse httpx client |
feat!: / 正文中的 BREAKING CHANGE: | 主版本 | feat!: rename tools |
docs:、chore:、refactor:、test:、ci:、style: | 无 | (不发布版本) |
其他提交均会被忽略。如果你连续推送了许多小提交,semantic-release 会在下一次工作流运行时将它们合并为一个版本发布。
一次性设置
在工作流发布前,需要在 GitHub 界面中完成以下步骤:
- PyPI 账号和令牌 — 创建 PyPI 账号,然后在 API tokens 页面生成一个账号范围令牌(项目目前尚未发布到 PyPI,因此首次发布时无法将令牌设为项目范围;首次成功发布后,将其重新设为
mouser-search-mcp的项目范围)。 - 仓库密钥 — 在 GitHub 中,依次选择Settings → Secrets and variables → Actions → New repository secret,将名称设为
PYPI_API_TOKEN,并粘贴令牌值。 - 工作流权限 — Settings → Actions → General → Workflow permissions 必须设为 Read and write permissions,这样 semantic-release 才能推送版本更新提交和标签。
完成后,只需将带有 feat: 或 fix: 提交的更改合并到 main,其余步骤都会自动完成。若要跳过发布,请使用不会触发版本更新的前缀(docs:、chore: 等),或在提交消息中加入 [skip ci]。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。