mcpField
T
tooluniverse-variant-functional-annotation

tooluniverse-variant-functional-annotation

github.com/mims-harvard数据与数据库1.8k224 次安装3 天前更新
代码仓库

关于 tooluniverse-variant-functional-annotation

面向蛋白质变异研究的 ToolUniverse 技能,整合结构与功能背景、临床分类、群体频率和有害性预测。适合需要功能注释的研究者;不提供完整 ACMG 分类或治疗建议。

主要功能

  1. 01映射变异至蛋白结构与结构域
  2. 02查询保守性及功能影响注释
  3. 03整合 ClinVar 与 ClinGen 证据
  4. 04报告 gnomAD 群体频率
  5. 05汇总多种有害性预测分数

适用场景

  1. 01注释指定蛋白变异的功能影响
  2. 02检查变异所在结构域或活性位点
  3. 03评估变异在人群中的频率
  4. 04对照临床分类与计算预测

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mims-harvard/tooluniverse --skill tooluniverse-variant-functional-annotation

安装后在 Claude Code 中输入/tooluniverse-variant-functional-annotation确认已加载。

详细介绍

蛋白质变异功能注释

结合 ProtVar 的结构/功能背景、ClinVar 临床分类、gnomAD 人群频率、CADD 有害性评分和 ClinGen 基因-疾病关联有效性,对蛋白质变异进行全面的功能注释。

与 tooluniverse-variant-interpretation 的区别:此技能专注于蛋白质水平的功能证据——结构映射、残基背景、蛋白质结构域影响和人群等位基因频率。它不会提供完整的 ACMG 分类或治疗建议。要获取完整的 ACMG 临床分类,请使用 tooluniverse-variant-interpretation。

查询,不要猜测

对任何科学事实存疑时,应先搜索数据库(PubMed、UniProt、ChEMBL、ClinVar 等),不要依赖记忆推理。经数据库验证的答案总是比猜测更可靠。

计算,不要只描述

分析需要计算(统计、数据处理、评分、富集分析)时,应通过 Bash 编写并运行 Python 代码。不要只描述打算怎么做——实际执行并报告结果。使用 ToolUniverse 工具检索数据,再用 Python(pandas、scipy、statsmodels、matplotlib)进行分析。

何时使用此技能

触发条件:

  • “注释变异 [GENE]:[protein_change]”(例如:“TP53:p.R175H”)
  • “[variant] 的功能影响是什么?”
  • “[HGVS 或 rsID] 的 ProtVar 注释”
  • “[variant] 的人群频率”
  • “[variant] 是否位于保守结构域中?”
  • “[amino acid change] 的结构背景”

致病性推理框架

评估变异的致病性,需要从四个相互独立的证据维度构建相互印证的证据链。没有任何单一指标足以作出判断——各维度相互吻合,才能确立置信度。

1. 保守性:该位点在进化上是否受到约束? 如果该残基在脊椎动物或所有真核生物中都得以保留,那么突变很可能会破坏其功能。ProtVar 的保守性评分以及 OpenCRAVAT 中的 GERP/PhastCons 可对此进行量化。位点高度保守会提高其致病性的先验概率,尤其是对于错义变异。保守性较低则表明该位点可以容忍变异。

2. 位置:变异是否位于功能关键区域? 无论变异频率如何,位于已注释活性位点或结合位点的变异在机制上都可能产生显著影响。结构域归属也很重要:转录因子 DNA 结合结构域中的变异,比无序连接区中的变异更值得关注。ProtVar 提供的二级结构背景(螺旋、折叠、环)可进一步细化判断——环区残基通常受到的约束较少。翻译后修饰位点(磷酸化、泛素化)也是关键位置。

3. 群体频率:变异是否足够罕见,可能具有致病性? 对于罕见疾病,高外显率的致病变异几乎总是不存在于群体数据库中,或频率极低(gnomAD AF < 0.001)。在 1% 人群中出现的变异,不太可能导致严重的早发孟德尔疾病。请注意群体 AF 最大值(哪个祖源中的频率最高)以及纯合子数量——gnomAD 中存在纯合子,表明该变异不太可能对隐性疾病具有完全外显率。

4. 计算预测:各算法的判断是否一致? CADD PHRED ≥ 30 表示该变异属于预测有害程度最高的前 0.1% 变异。REVEL ≥ 0.75 和 AlphaMissense ≥ 0.564 表示预测结果倾向于致病。多个工具判断一致时,对计算预测信号的信心会提高;判断不一致时,应更重视实验性证据。CADD ≥ 20 支持 ACMG 的 PP3 标准;CADD < 10 支持 BP4。

综合四个维度:在查看 ClinVar 之前,如果一个变异所在位置高度保守、位于活性位点、不见于 gnomAD,且 CADD 和 REVEL 均预测其有害,那么它就是致病性的有力信号。相反,如果一个变异位于非保守位点的无序区域,在 0.1% 的人群中出现,且预测为良性,那么它不太可能具有致病性,即使 ClinVar 的某位提交者曾将其归类为意义未明变异(VUS)。ClinVar 分类(尤其是专家组提交的多星级条目)优先于计算预测;ClinGen 的基因-疾病有效性可为解读该基因中的任何变异提供背景。


关键原则

  1. 优先使用 ProtVar — ProtVar 提供最丰富的蛋白质层面背景;始终从这里开始
  2. 灵活处理变异命名 — 接受 HGVS(c./p.)、基因组坐标(chr:pos:ref:alt)、rsID 或基因+氨基酸变化
  3. 必须提供群体频率 — 始终报告 gnomAD AF,并注明祖源特异性数值
  4. 错义变异必须提供结构背景 — 结构域、活性位点、保守性
  5. 优先生成报告 — 首先创建报告文件,并逐步更新
  6. 必须对证据分级 — 为所有论断评定 T1-T4 级别

证据分级

  • T1:ClinVar 致病性分类,提交者 ≥3 个;ClinGen 基因-疾病关系为确定级
  • T2:ClinVar 致病性分类,提交者 1-2 个;CADD PHRED >25;引用了功能研究
  • T3:计算预测(CADD 15-25、AlphaMissense、SIFT/PolyPhen);ProtVar 结构标记
  • T4:仅有群体频率注释;结构域归属注释

工作流概述

Variant Input (HGVS / genomic / rsID / gene+protein_change)
|
+-- PHASE 0: Variant Notation Normalization
|   Resolve to canonical HGVS and UniProt position; confirm gene/transcript
|
+-- PHASE 1: ProtVar Protein-Level Annotation
|   map_variant -> structural coordinates, residue info, domain, active site
|   get_function -> conservation, functional impact prediction
|   get_population -> minor allele frequencies per ancestry
|
+-- PHASE 2: Population Frequency (gnomAD)
|   gnomad_get_variant -> AF global + ancestry-specific; homozygote count
|
+-- PHASE 3: Deleteriousness Scores (CADD)
|   CADD_get_variant_score -> PHRED score; raw C-score
|
+-- PHASE 3b: Multi-Source Annotation (OpenCRAVAT)
|   OpenCRAVAT_annotate_variant -> 182+ annotators in one call
|   (ClinVar, gnomAD, SIFT, PolyPhen-2, REVEL, AlphaMissense, SpliceAI, etc.)
|
+-- PHASE 4: Clinical Classification (ClinVar)
|   ClinVar_search_variants -> pathogenicity, review status, submitter count
|   ClinVar_get_variant_details -> full submission breakdown
|
+-- PHASE 5: Gene-Disease Validity (ClinGen)
|   ClinGen_search_gene_validity -> evidence classification for gene-disease pair
|
+-- SYNTHESIS: Integrated Annotation Report
    Structural context + population + deleteriousness + clinical + gene-disease

阶段 0:变异表示法规范化

接受的输入形式:HGVS 编码序列(NM_000546.6:c.524G>A)、HGVS 蛋白质(NP_000537.3:p.Arg175His)、基因 + 蛋白质变化(TP53 R175H)、基因组坐标(chr17:7674220:G:A hg38)或 rsID。将简写扩展为 ProtVar 所需的完整三字母表示法(例如,“TP53 R175H” → “TP53 Arg175His”)。


阶段 1a:单次调用进行全面注释(优先使用 FAVOR)

当变异以 GRCh38 基因组坐标表示时,FAVOR_annotate_variant(variant="chr-pos-ref-alt", e.g. "19-44908822-C-T") 可通过一次调用返回频率(BRAVO/TOPMed、按祖源划分的 gnomAD、1000G)、有害性(CADD、SIFT、PolyPhen、AlphaMissense)、保守性、ClinVar 和调控注释。先用它快速完成大部分报告字段的初步填充,然后再查询 ProtVar/gnomAD/CADD,以获取残基级信息或补充细节。需要使用 GRCh38 基因组表示法(不支持仅提供蛋白质或 rsID 的输入)。


阶段 1:ProtVar 蛋白质级注释

ProtVar_map_variant 接受 hgvs、genomic(chr:pos:ref:alt)或 protein_variant(GENE pAA#AA)——至少需要提供其中一项。从结果中提取 accession(UniProt ID)和 position。

ProtVar_get_function(accession, position) 返回保守性评分、结构域归属、PTM 位点和功能影响注释。

ProtVar_get_population(accession, position) 返回 colocated_variants:每个已知氨基酸变化在该位置对应一行,包含后果、clinical_significance、群体 frequencies(gnomAD / ClinVar MAF)、SIFT/PolyPhen predictions 和相关 diseases(例如,P04637 175 会列出 R175H、R175C、R175G……均为 Pathogenic)。

需要分析的关键字段:active_site / binding_site 标记是高优先级信号;conservation_score 用于量化该位置的进化约束;domain 归属可提供变异的生物学背景;secondary_structure(环区变异通常比螺旋/折叠片层变异受到的约束更弱)。


阶段 2:群体频率(gnomAD)

gnomad_get_variant 接受格式为 chrom-pos-ref-alt(hg38,不带“chr”前缀)的 variant_id。始终报告全球 AF、群体特异性 AF 的最大值以及纯合子数量。如果不知道确切的变异 ID,则使用 gnomad_search_variants 作为备用方法。

变异未出现在 gnomAD 中值得注意,但不能据此单独判定其致病性。


阶段 3:有害性评分(CADD)

CADD_get_variant_score 接受 chrom(不带“chr”前缀)、pos、ref、alt 和 genome(默认值为“GRCh38”)。CADD PHRED ≥ 30 表示最具潜在有害性的前 0.1%;≥ 20 表示前 1-10%。如果无法使用 CADD,可用 annotators="cadd_exome" 调用 OpenCRAVAT_annotate_variant 作为备用方法。


阶段 3b:多来源注释(OpenCRAVAT)

OpenCRAVAT_annotate_variant 接受 chrom、pos(1-based GRCh38)、ref_base、alt_base 以及可选的逗号分隔 annotators 字符串。如果 chrom 参数缺少“chr”前缀,系统会自动添加。

对于错义变异,使用注释器 "clinvar,gnomad3,sift,polyphen2,revel,alphamissense,cadd_exome"。对于剪接区变异,添加 "spliceai,dbscsnv"。对于非编码变异,添加 "gerp,phastcons,dann"。

评分不一致时:如果 REVEL 判定为良性,而 CADD 判定为有害,对于错义变异应更重视 REVEL(它专门针对错义变异进行训练)。如果多个工具的结果一致,则信号更可靠。在报告中记录各工具结果的一致性模式。


第 4 阶段:临床分类(ClinVar)

ClinVar_search_variants(query="GENE protein_change") 返回致病性分类和评审状态。ClinVar_get_variant_details(variant_id) 提供完整的提交记录明细。

ClinVar 评审状态(星级):4 星 = 实践指南(最高置信度);3 星 = 专家组评审;2 星 = 多个提交者且结论一致;1 星 = 单个提交者;0 星 = 结论冲突或未经评审。单个提交者给出的 VUS 分类权重有限;专家组分类优先于计算预测结果。

如果 ClinVar 不可用,可使用 OpenCRAVAT_annotate_variant,并设置 annotators="clinvar" 作为备用方案。


第 5 阶段:基因-疾病有效性(ClinGen)

ClinGen_search_gene_validity(gene_symbol, disease_label) 返回经过整理的基因-疾病证据分类。ClinGen 分类从强到弱依次为:确定 → 强 → 中等 → 有限 → 存疑 → 已否定。

关键推理步骤:如果基因-疾病关联为存疑或已否定,则必须极其谨慎地解读该基因中的任何 ClinVar 致病变异——无论变异层面的证据如何,其临床相关性都不确定。解读变异致病性前,务必先报告 ClinGen 分类。


综合分析:整合注释报告

# Variant Functional Annotation: [GENE] [VARIANT]
**Generated**: YYYY-MM-DD
**Input**: [original user input]
**Canonical notation**: [HGVS c. and p.]

## Executive Summary
(2-3 sentences: structural context, population frequency, pathogenicity signal)

## 1. Variant Identity
(Canonical HGVS, gene, transcript, consequence type, amino acid change)

## 2. Protein Structural Context [T3-T4]
(From ProtVar: domain, secondary structure, active/binding site, 3D coordinates)

## 3. Functional Annotations [T3]
(Conservation, predicted impact, PTM proximity, domain function)

## 4. Population Frequency [T4]
(gnomAD global AF, max population AF, homozygote count)

## 5. Deleteriousness Score [T3]
(CADD PHRED, REVEL, AlphaMissense — note concordance or discordance)

## 6. Clinical Classification [T1-T2]
(ClinVar significance, review stars, submitter count)

## 7. Gene-Disease Validity [T1]
(ClinGen classification for relevant disease)

## 8. Integrated Assessment
(Reasoning across all four dimensions: conservation, location, frequency, prediction)

## Data Gaps
(Any phase with no data; confidence caveats)

备用方案链

  • ProtVar_map_variant 失败 → 尝试使用基因组表示法或 protein_variant 格式
  • gnomad_get_variant 失败 → 按基因使用 gnomad_search_variants,或使用 OpenCRAVAT gnomad3 注释器
  • CADD_get_variant_score 不可用 → 使用 OpenCRAVAT cadd_exome 注释器
  • ClinVar_search_variants 返回空结果 → 使用 OpenCRAVAT clinvar 注释器
  • ClinGen_search_gene_validity 无数据 → 注明 ClinGen 尚未整理该基因-疾病关联
  • 单个注释工具超时,或你有 GRCh38 坐标 → FAVOR_annotate_variant 一次调用即可返回频率 + CADD/SIFT/PolyPhen/AlphaMissense + 保守性 + ClinVar + 调控信息

局限性

  • ProtVar:仅涵盖 UniProt 规范亚型;无法映射替代亚型
  • gnomAD:基于 gnomAD v4(外显子组 + 全基因组);线粒体变异有单独的 AF
  • CADD:仅提供计算预测 [T3];不能替代实验依据
  • ClinVar:反映提交者的解读;星级反映一致性,而非准确性
  • ProtVar 结构坐标:无实验结构时,坐标来自 AlphaFold2

评论

支持 Markdown