mcpField
G
gnomAD MCP Server

gnomAD MCP Server

本地服务
github.com/koido科研与教育740 周前更新

关于 gnomAD MCP Server

gnomAD MCP Server 为生物信息学用户和下游工具提供统一的 gnomAD API 程序化接口,支持三个 API 版本并处理字段与架构差异。

主要功能

  1. 01支持 gnomAD v2.1.1、v3.1.2 和 v4.1.0
  2. 02搜索基因和变异
  3. 03检索变异及人群频率数据
  4. 04提供 ClinVar 和结构变异查询
  5. 05呈现各版本的查询支持情况

适用场景

  1. 01跨 gnomAD 版本查询变异详情
  2. 02按 ID、基因或区域搜索基因或变异
  3. 03检索 ClinVar 临床意义和频率数据

MCP 相关

将 gnomAD 查询作为 MCP 工具提供给客户端,并按版本支持相应的 API 操作。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

gnomAD MCP 服务

概述

此 MCP 服务提供了 Genome Aggregation Database(gnomAD)API 的编程接口,支持多个 API 版本(v2.1.1、v3.1.2、v4.1.0)。
它抽象了各版本间的字段和架构差异,为下游工具和用户提供统一的 API。

状态

🚧 正在积极开发中 🚧

此项目正在积极开发中。API 和功能可能会随时更改,恕不另行通知。

支持的 gnomAD API 版本

  • v4.1.0(gnomad_r4)
  • v3.1.2(gnomad_r3)
  • v2.1.1(gnomad_r2_1)

各版本支持的查询

下表总结了各 gnomAD API 版本支持的查询:

查询类型描述v2v3v4
get_gene_info获取基因元数据和约束指标(通过 gene_id/gene_symbol 直接查询)❌❌✅
get_region_info获取基因组区域的变异和汇总信息❌❌✅
get_variant_info获取变异元数据和人群频率数据(通过 variantId 查询)✅✅✅
get_clinvar_variant_info获取 ClinVar 变异数据和临床意义✅✅✅
get_mitochondrial_variant_info获取线粒体变异数据和人群频率❌❌✅
get_structural_variant_info获取结构变异(SV)数据和人群频率✅❌✅
get_copy_number_variant_info获取拷贝数变异(CNV)数据和人群频率❌❌✅
search_for_genes按符号或名称搜索基因(v2/v3 不支持直接通过 gene_id 查询)✅✅✅
search_for_variants按 ID、基因或区域搜索变异✅✅✅
get_str_info获取短串联重复序列(STR)数据和人群频率❌❌✅
get_all_strs获取数据集中的所有 STR❌❌✅
get_variant_liftover获取变异在不同基因组间的 liftover 映射✅❌❌
get_metadata获取 gnomAD 浏览器元数据和 API 版本信息✅✅✅
  • ✅ = 此版本支持
  • ❌ = 此版本不支持

依赖项

  • Python >= 3.13
  • aiohttp >= 3.11.18
  • fastmcp >= 2.2.1
  • gql >= 3.5.2
  • httpx >= 0.28.1
  • mcp[cli] >= 1.6.0
  • nest-asyncio >= 1.6.0
  • pytest >= 8.3.5
  • pytest-asyncio >= 0.26.0

目录结构

.
├── gnomad/              # Main package
│   ├── __init__.py
│   ├── types.py         # Type definitions
│   ├── queries/         # GraphQL query templates
│   │   ├── v2/         # v2.1 specific queries
│   │   ├── v3/         # v3 specific queries
│   │   └── v4/         # v4 specific queries
│   └── schemas/         # Versioned schema files
├── tests/               # Test code and data
│   ├── input/          # Test input data
│   │   ├── analyzed_schemas/  # Analyzed schema data
│   │   ├── schema2query/     # Schema to query conversion
│   │   └── schemas/          # Raw schema files
│   ├── output/         # Test output data
│   │   ├── server/     # Server test outputs
│   │   ├── v2/         # v2.1 test outputs
│   │   ├── v3/         # v3 test outputs
│   │   └── v4/         # v4 test outputs
│   ├── scripts/        # Test utility scripts
│   └── tests/          # Additional test modules
├── server.py           # FastMCP server entrypoint
├── pyproject.toml      # Project metadata
├── README.md           # This file
└── README_tests.md     # Testing documentation

安装

安装依赖项
uv sync
激活虚拟环境
. .venv/bin/activate
测试服务
uv --directory ./ run mcp dev server.py
将 MCP 服务添加到 MCP 服务列表(Claude、Cursor 等)
{
    "mcpServers": {
      "gnomad": {
        "command": "uv",
        "args": ["--directory", "where you cloned the repo", "run", "server.py"],
        "env": {}
      }
    }
}
运行测试

请参阅 README_tests.md

查询与 API 设计

  • 使用 QueryTemplateEngine 模式管理特定版本的 GraphQL 查询模板。
  • 目前,查询是固定的;请参阅(./gnomad/queries)
  • MCP 工具端点均附有详细的参数和输出说明。

许可证

此 MCP 服务本身采用 Apache License 2.0 许可,详情请参阅 LICENSE 文件。

此项目使用 gnomAD API。使用此工具或其输出时,请确保引用 gnomAD。

致谢

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。