基因组数据查询服务器

Ensembl MCP服务器是一个即插即用的模型上下文协议服务器,用于通过Ensembl的REST API进行基因、变体、序列和物种的交互,支持高级基因组研究和工具链环境。

  • by tanaylohia
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 tanaylohia/ensembl_mcp

使用说明

Ensembl MCP服务器

Mandrake Bio开发的Tanay Lohia

即插即用模型上下文协议(MCP)服务器,用于与Ensembl的REST API在基因、变体、序列和物种之间进行交互。
在Claude Desktop等环境中支持先进的基因组研究和工具链。


🔍 概述

Ensembl MCP服务器通过MCP兼容接口桥接EnsemblREST API。将其用于:

  • 快速 基因和转录本查找
  • 跨物种比较基因组学
  • 变体分析和监管注释
  • 全力支持 序列翻译、重复掩蔽,以及 批处理

✨ 关键能力

1.基因和转录分析

  • lookup_gene --通过Ensembl ID或符号检索详细信息
  • get_transcripts --所有基因转录物的结构信息
  • search_genes --按名称、描述或标识符查询

2.序列工具

  • get_sequence --基于基因组或特征的DNA检索
  • get_cds_sequence --从成绩单中提取CDS
  • translate_sequence --将DNA转化为蛋白质
  • 支持重复遮蔽(硬/软)

3.比较基因组学

  • get_homologs --跨物种的直系同源/旁系同源
  • get_gene_tree --多种格式的系统发育树

4.变体探索

  • get_variants --从基因组区域检索变异
  • get_variant_consequences --预测变异对基因的影响

5.监管特征挖掘

  • get_regulatory_features --推广者、增强者、TFBS
  • get_motif_features --探索TF结合图案

6.注释和交叉引用

  • get_xrefs --PDB、RefSeq、EMBL等
  • map_coordinates --跨基因组组装转换
  • 访问GO术语和功能元数据

7.物种和集合元数据

  • list_species, get_assembly_info, get_karyotype
  • 染色体带和基因组统计

8.批量处理

  • batch_gene_lookup --并行化基因信息提取
  • batch_sequence_fetch --一次获取多个区域

⚙️ 安装

# Clone repo
git clone https://github.com/tanaylohia/Ensembl_MCP.git
cd Ensembl_MCP

# Install dependencies
npm install

# Build the server
npm run build

🧠 与Claude Desktop一起使用

逐步积分法

  1. 构建 (如果尚未完成):

    npm run build
    
  2. 在Claude Desktop中配置MCP:

    • 打开 设置→ MCP服务器
    • 添加:
      • 名字: ensembl
      • 命令: node
      • 参数: /absolute/path/to/ensembl-server/build/index.js
  3. 重新启动克劳德桌面

示例提示

  • “查找BRCA2基因并获取其蛋白质序列”
  • “斑马鱼中TP53的直系同源物是什么?”
  • “获取chr17:43044295-43125364中的变体及其后果”
  • “搜索胰岛素相关基因”

🧬 支持的输入和输出

✅ 输入

  • 基因组区域: chr1:1000000-2000000, 1:1000000-2000000
  • 基因/转录物ID团体(ENSG...),RefSeq,基因符号

📤 输出

类型 格式
序列 FASTA
变体 VCF
功能 GFF
数据响应 JSON(默认)
系统发育 JSON、Newick、PhyloXML

🌍 物种覆盖率

支持Ensembl的所有可用物种:

  • 脊椎动物:人类、老鼠、斑马鱼
  • 植物:水稻、拟南芥、小麦
  • 真菌:酵母
  • 原生动物和后生动物:果蝇、秀丽隐杆线虫和其他

默认物种: homo_sapiens 除非另有规定


🧯 错误处理

强大的、对开发人员友好的错误消息:

  • 无效输入
  • 未知物种
  • REST API超时
  • 坐标格式错误

📡 数据源

  • 由官方提供技术支持 Ensembl REST API
  • 注释基因组内容的实时查询

🤝 贡献

欢迎拉取请求——特别是如果你是:

  • 添加新物种或MCP工具
  • 提高性能或模块化
  • 报告错误或API更改

📜 许可证

MIT许可证。看 LICENSE 了解详情。


📬 联系

塔奈·洛希亚
对于问题、想法或合作, 访问GitHub仓库


🙏 致谢

多亏了

  • Ensembl开发团队
  • 模型上下文协议(MCP)贡献者