关于 Allen Brain
Allen Brain 是供研究人员探索 Allen Brain Atlas 基因记录、脑区层级和原位杂交实验的 MCP 服务。它通过 Allen Institute 的公开 RMA API 查询,无需密钥。
主要功能
- 01按符号、名称或 Entrez ID 搜索基因
- 02查询脑结构及层级路径
- 03列出基因的表达数据集
- 04无需密钥访问公开 API
适用场景
- 01确定 Allen 基因记录及其生物物种
- 02追踪脑区在层级结构中的位置
- 03查找某基因的原位杂交实验
MCP 相关
向 MCP 客户端提供基因搜索、脑结构查询和表达数据集工具。可作为本地 stdio 服务运行,也可通过 Pipeworx 网关连接。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://gateway.pipeworx.io/allen-brain/mcpclaude mcp add --transport http pipeworx-io-allen-brain https://gateway.pipeworx.io/allen-brain/mcp{"mcpServers":{"pipeworx-io-allen-brain":{"type":"http","url":"https://gateway.pipeworx.io/allen-brain/mcp"}}}在 Cursor 中打开{"servers":{"pipeworx-io-allen-brain":{"type":"http","url":"https://gateway.pipeworx.io/allen-brain/mcp"}}}在 VS Code 中打开{"mcpServers":{"pipeworx-io-allen-brain":{"type":"http","url":"https://gateway.pipeworx.io/allen-brain/mcp"}}}{"mcpServers":{"pipeworx-io-allen-brain":{"serverUrl":"https://gateway.pipeworx.io/allen-brain/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/allen-brain
来自 Allen Institute 公共 Brain Atlas RMA API 的基因、脑结构本体和原位杂交表达实验——了解基因在脑内的表达位置,以及表达注释所依据的规范区域层级结构。
这是 Pipeworx 的一部分——一个将 AI Agent 连接到 1872+ 个实时数据源的 MCP 网关。这是一项独立的非官方集成,与上游提供方无关联、未获其认可,也非由其发布。
工具
allen_search_genes(acronym?, name_contains?, entrez_id?, organism?, num_rows?, start_row?)— 基因符号/名称/Entrez ID → Allen 内部基因 ID 和生物体。allen_structures(acronym?, name_contains?, structure_id?, graph_id?, num_rows?, start_row?)— 脑区名称或缩写 → 结构 ID、父级,以及用于确定包含关系的从根到叶的structure_id_path。allen_expression_datasets(gene_acronym, plane_of_section?, product_id?, include_failed?, num_rows?, start_row?)— 某个基因的 ISH 实验(SectionDataSets):图谱产品、切片平面、切片厚度,以及 Allen 图表背后的数据集 ID。
身份验证
无需密钥。
数据源
- https://api.brain-map.org/api/v2/data/query.json — RMA 查询端点;
此处的每个工具都是针对该端点的一个 RMA 表达式(
model::Gene、model::Structure、model::SectionDataSet)。
注意事项
不同物种的基因缩写区分大小写,这是数据本身的事实,而非格式问题。 Gabra1 是小鼠基因,GABRA1 是人类基因;它们是不同的记录,关联的实验数量也不同(截至撰写本文时,分别为 14 个和 94 个 SectionDataSet)。使用错误的大小写进行精确匹配查询会返回一个空数组。两个基因工具都会重试不区分大小写的查询,并设置 casing_note 说明这一点,而不是默默返回零条结果。
过度筛选 SectionDataSet 查询会导致结果悄然为空。 对没有 Mouse-Brain-ISH 系列的基因添加 products[id$eq1],会返回 total_rows: 0 和 success: true——这不是错误。此处的产品和切片平面筛选条件都是可选的;当筛选后的查询结果为空时,该工具包会重新运行未筛选的查询并报告未筛选的总数,因此零条结果表示“你的筛选条件排除了所有内容”,而不是“该基因没有表达数据”。
对整个 criteria 值进行编码。 RMA 条件包含 [, ], $ 和 '。对整个表达式使用 encodeURIComponent 有效;在浏览器中直接使用原始方括号也有效,但命令行和某些 HTTP 客户端会吞掉它们,从而产生一个看起来像 API 故障的空结果。(这正是该工具包首次探测失败的原因。)
success: true 且 msg: [] 是“无结果行”的正常形式。 查询被拒绝时,返回的是 success: false,并在 msg 中提供错误信息——该工具包会对此抛出异常,因此两种情况不会混淆。
结构图谱因物种而异。 graph_id 1 对应成年小鼠,10 对应人类,17 对应发育中的小鼠。人类区域不属于小鼠图谱;默认值为 1,空结果会说明搜索的是哪个图谱。
快速开始
添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):
{
"mcpServers": {
"allen-brain": {
"url": "https://gateway.pipeworx.io/allen-brain/mcp"
}
}
}
此端点实际提供的内容
tools/list 在 https://gateway.pipeworx.io/allen-brain/mcp 返回上表中的工具,以及共享的 Pipeworx 元工具——ask_pipeworx、
discover_tools、search_within、remember/recall,还有其余网关级工具集。因此,你看到的工具数量会多于表格所列:目前,单个工具包端点除了列出该工具包自身的工具,还会列出大约 30 个共享工具。连接的 initialize 响应会说明其确切范围,是当天最权威的答案。
这是有意为之,并非意外复用。元工具可以让限定范围的连接回答此工具包未涵盖的问题——通过 ask_pipeworx 跨整个目录路由——而无需添加第二个 MCP 服务。目前无法挂载不包含这些工具的工具包端点;如果额外的架构信息占用的上下文超过了路由功能带来的价值,请连接一次完整网关,而不是连接多个工具包端点。
或者,连接完整的 Pipeworx 网关,直接列出每个工具包的工具,而不只是当前工具包的工具:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
两个 URL 都连接到同一个网关和相同的 1872+ 个数据源。唯一的区别是直接列出哪个工具包的工具;无论连接哪一个,ask_pipeworx 都能访问所有工具。
没有 MCP 客户端?通过 HTTP 调用
curl -X POST https://gateway.pipeworx.io/v1/tools/allen_search_genes \
-H 'Content-Type: application/json' \
-d '{"acronym":"Gabra1"}'
首次调用无需账号。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/allen_search_genes。查找工具:POST https://gateway.pipeworx.io/v1/tools/search_packs,请求体为 {"query":"..."}。
独立运行(无需网关账号)
此软件包也可以作为本地 stdio MCP 服务运行——无需 Pipeworx 账号,也无需往返网关:
{
"mcpServers": {
"allen-brain": {
"command": "npx",
"args": ["-y", "@pipeworx/mcp-allen-brain"]
}
}
}
或者直接运行它,确认服务能够启动:
npx -y @pipeworx/mcp-allen-brain
它通过 stdin/stdout 使用 MCP,并响应 initialize/tools/list/tools/call,且仅提供此工具包的工具——不包含上述网关连接所添加的任何共享元工具。数据来源相同、工具相同,但没有 ask_pipeworx 路由功能。
使用 ask_pipeworx
你可以用通俗英语提问,而不是直接调用工具——此功能既适用于上面的工具包端点,也适用于完整网关:
ask_pipeworx({ question: "your question about Allen Brain data" })
网关会选择合适的工具并自动填写参数。
更多信息
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。