variant-cross-database-ids
Query ClinGen Allele Registry to map variant rsID to identifiers in other databases (ClinVar, gnomAD, COSMIC, UniProtKB, OMIM, etc.).
Best use case
variant-cross-database-ids is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Query ClinGen Allele Registry to map variant rsID to identifiers in other databases (ClinVar, gnomAD, COSMIC, UniProtKB, OMIM, etc.).
Teams using variant-cross-database-ids should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/variant-cross-database-ids/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How variant-cross-database-ids Compares
| Feature / Agent | variant-cross-database-ids | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Query ClinGen Allele Registry to map variant rsID to identifiers in other databases (ClinVar, gnomAD, COSMIC, UniProtKB, OMIM, etc.).
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# ClinGen Allele Registry — Cross-Database ID Mapping
## Usage
### Tool Description
```tex
Query ClinGen Allele Registry by rsID to get cross-database identifiers.
Maps variant to IDs in ClinVar, gnomAD, COSMIC, UniProtKB, OMIM, etc.
API: GET https://reg.genome.network/alleles?dbSNP.rs={rs_id}
Headers: Accept: application/json
Note: May return multiple alleles (multi-allelic sites); filter out synonymous (reference) alleles.
Args:
rs_id (str): dbSNP rsID (e.g. "rs7412")
Return:
CA ID (canonical allele), and cross-references to ClinVar (alleleId, variationId, RCVs),
gnomAD, COSMIC, UniProtKB, OMIM and other databases.
Return Fields Explanation:
- CA ID: ClinGen 统一分配的等位基因标准标识符 (e.g. CA127498)
- communityStandardTitle: HGVS 标准命名 (e.g. NM_000041.2(APOE):c.526C>T (p.Arg176Cys))
- ClinVarAlleles.alleleId: ClinVar 等位基因内部编号
- ClinVarAlleles.preferredName: ClinVar 的 HGVS 标准命名(转录本:cDNA变化 + 蛋白变化)
- ClinVarVariations.variationId: ClinVar 变异条目编号 (= VCV 编号,如 17848 对应 VCV000017848)
- ClinVarVariations.RCV: 临床评估记录列表,每个 RCV 代表一个独立机构对该变异的临床解读提交
- COSMIC: COSMIC 肿瘤体细胞变异数据库 ID
- gnomAD_2/3/4: 各版本 gnomAD 中的 chr-pos-ref-alt 格式 ID
- ExAC: ExAC(旧版人群频率数据库)中的变异 ID
- MyVariantInfo_hg19/hg38: MyVariant.info API 使用的 HGVS genomic 格式
- dbSNP.rs: 对应的 dbSNP rsID 编号
```
### Query Example
```python
import requests, json
rs_id = "rs7412"
url = f"https://reg.genome.network/alleles?dbSNP.rs={rs_id}"
resp = requests.get(url, headers={"Accept": "application/json"}, timeout=30).json()
if not isinstance(resp, list):
resp = [resp]
print(f"[ClinGen] {rs_id} 对应 {len(resp)} 个等位基因")
for i, allele in enumerate(resp):
ca_id = allele.get("@id", "").split("/")[-1] # e.g. CA127498
titles = allele.get("communityStandardTitle", [])
# 跳过同义变异(参考等位基因,标题含 "=" 表示无变化)
if titles and any("=" in t for t in titles):
print(f"\n── [{i}] CA ID: {ca_id} (同义/参考等位基因,跳过)")
continue
print(f"\n── [{i}] CA ID: {ca_id} ──")
if titles:
print(f" 标准命名(HGVS): {titles}")
# 外部数据库交叉引用
ext = allele.get("externalRecords", {})
# ClinVar: alleleId = 等位基因编号, preferredName = HGVS命名
for cv in ext.get("ClinVarAlleles", []):
print(f" ClinVar Allele ID: {cv.get('alleleId')}, name: {cv.get('preferredName')}")
# ClinVar: variationId = VCV编号, RCV = 各机构临床评估记录列表
for cv in ext.get("ClinVarVariations", []):
print(f" ClinVar Variation ID: {cv.get('variationId')}, RCVs: {cv.get('RCV', [])}")
# COSMIC (肿瘤体细胞变异)
for c in ext.get("COSMIC", []):
print(f" COSMIC: {c.get('id', c)}")
# gnomAD (人群频率, chr-pos-ref-alt 格式)
for ver in ["gnomAD_2", "gnomAD_3", "gnomAD_4"]:
for g in ext.get(ver, []):
gid = g.get("id", g) if isinstance(g, dict) else g
print(f" {ver}: {gid}")
# dbSNP
for d in ext.get("dbSNP", []):
rs = d.get("rs", d) if isinstance(d, dict) else d
print(f" dbSNP: rs{rs}")
# MyVariantInfo (HGVS genomic 格式)
for ver in ["MyVariantInfo_hg19", "MyVariantInfo_hg38"]:
for m in ext.get(ver, []):
mid = m.get("id", m) if isinstance(m, dict) else m
print(f" {ver}: {mid}")
# ExAC (旧版人群频率)
for e in ext.get("ExAC", []):
eid = e.get("id", e) if isinstance(e, dict) else e
print(f" ExAC: {eid}")
```Related Skills
variant_pathogenicity
Variant Pathogenicity Assessment - Assess variant pathogenicity: Ensembl VEP prediction, ClinVar lookup, variation details, and gene phenotype associations. Use this skill for clinical genetics tasks involving get vep hgvs clinvar search get variation get phenotype gene. Combines 4 tools from 2 SCP server(s).
variant-population-frequency
Query gnomAD for variant allele frequency across populations. Uses FAVOR to convert rsID→variant_id first, then queries gnomAD.
variant-pharmacogenomics
Query PharmGKB (clinPGx) for pharmacogenomic clinical annotations — how a variant affects drug response, dosing, and adverse reactions.
variant-gwas-associations
Query EBI GWAS Catalog for GWAS statistical associations (p-value, effect size, risk allele) between a variant and traits/diseases.
variant-genomic-location
Query dbSNP + NCBI Gene to get variant genomic position (chromosome, coordinates, ref/alt alleles, mutation type) and associated gene coordinates.
variant-functional-prediction
Query FAVOR API for variant functional prediction scores (CADD, SIFT, PolyPhen, REVEL, etc.) and gene annotation.
variant-clinical-significance
Query NCBI ClinVar for variant clinical pathogenicity classification (Pathogenic/Benign/VUS), review status and associated diseases.
protein_database_crossref
Protein Cross-Database Reference - Cross-reference protein: UniProt entry, NCBI gene, Ensembl xrefs, and PDB structure search. Use this skill for proteomics tasks involving get uniprotkb entry by accession get gene metadata by gene name get xrefs symbol retrieve protein data by pdbcode. Combines 4 tools from 4 SCP server(s).
gene_variant_drug_nexus
Gene-Variant-Drug Nexus - Connect gene variants to drugs: variant effect, gene-disease link, drug associations, and clinical evidence. Use this skill for translational genomics tasks involving get vep hgvs get associated targets by disease efoId get associated drugs by target name clinvar search. Combines 4 tools from 3 SCP server(s).
cross_species_genomics
Cross-Species Comparative Genomics - Compare genomes across species: Ensembl compara, alignment, gene trees, and NCBI taxonomy. Use this skill for comparative genomics tasks involving get info compara species sets get alignment region get genetree member symbol get taxonomy. Combines 4 tools from 2 SCP server(s).
comprehensive-variant-annotation
Given an rsID, query multiple databases (dbSNP, FAVOR, GWAS Catalog, ClinVar, gnomAD, PharmGKB, ClinGen) for comprehensive annotation. Use when user asks a general question about a variant without specifying which aspect.
compound_database_crossref
Cross-Database Compound Lookup - Cross-reference compound across databases: PubChem, ChEMBL, KEGG, and CAS number lookup. Use this skill for chemical information tasks involving get compound by name get molecule by name kegg find CASToPrice. Combines 4 tools from 4 SCP server(s).