BioGRID MCP服务器
这是一个模型上下文协议(MCP)端点服务器,可以解锁BioGRID的2×10⁷ 为任何LLM或自主代理提供精心策划的遗传和物理相互作用,以访问BioGRID API。该存储库为您的代理堆栈提供了工具,可以从原始基因符号到支持发布的交互网络、TSV边缘列表,并随时分析统计数据——所有这些都是通过模式验证的JSON调用完成的。这些工具可以自我描述输入/输出,因此代理可以自己发现、验证和纠正调用。
______________________________________________________________________
工具
- get_interactions:检索涉及一个基因的每个BioGRID相互作用。
- get_neighbors:轻量级包装器,为单个基因返回一级伴侣。
- export_edge_list:为一组基因生成TSV/CSV边缘列表,为Cytoscape或图形工具做好准备。
- search_genes:模糊搜索BioGRID的基因表,查找模糊的符号/别名。
- interaction_stats:基因列表的快速网络摘要(计数、度分布、物理/遗传比率)。
______________________________________________________________________
资源模板
- biogrid://edge-list/{gene1,gene2,…}:基因集的TSV边列表(与export_edge_list相同,但可缓存和共享)
- biogrid://interaction/{biogrid_id}:让代理引用一个交互作为证据,而不解析整个TSV。
- biogrid://gene/{gene_symbol}:模型在引入基因时可以引用的快速“知识卡”。
- biogrid://publications/{pubmed_id}:启用引用感知答案或RAG管道,而不会影响NCBI。
- biogrid://dataset/{dataset_id}:批量下载特定的BioGRID数据集版本(tar/zip)。
______________________________________________________________________
示例用例
| 工具名称 | 用途 | 核心参数(默认值) | 典型输出 | 示例用例 | ||
|---|---|---|---|---|---|---|
| get_interactions | 检索涉及的每个BioGRID交互 基因. | gene_symbol (必填), species = 9606, type = `"all" \ | "physical" \ | "genetic", limit` =1000 | 交互对象的JSON数组,每个对象都有合作伙伴、实验系统、PubMed ID、分数。 | _“显示报告的所有物理交互 TP53 这样我就可以为CRISPR筛查筛选出联合因子候选人。”_ |
| get_neighbors | 轻量级包装返回 一级合伙人 只有。 | 与上述参数相同(limit 默认值为250)。 | 合作伙伴符号和元数据的JSON列表(非常适合提示循环)。 | _自动扩展蛋白质集:“给定 乳腺癌易感基因1,返回其前25个遗传相互作用因子,并将其用于功能富集。”_ | ||
| export_edge_list | 生成TSV/CSV边缘列表 一组基因 –已准备好使用Cytoscape、NetworkX、Gephi等。 | gene_symbols[] (必填), species, type | 单文本blob(TSV)或分块流:源、目标、交互类型、PubMed、证据。 | _“为我的RNA-seq-DEG列表中的基因创建一个边缘列表,这样我就可以在Cytoscape中对网络进行聚类并找到功能模块。”_ | ||
| 搜索基因 | 模糊搜索BioGRID的基因表,查找模糊的符号或别名。 | query (必填), species | 带有官方标志、系统名称、BioGRID ID和生物体的排名列表。 | _解析别名:“我不确定 第85页 地图到 PIK3R1 或 PIK3R2--搜索,让我选择正确的高置信度条目。”_ | ||
| 交互_状态 | 基因列表的快速网络摘要(节点/边计数、度分布、物理:遗传比) | gene_symbols[] (必填), species, type | JSON包含节点计数、边计数、平均度、直方图桶。 | _“在我导出之前,给我一个理智的检查:我的50个阿尔茨海默氏症点击之间的交互网络有多密集?”_ |
______________________________________________________________________
快速安装
1.克隆和安装
git clone https://github.com//biogrid-mcp-server.git
cd biogrid-mcp-server
npm install2.设置BioGRID API密钥
https://webservice.thebiogrid.org/ 这是免费的学术用途。
export BIOGRID_API_KEY=YOUR_KEY_HERE3.运行服务器
stdio模式最适合本地LLM
npm run startHTTP模式-在端口上为远程代理公开(选择任何空闲端口):
npm run start:http -- --port 3335您应该看到类似以下内容:
[BIOGRID-MCP] server ready – manifest at /.well-known/mcp/manifest.json5.工具调用示例
{
"name": "get_neighbors",
"arguments": {
"gene_symbol": "TP53",
"species": 9606,
"type": "genetic",
"limit": 250
}
}9606代表“人类”这一物种。 您将获得的样品
{
"query": {"gene":"TP53","species":9606,"type":"genetic"},
"neighbors": [
{
"partner": "MDM2",
"biogridId": "111",
"experimentalSystem": "Dosage Rescue",
"pubmedIds": [12345]
}
/* … */
],
"meta": {
"total": 187,
"timestamp": "YYYY-MM-DDTHH:MM:SSZ",
"biogrid_version": "4.4.229"
}
}______________________________________________________________________
跨多个MCP服务器的工作流示例
- 变体分诊:
搜索基因→ get_interactions→ 根据遗传证据过滤→ 按PubMed支持对合作伙伴进行排名。
- 模块构建:
get_neighbors(种子基因)→ export_edge_list→ 输入GRAPH-MCP进行聚类→ overlay_表达式。
- 跨数据库富集:
搜索基因→ STRING-MCP获取_功能丰富→ 反应组MCP通路覆盖。
马上就来:http://github.com/kleonai/bio-mcp-servers查看Biology MCP服务器列表和使用指南。
发展指南
- src/api.ts–围绕BioGRID/交互/和/基因/端点的薄axios包装
- src/parsers.ts–转换TSV➞ 键入对象
- src/tools.ts–声明工具模式和处理程序
- src/server.ts–连接MCP传输(stdio+express)
- 在src/analytics.ts中添加新的分析(例如中心性、聚类)
先决条件
| 要求 | 版本 | 注释 |
|---|---|---|
| Node.js | ≥18 LTS | TypeScript+ESM支持 |
| npm | ≥9 | 配备Node装置的船舶 |
| BioGRID API 密钥 | _自由_ 对于学者 | 在这里申请 |
______________________________________________________________________
该服务器由开发https://kleonlab.com/
