关于 Bold Systems
Bold Systems 是查询 BOLD Systems DNA 条形码参考库的非官方 MCP 服务,适用于生物多样性研究及标本记录检索。它结合标本与序列搜索、分类解析,并支持免密访问。
主要功能
- 01搜索标本记录
- 02获取条形码序列
- 03解析 BOLD 分类信息
- 04按分类与地点筛选
- 05返回 FASTA 序列块
适用场景
- 01查找某分类的凭证标本
- 02按标记获取序列
- 03查看分类与 BIN 数量
MCP 相关
向 MCP 客户端提供标本、序列和分类工具。可经 Pipeworx 网关连接,也可作为本地 stdio MCP 服务运行。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/bold-systems/mcpclaude mcp add --transport http pipeworx-io-bold-systems https://gateway.pipeworx.io/bold-systems/mcp{"mcpServers":{"pipeworx-io-bold-systems":{"type":"http","url":"https://gateway.pipeworx.io/bold-systems/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-bold-systems":{"type":"http","url":"https://gateway.pipeworx.io/bold-systems/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-bold-systems":{"type":"http","url":"https://gateway.pipeworx.io/bold-systems/mcp"}}}{"mcpServers":{"pipeworx-io-bold-systems":{"serverUrl":"https://gateway.pipeworx.io/bold-systems/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
44| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| q | string | 否 | question 的别名。 |
| ask | string | 否 | question 的别名。 |
| text | string | 否 | question 的别名。 |
| input | string | 否 | question 的别名。 |
| packs | array | 否 | 可选。将路由限制为这些包的 slug(例如 ["sec-form-d","sec-13f"]),路由器随后只会从这些包中的工具进行选择。省略则使用默认的完整目录路由。Slug 可从 list_packs / search_packs / https://pipeworx.io/directory 获取;未列出或未知的 slug 会被忽略,并在 _meta.pack_scope.ignored 中列出。如果没有任何 slug 能匹配问题,则会在整个目录中路由,并设置 _meta.pack_scope.full_catalog:true(绝不会返回空答案)。 |
| query | string | 否 | question 的别名。 |
| prompt | string | 否 | question 的别名。 |
| message | string | 否 | question 的别名。 |
| question | string | 是 | 用自然语言表达的问题或请求。支持 query、q、prompt、text、input、ask、message 作为别名。 |
详细介绍
@pipeworx/bold-systems
来自 BOLD Systems(Barcode of Life Data System,圭尔夫大学生物多样性基因组学中心)的全球 DNA 条形码参考库——包括带有采集地、机构和分类信息的标本凭证、COI/rbcL/matK 条形码序列,以及 BIN 物种代理聚类。
属于 Pipeworx——一个将 AI Agent 连接到 1875+ 个实时数据源的 MCP 网关。这是一个独立的非官方集成,与上游提供方无关联,也未获得其认可或发布。
工具
bold_specimens(taxon?, country?, bin?, institution?, query?, limit?, offset?)— 标本记录: 流程 ID、完整分类信息、BIN、采集日期、带坐标的采集地、收藏机构、标记基因和 GenBank 登录号。筛选条件之间采用 AND 关系。bold_sequences(taxon?, country?, bin?, institution?, marker?, query?, limit?, offset?)— 条形码序列, 包含引物、碱基数、INSDC 登录号和可直接粘贴的 FASTA 块。bold_taxonomy(name, rank?)— 根据 BOLD 自有索引解析名称:谱系、该名称上方各级的记录/物种/BIN 数量、通俗易懂的描述,以及附有数量的其他匹配项。
身份验证
无需密钥。
数据源
- https://portal.boldsystems.org/api/terms — 术语索引;将普通名称解析为查询三元组。
- https://portal.boldsystems.org/api/query — 将三元组查询转换为
query_id。 - https://portal.boldsystems.org/api/documents/{query_id} — 记录,
nuc序列内嵌其中。 - https://portal.boldsystems.org/api/taxonomy/{description,hierarchy} — 谱系、数量和文本说明。
- Swagger:https://portal.boldsystems.org/api/docs(规范文件位于
https://portal.boldsystems.org/openapi.json,而不是
/api/下)。
陷阱
v4 API 已失效。 v4.boldsystems.org/index.php/API_Public/{specimen,sequence,combined}——所有教程和大多数 R 包仍指向这里——返回的是「BOLD Public Offline」HTML 页面,而不是 JSON,因此简单的客户端会报告解析错误,而不会提示服务已退役。这里的所有内容都使用 v5 门户 API。
查询语言采用 scope:field:value 三元组,无法根据值推断 scope/field 对。 Canada 对应 geo:country/ocean,Danaus 对应 tax:genus,BOLD:AAA9566 对应 bin:uri,Smithsonian Institution 对应 inst:name。自由文本会返回 400 错误 {"detail":"Invalid triplet token"}。此工具包会先通过 /api/terms 解析每个类型化参数,将普通名称转换为可匹配的查询,从而避免 400 错误或悄然返回零结果。
/api/counts 报告的是各项计数的总和,而不是交集的大小。 对于 tax:species:Danaus plexippus;geo:country/ocean:Canada,它会报告 2,520,553 条记录;实际匹配集只有 7 条。这是一个干净的 200 响应,却携带了相差五个数量级的错误数字,而简单的集成会直接引用这个数字。此工具包不会使用它——matchingRecords 来自文档查询的 recordsTotal,这才是真实计数。(以分号分隔的三元组在 /documents 上执行 AND 查询,但在 /counts 上会被相加。)
/api/query/preprocessor 遇到多词字符串时会退回到 ID 字段匹配。 输入 "Danaus plexippus Canada" 会返回 ids:processid:...;ids:sampleid:...;ids:insdcacs:...——这是一个无法匹配任何内容、也不会报错的查询。请分别解析每个筛选条件,这正是 resolveTriplet 的做法。
BOLD 中保存着从未测序的标本记录。 bold_sequences 会筛选出具有 nuc 字段的记录,并在结果为空时于 note 中说明这一点,因此可以区分「该分类单元没有条形码」和「该分类单元没有记录」。
标记筛选是在返回的页面上应用的,而非在上游应用(BOLD 的术语索引中没有 COI-5P 条目)。设置标记后,此工具包会将获取量扩大 5 倍,并报告扫描页面中实际出现的标记,因此即使结果为空,也会列出你原本可以查询的标记。
identifier_email 会在数据离开此工具包前被删除——它是个人的联系地址,不是标本数据。采集者和鉴定者的姓名会保留:它们是博物馆凭证上的公开署名,会出现在每条生物多样性记录中。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"bold-systems": {
"url": "https://gateway.pipeworx.io/bold-systems/mcp"
}
}
}
此端点实际提供的内容
https://gateway.pipeworx.io/bold-systems/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、discover_tools、search_within、remember/recall,以及网关范围内的其他工具。因此,你看到的工具数量会多于此表中的数量:目前,单个工具包端点除了列出该工具包自身的工具,还会列出约 30 个共享工具。连接的 initialize 响应会说明确切范围,并且是当日有效范围的权威依据。
这是有意为之,并非意外复用连接。元工具让范围受限的连接也能回答本工具包未涵盖的问题——通过可路由整个目录的 ask_pipeworx——无需你再添加第二个 MCP 服务。目前无法在不包含这些元工具的情况下挂载工具包端点;如果额外的架构信息占用的上下文比路由功能带来的价值更大,请连接一次完整网关,而不是连接多个工具包端点。
也可以连接完整的 Pipeworx 网关,以直接列出所有工具包的工具,而不仅仅是当前工具包的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
两个 URL 都会连接到同一个网关和相同的 1875+ 个数据源。唯一的区别是哪些工具包的工具会被直接列出;无论连接哪个 URL,ask_pipeworx 都能访问全部工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/bold_specimens \
-H 'Content-Type: application/json' \
-d '{"taxon":"Danaus plexippus","country":"Canada","limit":3}'
首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/bold_specimens。查找工具:POST https://gateway.pipeworx.io/v1/tools/search_packs,并使用 {"query":"..."}。
独立运行(无需网关账户)
此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账户,也无需通过网关往返:
{
"mcpServers": {
"bold-systems": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-bold-systems"]
}
}
}
或者直接运行,确认它可以启动:
npx -y @pipeworx/mcp-bold-systems
它通过 stdin/stdout 使用 MCP,并响应 initialize/tools/list/tools/call,仅提供此软件包的工具——不包含上述网关连接额外提供的任何共享元工具。相同的源代码、相同的工具,不使用 ask_pipeworx 路由。
使用 ask_pipeworx
你可以用通俗易懂的英语提问,而不是直接调用工具——这既适用于上面的软件包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Bold Systems data" })
网关会选择合适的工具并自动填入参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。