Ensembl MCP Server
E

Ensembl MCP Server

非官方的Ensembl MCP服务器,提供基因组数据、比较基因组学和生物注释的全面访问接口,支持基因查询、序列检索、变异分析和跨物种比较等功能。
2分
0

安装

复制以下命令到你的Client进行配置
注意:您的密钥属于敏感信息,请勿与任何人分享。

🚀 非官方Ensembl MCP服务器

这是一个全面的模型上下文协议(MCP)服务器,可通过它访问Ensembl REST API,获取基因组数据、进行比较基因组学研究以及获取生物注释信息。

增强自然 开发

🚀 快速开始

本服务器通过标准化的MCP接口,让用户能够无缝访问Ensembl庞大的基因组数据库。它支持在多个物种中进行基因查询、序列检索、变异分析、比较基因组学研究、调控特征分析等诸多操作。

✨ 主要特性

基因与转录本信息

  • 基因查询:通过Ensembl ID或基因符号获取详细的基因信息。
  • 转录本分析:检索某个基因的所有转录本,并获取其结构细节。
  • 基因搜索:可按名称、描述或标识符搜索基因,并支持过滤选项。

序列数据

  • 基因组序列:提取任何基因组区域或特征的DNA序列。
  • CDS序列:获取特定转录本的编码序列。
  • 序列翻译:将DNA序列翻译成蛋白质序列。
  • 重复序列屏蔽:支持硬屏蔽和软屏蔽重复序列。

比较基因组学

  • 同源基因检测:查找不同物种间的直系同源和旁系同源基因。
  • 系统发育树:以多种格式生成基因家族树。
  • 跨物种分析:比较不同生物体的基因和基因组。

变异数据

  • 变异检索:获取基因组区域内的遗传变异。
  • 后果预测:预测变异对基因和转录本的影响。
  • 群体遗传学:获取等位基因频率和群体数据。

调控特征

  • 调控元件:访问增强子、启动子和转录因子结合位点(TFBS)数据。
  • 基序特征:获取转录因子结合基序。
  • 细胞类型上下文:按细胞类型过滤调控特征。

交叉引用与注释

  • 外部数据库链接:获取与PDB、EMBL、RefSeq等数据库的交叉引用。
  • 坐标映射:在不同基因组组装之间转换坐标。
  • 本体术语:访问GO术语和功能注释。

物种与组装信息

  • 物种列表:浏览可用的物种和组装。
  • 组装统计:获取基因组组装信息和统计数据。
  • 核型数据:访问染色体信息和带型模式。

批量处理

  • 批量基因查询:同时处理多个基因。
  • 批量序列获取:高效检索多个区域的序列。

📦 安装指南

# 克隆或下载服务器文件
cd ensembl-server

# 安装依赖
npm install

# 构建服务器
npm run build

💻 使用示例

与Claude Desktop配合使用

设置说明

  1. 构建服务器(如果尚未完成):
    npm run build
    
  2. 添加到Claude Desktop配置
    • 打开Claude Desktop。
    • 转到设置 → MCP服务器。
    • 添加一个新服务器,设置如下:
      • 名称ensembl
      • 命令node
      • 参数/path/to/ensembl-server/build/index.js
  3. 重启Claude Desktop 以加载服务器。

可用工具(共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 Desktop中的使用示例

连接成功后,您可以使用自然语言访问基因组数据:

  • "查找BRCA2基因并获取其序列"
  • "查找TP53在小鼠中的直系同源基因"
  • "获取chr17:43044295 - 43125364区域内的变异"
  • "搜索与胰岛素相关的基因"
  • "获取人类基因组的组装信息"
  • "将此DNA序列翻译成蛋白质:ATGAAACGC..."

📚 详细文档

支持的物种

本服务器支持Ensembl中所有可用的物种,包括:

  • 脊椎动物:人类、小鼠、大鼠、斑马鱼等。
  • 植物:拟南芥、水稻、小麦等。
  • 真菌:酵母等。
  • 原生生物:各种原生生物物种。
  • 后生动物:果蝇、秀丽隐杆线虫等。 若未指定,默认物种为 homo_sapiens

输入格式

基因组区域

  • chr1:1000000 - 2000000 - 标准格式
  • 1:1000000 - 2000000 - 无 'chr' 前缀
  • ENSG00000139618 - 特征ID

基因/转录本ID

  • Ensembl ID:ENSG00000139618ENST00000380152
  • 基因符号:BRCA2TP53
  • RefSeq ID:NM_000059

输出格式

主要格式

  • JSON:结构化数据(大多数工具的默认格式)
  • FASTA:序列数据
  • GFF:基因组特征格式
  • VCF:变异调用格式

树格式

  • JSON:结构化树数据
  • Newick:标准系统发育格式
  • PhyloXML:丰富的系统发育格式

错误处理

本服务器提供全面的错误处理:

  • 无效参数:清晰的验证消息。
  • API错误:来自Ensembl的详细错误信息。
  • 网络问题:处理超时和连接错误。
  • 物种验证:自动验证物种名称。

速率限制

本服务器遵守Ensembl的速率限制指南:

  • 每秒最多15个请求。
  • 批量操作之间有适当的延迟。
  • 采用连接池以提高效率。

配置

环境变量

  • ENSEMBL_BASE_URL:覆盖默认的API基础URL。
  • REQUEST_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} - 组装信息

支持

若遇到以下相关问题:

贡献

欢迎贡献代码!请确保:

  • 符合TypeScript规范。
  • 提供全面的错误处理。
  • 更新文档。
  • 为新功能提供测试覆盖。

相关工具

本服务器可与其他生物信息学MCP服务器很好地集成:

  • UniProt服务器:蛋白质数据集成。
  • AlphaFold服务器:3D结构预测。
  • STRING服务器:蛋白质相互作用网络。
  • PDB服务器:结构生物学数据。

关于增强自然

此Ensembl MCP服务器由 增强自然 开发,该公司专注于构建用于科学研究和发现的人工智能工具。

引用

如果您在研究或出版物中使用了本项目,请按以下方式引用:

@misc{ensemblmcp2025, 
author = {Moudather Chelbi},
title = {Ensembl MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/Ensembl-MCP-Server},
note = {Accessed: 2025-06-29}
}

替代品

K
Klavis
Klavis AI是一个开源项目,提供在Slack、Discord和Web平台上简单易用的MCP(模型上下文协议)服务,包括报告生成、YouTube工具、文档转换等多种功能,支持非技术用户和开发者使用AI工作流。
TypeScript
9.2K
5分
M
MCP
微软官方MCP服务器,为AI助手提供最新微软技术文档的搜索和获取功能
10.0K
5分
A
Aderyn
Aderyn是一个开源的Solidity智能合约静态分析工具,由Rust编写,帮助开发者和安全研究人员发现Solidity代码中的漏洞。它支持Foundry和Hardhat项目,可生成多种格式报告,并提供VSCode扩展。
Rust
4.9K
5分
D
Devtools Debugger MCP
Node.js调试器MCP服务器,提供基于Chrome DevTools协议的完整调试功能,包括断点设置、单步执行、变量检查和表达式评估等
TypeScript
6.4K
4分
S
Scrapling
Scrapling是一个自适应网页抓取库,能自动学习网站变化并重新定位元素,支持多种抓取方式和AI集成,提供高性能解析和开发者友好体验。
Python
8.9K
5分
M
Mcpjungle
MCPJungle是一个自托管的MCP网关,用于集中管理和代理多个MCP服务器,为AI代理提供统一的工具访问接口。
Go
0
4.5分
C
Cipher
Cipher是一个专为编程AI代理设计的开源记忆层框架,通过MCP协议与各种IDE和AI编码助手集成,提供自动记忆生成、团队记忆共享和双系统记忆管理等核心功能。
TypeScript
0
5分
N
Nexus
Nexus是一个AI工具聚合网关,支持连接多个MCP服务器和LLM提供商,通过统一端点提供工具搜索、执行和模型路由功能,支持安全认证和速率限制。
Rust
0
4分
F
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
56.9K
4.5分
F
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
97.5K
5分
D
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
57.3K
4.3分
E
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
40.2K
5分
M
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
46.6K
4.8分
B
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
39.0K
4.5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
24.6K
4.8分
C
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
73.0K
4.7分
AIBase
智启未来,您的人工智能解决方案智库