关于 tooluniverse-acmg-variant-classification
这是一个使用 ACMG/AMP 标准进行遗传变异分类的 ToolUniverse 技能,指导证据收集与保守、基因相关的解读,并要求为启用的每项标准注明来源。
主要功能
- 01组合评估 ACMG/AMP 证据
- 02变异验证与标准化
- 03人群频率评估
- 04计算与临床证据审查
- 05注明来源的标准推理
适用场景
- 01评估变异致病性
- 02审查 VUS 证据
- 03准备可审计的分类结果
MCP 相关
该技能介绍了用于查询变异、人群、临床、蛋白质和文献数据的 ToolUniverse 工具。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mims-harvard/ tooluniverse --skill tooluniverse-acmg-variant-classification安装后在 Claude Code 中输入/tooluniverse-acmg-variant-classification确认已加载。
详细介绍
ACMG/AMP 变异分类
ACMG 推理
每项标准(致病性标准 PS、PM、PP;良性标准 BS、BP)都会提供一份有权重的证据,用于支持或反对致病性。分类取决于所有已触发标准的组合,而非任何单项标准。不要过度看重单一发现。
标准层级为:PVS1(极强)> PS(强)> PM(中等)> PP(支持)。良性标准方面:BA1(独立)> BS(强)> BP(支持)。在对功能缺失不耐受的基因中,移码变异(PVS1)加上 ClinVar 专家小组判定为致病的记录(PS1),可归类为致病。单独一项 PP 标准则不够。关键在于组合规则。
需要避免两个常见错误:(1)看到 ClinVar 中的“Pathogenic”条目就停止分析——如果未经专家小组审核,这属于 PP5(支持),并非自动确认;(2)因为某个预测工具判定“tolerated”就排除某个变异——预测结果不一致意味着 PP3 和 BP4 均不适用,这是中性证据,而非良性证据。
始终保守地应用标准。证据存在歧义时,不要认定该标准满足。每项已启用标准都要注明来源,以便临床医生审核推理过程。
关键原则:
- 以标准为依据——注明启用了哪些标准及原因
- 保持保守——证据有歧义时,不要提高标准等级
- 考虑基因特性——根据基因机制(功能缺失或功能获得)调整阈值
- 按人群校准——使用 gnomAD 中特定祖源的频率,而不只是全局 AF
- 保持透明——展示每项标准对应的证据
- 注明来源——启用每项标准时,都必须注明数据库或工具来源
- 优先使用英语查询——在工具调用中始终使用英语术语;使用用户的语言作答
查询,不要猜测
对任何科学事实存在疑问时,应先查询数据库(PubMed、UniProt、ChEMBL、ClinVar 等),而不是依赖记忆进行推理。经数据库核实的答案始终比猜测更可靠。
适用场景
- “使用 ACMG 标准对 BRCA2 c.5946delT 进行分类”
- “这个 VUS 是否致病?NM_000059.4:c.7397T>C”
- “对 rs28897743 应用 ACMG 指南”
- “CFTR p.Arg117His 的致病性如何?”
- “TP53 R248W 的 ACMG 分类”
工具参数参考
| 工具 | 关键参数 | 备注 |
|---|---|---|
VariantValidator_validate_variant | variant_description、genome_build、select_transcripts | genome_build="GRCh38" |
VariantValidator_gene2transcripts | gene_symbol | 返回 MANE Select 转录本 |
Tark_get_mane_transcripts | gene(或 ensembl_id/refseq_id) | Ensembl Tark MANE Select/Plus Clinical,包含 ENST↔RefSeq 配对;用于轻量级核对规范转录本命名空间 |
Tark_get_transcript | stable_id(例如 "ENST00000380152") | 存档的转录本记录(组装版本、生物类型、坐标、各版本号),用于解析特定的转录本版本 |
MyVariant_query_variants | query | HGVS 或 rsID。返回 ClinVar、gnomAD、CADD、REVEL、SIFT、PolyPhen |
EnsemblVEP_annotate_hgvs | hgvs_notation | 后果、共定位变异、按祖源划分的 gnomAD 数据 |
gnomad_search_variants | query | 将 rsID 转换为 gnomAD 变异 ID |
gnomad_get_variant | variant_id | 按祖源划分的人群频率 |
gnomad_get_gene_constraints | gene_symbol | pLI、LOEUF、mis_z |
ClinVar_search_variants | query | 响应格式不固定:列表或 {status, data} |
ClinVar_get_variant_details | variant_id | ClinVar 数字 ID |
civic_get_variants_by_gene | gene_id | CIViC 数字基因 ID(不是 symbol)。已知:BRAF=5、BRCA2=19 |
UniProt_get_function_by_accession | accession | 返回字符串列表 |
InterPro_get_entries_for_protein | accession | 按 UniProt accession 查询结构域架构 |
alphafold_get_prediction | qualifier | UniProt accession;pLDDT 置信度 |
PubMed_search_articles | query、limit | 返回字典列表 |
MyGene_query_genes | query | 按 symbol 匹配进行筛选(首条结果可能不匹配) |
阶段 0:变异验证与标准化
HGVS 错误或转录本错误会导致后续所有标准的判断都出现连锁错误。先进行验证。
- 获取 MANE Select 转录本:
VariantValidator_gene2transcripts(gene_symbol="BRCA2")。使用Tark_get_mane_transcripts(gene="BRCA2")核对规范转录本(返回 ENST↔RefSeq 配对,例如 ENST00000380152.8 / NM_000059.4);需要确定特定转录本版本时,使用Tark_get_transcript(stable_id="ENST00000380152")。 - 验证变异:
VariantValidator_validate_variant(variant_description="NM_000059.4:c.5946delT", genome_build="GRCh38", select_transcripts="mane_select") - 解析基因 ID:
MyGene_query_genes(query="BRCA2")— 提取 Ensembl ID 和 UniProt accession。按symbol == 'BRCA2'筛选结果(首条结果可能不匹配)。 - 记录:HGVS 编码变异、HGVS 蛋白变异、基因组坐标、变异类型(移码/错义/无义/剪接/同义/非移码插入缺失)。
接受的输入:HGVS 编码变异(NM_000059.4:c.5946delT)、HGVS 蛋白变异(BRCA2 p.Val600Glu)、rsID(rs28897743)、基因+变异(BRCA1 c.68_69del)、基因组坐标。
阶段 1:人群频率(BA1、BS1、BS2、PM2)
人群 AF 是支持任一方向判断的最有力证据之一。任何人群中频率超过 5% 的变异几乎肯定是良性的(BA1 — 独立标准,无需进一步分析)。在 gnomAD 中未检出支持致病性(PM2;根据 ClinGen 指南,目前通常作为 PM2_Supporting 应用)。
应使用祖源特异性 AF,而不只是全局 AF。某变异在东亚人群中的频率为 8%,但在全球范围内较罕见,那么在该祖源背景下它是良性的。BS1 的阈值取决于疾病患病率和遗传方式——常见疾病的默认值为 1%,罕见疾病为 0.1%。
gnomad_search_variants(query="rs28897743") # get gnomAD variant ID
gnomad_get_variant(variant_id="...") # per-ancestry frequencies
gnomad_get_gene_constraints(gene_symbol="BRCA2") # pLI, LOEUF, mis_z
MyVariant_query_variants(query="rs28897743") # fallback: gnomad_genome.af
如果没有 gnomAD 数据,请注明这一缺口并继续——没有数据不等同于存在缺失证据。
阶段 2:计算预测(PP3、BP4)
没有任何单个预测工具能给出确定结论。判断依据是:多个独立预测工具的结果一致,可作为支持性证据。结果不一致时,PP3 和 BP4 均不适用——这属于中性,而非良性。
当多数预测工具一致认为变异有害时,或仅 REVEL >= 0.7(根据 ClinGen 指南已足够)时,适用 PP3(支持致病)。只有所有预测工具均一致认为变异良性,或 REVEL < 0.15 或 CADD < 15 时,才适用 BP4(支持良性)。这些标准仅适用于错义变异。
MyVariant_query_variants(query="...") # REVEL, CADD PHRED, AlphaMissense, SIFT, PolyPhen
EnsemblVEP_annotate_hgvs(hgvs_notation="...") # consequence, SpliceAI deltas
对于非错义变异,跳过 PP3/BP4,并在阶段 5 中重点评估 SpliceAI 分数。
VUS 解析叙述中的机制补充:PP3/BP4 是对预测分数的计票——它说明变异是否有害,而非如何有害。对于需要提供机制解释的 VUS 解析报告(临床医生问“为什么这种变异有害?”),可添加 ESM_explain_variant_mechanism(sequence=..., position=..., ref_aa=..., alt_aa=...)——它会返回 ESMC-6B SAE 特征类别的丢失/新增情况(催化 / 配体结合 / ptm / 结构稳定性 / 结构域 / 等),并附上一句摘要。这不会改变 PP3 的证据强度,但能将“符合 PP3(REVEL 0.78,AlphaMissense 0.85)”转化为“符合 PP3——且 SAE 显示位置 X 的催化特征丢失,与活性位点受损相符。”需要 ESM_API_KEY;仅适用于错义变异。
阶段 3:临床数据库证据(PS1、PM5、PP5、BP6)
ClinVar 汇总临床实验室的分类结果。判断依据是:如果相同的氨基酸改变(由不同核苷酸导致)已被确认为致病,这是强有力的证据(PS1),因为其作用机制在于氨基酸改变。如果同一残基上发生了不同的致病错义变异,则属于中等强度证据(PM5)——这说明该残基具有重要功能。
当 ClinVar 显示致病且复核等级 >= 2 星时,适用 PP5(已提供标准,且有多个提交者)。根据意见一致的提交者数量确定权重。ClinVar 解释相互冲突时,不应适用 PP5 或 BP6。ClinGen 曾建议降低 PP5/BP6 的权重——应将其视为支持性证据,而非强证据。
ClinVar_search_variants(query="BRCA2 c.5946delT")
ClinVar_get_variant_details(variant_id="...")
civic_get_variants_by_gene(gene_id=19) # BRCA2 CIViC ID is 19
阶段 4:功能结构域与蛋白质分析(PM1、PP2、BP1)
位于已明确的功能结构域、且该结构域中已知致病变异富集的变异,更可能致病。PM1(中等强度致病证据)要求变异位于良性变异较少的热点结构域——使用 InterPro 结构域架构以及 UniProt 活性位点/结合位点进行评估。
PP2 和 BP1 互斥。对于错义变异,如果所在基因的已知致病机制为错义变异,且良性错义变异率较低(mis_z > 3.09),则适用 PP2(支持致病)。如果所在基因仅由截短变异导致疾病(仅 LOF 机制),则适用 BP1(支持良性)——此类基因中的错义变异不太可能致病。
UniProt_get_function_by_accession(accession="P51587") # active sites, binding sites
InterPro_get_entries_for_protein(accession="P51587") # domain architecture
alphafold_get_prediction(qualifier="P51587") # pLDDT > 90 = structured region
gnomad_get_gene_constraints(gene_symbol="BRCA2") # mis_z for PP2/BP1
阶段 5:剪接影响评估(PVS1)
PVS1 是单项证据中最强的致病标准。在 LOF 已确认为致病机制的基因中,无功能变异(无义 / 移码 / 经典剪接位点 / 起始密码子)可触发 PVS1,但其完整证据强度取决于具体情况。
满足以下条件时,按完整强度应用 PVS1:无功能变异 + LOF 是已知机制 + 变异不在末外显子或倒数第二个外显子的最后 50bp 内 + 不存在可补偿的转录本。如果变异位于末外显子或可能逃逸 NMD,则降级为 PVS1_Moderate。如果可能存在可补偿的转录本,或 SpliceAI >= 0.5 但变异不在经典剪接位点,则降级为 PVS1_Supporting。如果 LOF 机制尚不确定,则不要应用 PVS1。
EnsemblVEP_annotate_hgvs(hgvs_notation="...") # splice_donor_variant, splice_acceptor_variant
MyVariant_query_variants(query="...") # SpliceAI deltas
gnomad_get_gene_constraints(gene_symbol="...") # pLI >= 0.9 or LOEUF < 0.35 = LOF intolerant
阶段 6:文献与功能证据(PS3、BS3、PP1、PP4)
设计完善的功能实验若显示功能缺失(LOF)(PS3)或功能正常(BS3),可显著影响分类。对于严谨性较低的实验,可降低 PS3/BS3 的等级(例如,PS3_Supporting)。并非所有功能实验都符合要求——ClinGen 的基因特异性指南会界定有效实验。
PP1(共分离)在 >= 7 次信息性减数分裂时升级为 PP1_Strong。若患者表型对该基因相关疾病具有高度特异性,则适用 PP4。
PubMed_search_articles(query="BRCA2 c.5946delT functional assay", limit=10)
PubMed_search_articles(query="BRCA2 c.5946delT segregation family", limit=5)
需要临床数据的标准(PS2、PS4、PM3、PM6、BS4、BP2、BP5)无法自动评估。除非用户提供临床背景,否则应记录为“未评估”。
PM4(非重复区域中的蛋白质长度变化)和 BP3(重复区域中的框内插入缺失)可根据变异类型进行部分评估。BP7(同义变异,且不影响剪接)可通过 SpliceAI < 0.1 进行评估。
自动交叉核验(InterVar)
阶段 0–6 的所有内容都是人工逐条标准评估,并附有引用——这是此技能的核心价值,应继续作为主要输出。InterVar_classify_variant 会在服务器端根据裸基因组坐标运行等效的 ACMG/AMP 2015 标准,并通过一次调用返回分类以及全部 28 项标准的激活状态。可将其用作快速独立交叉核验,检查你自己的人工判定,但绝不能以此取代人工评估——人工流程会为每项标准引用来源;InterVar 不会。
| 工具 | 关键参数 | 响应字段 |
|---|---|---|
InterVar_classify_variant | chrom、pos、ref、alt(默认使用 GRCh37/hg19;传入 build="hg38" 则使用 GRCh38),全部必填 | data.classification、data.active_criteria[](例如 ["PS3","PM1","PM2","PP3","PP5"])、全部 28 个代码对应的 data.criteria_detail.<CODE>.active(布尔值) |
交叉验证示例,已实时验证:TP53 chr17:7674220 C>T(GRCh38;也是 tooluniverse-variant-analysis 中用于 GeneBe/ClinGen 交叉核验的同一变异)返回 classification="Pathogenic",且 PS3+PM1+PM2+PP3+PP5 处于激活状态——与 GeneBe 对同一变异给出的独立“Pathogenic”判定一致。两个独立实现的 ACMG 分类器得出一致结果,正是报告中值得引用的佐证;如果结果不一致,应将其视为重新检查人工评估标准的理由,而不是默默优先采用其中某个工具的答案。
已知的数据质量问题,已实时验证,并非猜测:该工具自身的 JSON description 字段声称,其第一个演示示例(chrom="17", pos=41245466, ref="G", alt="A",标注为“BRCA1 c.5266dupC”)会以 PM2+PP3+PP5 分类为“Likely Pathogenic”。但实时 API 实际返回 classification="Benign",且 BA1+BP4+BP6+BP7+BS1+BS2 处于激活状态。这是预期结果,并非工具缺陷:c.5266dupC 是单碱基重复(插入),无法用 ref="G"/alt="A" 的替换表示——示例中的坐标本身并未编码其标签所声称的移码,因此“Benign”结果是 InterVar 对实际收到的 SNV 正确分类,并非错误分类了 BRCA1 c.5266dupC。切勿不经实时核验就相信工具文档中的演示示例;务必传入编码正确的变异。
分类算法
将各项标准按其应用后的强度组合(升级或降级后):
致病:(1)PVS1 + ≥1 项强证据;(2)PVS1 + ≥2 项中等证据;(3)PVS1 + 1 项中等证据 + 1 项支持证据;(4)PVS1 + ≥2 项支持证据;(5)≥2 项强证据;(6)1 项强证据 + ≥3 项中等证据;(7)1 项强证据 + 2 项中等证据 + ≥2 项支持证据;(8)1 项强证据 + 1 项中等证据 + ≥4 项支持证据
可能致病:(1)PVS1 + 1 项中等证据;(2)1 项强证据 + 1-2 项中等证据;(3)1 项强证据 + ≥2 项支持证据;(4)≥3 项中等证据;(5)2 项中等证据 + ≥2 项支持证据;(6)1 项中等证据 + ≥4 项支持证据
良性:(1)BA1 单独成立;(2)≥2 项良性强证据
可能良性:(1)1 项良性强证据 + 1 项良性支持证据;(2)≥2 项良性支持证据
意义未明变异:未达到上述任何阈值,或致病与良性证据相互冲突。
输出格式
# ACMG Variant Classification Report
## Variant: [HGVS]
- **Gene**: [symbol] | **Transcript**: [MANE Select] | **Protein**: [p.notation] | **Type**: [variant type]
## Classification: [PATHOGENIC / LIKELY PATHOGENIC / VUS / LIKELY BENIGN / BENIGN]
## Evidence Summary
### Pathogenic Criteria Met
| Criterion | Strength | Evidence | Source |
### Benign Criteria Met
| Criterion | Strength | Evidence | Source |
### Criteria Not Met (key ones with reasoning)
### Criteria Not Assessed (and why)
## Detailed Evidence
- Population: gnomAD AF, ancestry max, homozygotes, gene constraints
- Computational: predictor concordance
- Clinical: ClinVar classification + review status, CIViC entries
- Domain: InterPro domains, UniProt annotations
- Splice: SpliceAI scores, canonical site status
- Literature: key functional study findings
## Classification Logic
Applied rule: [e.g., "PVS1 + PM2_Supporting = Likely Pathogenic (LP rule 1)"]
## Limitations
- [Criteria not assessed and what data would be needed]
常见模式
模式 1:已知致病移码变异 — “对 BRCA2 c.5946delT 进行分类” 阶段 0(验证)→ 阶段 1(gnomAD 中不存在,PM2_Supporting)→ 阶段 3(ClinVar 中为 Pathogenic,PP5)→ 阶段 4(DNA 修复结构域,PM1)→ 阶段 5(移码 + LOF 基因,PVS1)→ 阶段 6(文献 PS3) 结果:致病(PVS1 + PS3 + PM1 + PM2_Supporting + PP5)
模式 2:错义意义未明变异 — “BRCA1 p.Arg1699Gln 是否致病?” 阶段 0 → 阶段 1(罕见,PM2_Supporting)→ 阶段 2(REVEL 0.82,CADD 26,PP3)→ 阶段 3(ClinVar 中为 VUS)→ 阶段 4(BRCT 结构域,PM1)→ 阶段 6(活性降低,PS3_Moderate) 结果:可能致病(PS3_Moderate + PM1 + PM2_Supporting + PP3)
模式 3:常见良性变异 — “rs1800497 的 ACMG 分类” 阶段 1(gnomAD AF=0.21,BA1)→ 提前结束。结果:良性(BA1 单独成立)
模式 4:深部内含子变异 — “对 NM_000059.4:c.7977+100A>G 进行分类” 阶段 1(检查 AF)→ 阶段 5(SpliceAI < 0.1)→ 结果:可能良性或意义未明变异,具体取决于频率