可便捷访问 Ensembl 庞大基因组数据库,支持基因查询、序列检索、变异分析、比较基因组学等功能,通过标准化 MCP 接口提供多物种数据及批量处理能力。【此简介由AI生成】
当前项目代码仓暂无内容
以下内容由 AI 翻译,如有问题请 点此提交 issue 反馈

非官方 Ensembl MCP 服务器
一个全面的模型上下文协议(MCP)服务器,提供对 Ensembl REST API 的访问,用于获取基因组数据、比较基因组学和生物学注释。
由 Augmented Nature 开发
概述
本服务器通过标准化的 MCP 接口实现对 Ensembl 庞大基因组数据库的无缝访问。它支持跨多个物种的基因查询、序列检索、变异分析、比较基因组学、调控特征等多种功能。
功能
基因与转录本信息
- 基因查询:通过 Ensembl ID 或基因符号获取详细的基因信息
- 转录本分析:检索基因的所有转录本及其结构细节
- 基因搜索:按名称、描述或标识符搜索基因,并提供筛选选项
序列数据
- 基因组序列:提取任何基因组区域或特征的 DNA 序列
- CDS 序列:获取特定转录本的编码序列
- 序列翻译:将 DNA 序列翻译成蛋白质序列
- 重复序列屏蔽:支持硬屏蔽和软屏蔽重复序列
比较基因组学
- 同源基因检测:跨物种查找直系同源和旁系同源基因
- 系统发育树:生成多种格式的基因家族树
- 跨物种分析:比较不同生物的基因和基因组
变异数据
- 变异检索:获取基因组区域中的遗传变异
- 后果预测:预测变异对基因和转录本的影响
- 群体遗传学:访问等位基因频率和群体数据
调控特征
- 调控元件:访问增强子、启动子和 TFBS 数据
- 基序特征:获取转录因子结合基序
- 细胞类型背景:按细胞类型筛选调控特征
交叉引用与注释
- 外部数据库链接:获取与 PDB、EMBL、RefSeq 等的交叉引用
- 坐标映射:在不同基因组组装版本间转换坐标
- 本体术语:访问 GO 术语和功能注释
物种与组装信息
- 物种列表:浏览可用的物种和组装版本
- 组装统计数据:获取基因组组装信息和统计数据
- 核型数据:访问染色体信息和显带模式
批量处理
- 批量基因查询:同时处理多个基因
- 批量序列获取:高效检索多个区域的序列
安装
# Clone or download the server files
cd ensembl-server
# Install dependencies
npm install
# Build the server
npm run build
在 Claude 桌面端使用
设置说明
-
构建服务器(如果尚未构建):
npm run build -
添加到 Claude 桌面端配置:
- 打开 Claude 桌面端
- 前往设置 → MCP 服务器
- 添加新服务器,信息如下:
- 名称:
ensembl - 命令:
node - 参数:
/path/to/ensembl-server/build/index.js
- 名称:
-
重启 Claude 桌面端以加载服务器
可用工具(共 25 个)
基因与转录本信息
lookup_gene- 通过稳定 ID 或符号获取详细的基因信息get_transcripts- 获取基因的所有转录本及其详细结构search_genes- 按名称、描述或标识符搜索基因
序列数据
get_sequence- 获取基因组坐标或基因/转录本 ID 的 DNA 序列get_cds_sequence- 获取转录本的编码序列(CDS)translate_sequence- 将 DNA 序列翻译成蛋白质序列
比较基因组学
get_homologs- 查找跨物种的直系同源和旁系同源基因get_gene_tree- 获取基因家族的系统发育树
变异数据
get_variants- 获取基因组区域内的遗传变异get_variant_consequences- 预测变异对基因和转录本的影响
调控特征
get_regulatory_features- 获取基因组区域内的调控元件get_motif_features- 获取基因组区域内的转录因子结合基序
交叉引用与注释
get_xrefs- 获取基因的外部数据库交叉引用map_coordinates- 在不同基因组组装版本间转换坐标
物种与组装信息
list_species- 获取可用物种和组装版本列表get_assembly_info- 获取基因组组装信息和统计数据get_karyotype- 获取染色体信息和核型
批量处理
batch_gene_lookup- 同时查询多个基因batch_sequence_fetch- 获取多个区域或特征的序列
Claude 桌面版使用示例
连接成功后,您可以通过自然语言访问基因组数据:
- "查询 BRCA2 基因并获取其序列"
- "查找 TP53 在小鼠中的同源基因"
- "获取 chr17:43044295-43125364 区域的变异"
- "搜索与胰岛素相关的基因"
- "获取人类基因组的组装信息"
- "将此 DNA 序列翻译成蛋白质:ATGAAACGC..."
支持的物种
服务器支持 Ensembl 中所有可用的物种,包括:
- 脊椎动物:人类、小鼠、大鼠、斑马鱼等
- 植物:拟南芥、水稻、小麦等
- 真菌:酵母等
- 原生生物:多种原生生物物种
- 后生动物:果蝇、秀丽隐杆线虫等
未指定时,默认物种为 homo_sapiens。
输入格式
基因组区域
chr1:1000000-2000000- 标准格式1:1000000-2000000- 不带 'chr' 前缀ENSG00000139618- 特征 ID
基因/转录本 ID
- Ensembl ID:
ENSG00000139618、ENST00000380152 - 基因符号:
BRCA2、TP53 - RefSeq ID:
NM_000059
输出格式
主要格式
- JSON:结构化数据(大多数工具的默认格式)
- FASTA:序列数据
- GFF:基因组特征格式
- VCF:变异调用格式
树格式
- JSON:结构化树数据
- Newick:标准系统发育格式
- PhyloXML:丰富的系统发育格式
错误处理
服务器提供全面的错误处理:
- 无效参数:清晰的验证消息
- API 错误:来自 Ensembl 的详细错误信息
- 网络问题:超时和连接错误处理
- 物种验证:自动物种名称验证
速率限制
服务器遵循 Ensembl 的速率限制准则:
- 每秒最多 15 个请求
- 批量操作之间的适当延迟
- 连接池以提高效率
配置
环境变量
ENSEMBL_BASE_URL:覆盖默认 API 基础 URLREQUEST_TIMEOUT:设置自定义超时时间(默认:30000ms)
物种配置
- 默认物种:
homo_sapiens - 自动物种验证
- 支持所有 Ensembl 分类
API 覆盖范围
本服务器提供对主要 Ensembl REST API 端点的访问:
查找与搜索
/lookup/id/{id}- 基因/转录本查找/search- 基因搜索功能
序列
/sequence/id/{id}- 特征序列/sequence/region/{species}/{region}- 基因组序列
比较基因组学
/homology/id/{id}- 同源性数据/genetree/id/{id}- 基因树
变异
/variation/region/{species}/{region}- 变异数据/vep/species/{species}/region- 变异效应预测
调控
/regulatory/species/{species}/region/{region}- 调控特征/regulatory/species/{species}/microarray/{region}- 基序特征
交叉引用
/xrefs/id/{id}- 外部数据库引用/map/coords/{species}/{assembly}/{region}- 坐标映射
信息
/info/species- 可用物种/info/assembly/{species}- 组装信息
支持
有关以下方面的问题:
- 服务器功能:检查服务器日志和错误消息
- Ensembl 数据:参考 Ensembl 文档
- API 使用:参见 Ensembl REST API 指南
贡献
欢迎贡献!请确保:
- TypeScript 合规性
- 全面的错误处理
- 文档更新
- 新功能的测试覆盖
相关工具
本服务器可与其他生物信息学 MCP 服务器良好集成:
- UniProt Server:蛋白质数据集成
- AlphaFold Server:三维结构预测
- STRING Server:蛋白质相互作用网络
- PDB Server:结构生物学数据
关于 Augmented Nature
此 Ensembl MCP Server 由 Augmented Nature 开发,该公司专注于构建用于科学研究和发现的人工智能驱动工具。
引用说明
如果您在研究或发表的成果中使用了本项目,请按以下格式引用:
author = {Moudather Chelbi},
title = {Ensembl MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/Ensembl-MCP-Server},
note = {Accessed: 2025-06-29}