PluginBench
Skill
Pass
Audit score 90

gnomad-database

google-deepmind/science-skills

Query the Genome Aggregation Database (gnomAD) for variant frequencies, gene constraints, and structural variants.

What is gnomad-database?

Access gnomAD to determine genetic variant rarity, retrieve gene constraint metrics (pLI, LOEUF), find variants in genomic regions or genes, and query structural variants. Use this for population genetics analysis and variant interpretation; do not use for individual patient genomes, somatic cancer mutations, or raw sequencing reads.

  • Retrieve global and ancestry-specific allele frequencies for genetic variants
  • Query gene constraint metrics (pLI, LOEUF) to assess loss-of-function intolerance
  • Find all variants within a genomic region or specific gene
  • Calculate Grpmax Filtering AF (faf95/faf99) for exome, genome, and combined data
  • Search structural variants in the database
  • Support variant lookup by ID (chrom-pos-ref-alt format) or rsID

How to install gnomad-database

npx skills add https://github.com/google-deepmind/science-skills --skill gnomad-database
Prerequisites
  • uv package manager installed and on PATH
  • Review and acceptance of gnomAD terms at https://gnomad.broadinstitute.org/policies and https://gnomad.broadinstitute.org/data#api
  • License file created in workspace root (.licenses/gnomad_database_LICENSE.txt)
Claude Code
Cursor
Windsurf
Cline

How to use gnomad-database

  1. 1.Install the skill using: npx skills add https://github.com/google-deepmind/science-skills --skill gnomad-database
  2. 2.For variant frequency queries, run: uv run scripts/get_variant_frequency.py with --variant_id (format: chrom-pos-ref-alt) or --rsid, optionally specifying --dataset
  3. 3.For gene constraint metrics, run: uv run scripts/get_gene_constraint.py with --gene {gene_symbol}
  4. 4.For region/gene variant searches, run: uv run scripts/search_variants.py with either --chrom/--start/--end or --gene, optionally filtering by --consequence (pLoF|missense)
  5. 5.Specify --output to save results to a JSON file; the scripts automatically handle API rate limiting

Use cases

Good for
  • Determining if a genetic variant is rare or common in the population
  • Assessing whether a gene is intolerant to loss-of-function mutations
  • Identifying all variants in a disease-associated genomic region
  • Filtering variants by consequence type (pLoF, missense) within a gene
  • Evaluating the credible genetic ancestry-specific allele frequency for variant filtering
Who it's for
  • Genomics researchers
  • Bioinformaticians analyzing population genetics
  • Variant interpretation specialists
  • Genetic counselors evaluating variant significance
  • Clinical researchers studying gene constraint

gnomad-database FAQ

What variant ID format does gnomAD expect?

Variant IDs must be in chrom-pos-ref-alt format (e.g., 1-55516888-G-GA), or you can provide an rsID (e.g., rs1800562).

What do pLI and LOEUF scores mean?

pLI (probability of loss-of-function intolerance) and LOEUF (loss-of-function observed/expected upper bound) measure how intolerant a gene is to loss-of-function mutations; higher values indicate greater intolerance.

What is Grpmax Filtering AF (faf95/faf99)?

Grpmax Filtering AF is the maximum credible genetic ancestry group allele frequency (lower bound of the 95% or 99% confidence interval), used to filter variants across populations.

Can I use this skill to analyze individual patient genomes?

No; gnomAD is designed for population-level variant analysis. Do not use it for analyzing individual patient genomes, somatic cancer mutations (use COSMIC instead), or raw sequencing reads (use ENA).

How does the skill handle API rate limits?

The provided helper scripts automatically enforce gnomAD API rate limits gracefully, so you should always use the wrapper scripts rather than accessing the database directly.

Full instructions (SKILL.md)

Source of truth, from google-deepmind/science-skills.


name: gnomad-database description: > Query the Genome Aggregation Database (gnomAD). Use when determining the rarity or allele frequency of specific genetic variants, retrieving gene constraint metrics (pLI, LOEUF) to assess loss-of-function intolerance, finding variants in a genomic region or gene, or querying structural variants. Don't use for analyzing individual patient genomes, tracking somatic mutations in cancer (use COSMIC), or requesting raw sequencing reads (use ENA).

gnomAD Database

Prerequisites

  1. uv: Read the uv skill and follow its Setup instructions to ensure uv is installed and on PATH.
  2. User Notification: If .licenses/gnomad_database_LICENSE.txt does not already exist in the workspace root directory then (1) prominently notify the user to check the terms at https://gnomad.broadinstitute.org/policies and https://gnomad.broadinstitute.org/data#api, then (2) create the file recording the notification text and timestamp.

Core Rules

  • Use the Wrapper: ALWAYS execute the provided helper scripts to query the database rather than accessing the database directly. The scripts automatically enforce the gnomAD API rate limits gracefully.
  • Notification: If this skill is used, ensure this is mentioned in the output.

Utility Scripts

All scripts are located in the scripts/ subdirectory of this skill's installation directory. When running them, use the full absolute path to the script (e.g. /path/to/gnomad_database/scripts/get_variant_frequency.py).

1. Variant Frequency. Retrieves global and ancestry-specific allele frequencies, homozygote counts, and Grpmax Filtering AF (faf95/faf99) for exome, genome, and total (exome+genome combined) data. The filtering allele frequency (FAF) is the maximum credible genetic ancestry group AF (lower bound of the 95% or 99% CI). Variant ID format must be chrom-pos-ref-alt (e.g., 1-55516888-G-GA). Alternately, you may provide an rsID.

# By variant ID:
uv run scripts/get_variant_frequency.py --variant_id {variant_id} [--dataset {dataset}] --output variant_frequency.json

# By rsID (e.g., rs1800562):
uv run scripts/get_variant_frequency.py --rsid {rsid} [--dataset {dataset}] --output variant_frequency.json

2. Gene Constraint. Retrieves constraint metrics for a gene. The response will explicitly contain pli, and the LOEUF score is represented by oe_lof_upper.

uv run scripts/get_gene_constraint.py --gene {gene_symbol} --output {gene_symbol}_constraint.json

3. Region/Gene Variant Search. Finds all variants in a region or gene.

# By region:
uv run scripts/search_variants.py --chrom {chrom} --start {start} --end {end} --output region_variants.json
# By gene:
uv run scripts/search_variants.py --gene {gene_symbol} --consequence {pLoF|missense} --output {gene_symbol}_variants.json

References

Further documentation on the data: https://gnomad.broadinstitute.org/data#api More general database documentation: https://gnomad.broadinstitute.org/help