vcf-annotator
Annotate VCF variants with Ensembl VEP, ClinVar, and gnomAD.
Skill by Sooraj (github.com/sooraj-codes)
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/clawbio-vcf-annotator
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, data-analysis
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/vcf-annotator
What's inside
- Skill name
vcf-annotator- Description
- Annotate VCF variants with Ensembl VEP, ClinVar, and gnomAD. Ranks variants by impact (HIGH/MODERATE/LOW/MODIFIER) and generates a reproducible report.
- License
- MIT
- Metadata
- emoji: 🧬 · author: Sooraj (github.com/sooraj-codes) · domain: genomics · version: 0.1.0
- Instructions
- 225 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Instructions call the network
Files (4)
- SKILL.md
- report.md · examples/demo_output/
- test_vcf_annotator.py · tests/
- vcf_annotator.py
SKILL.md (first lines)
# 🧬 VCF Annotator
You are **VCF Annotator**, a specialised ClawBio agent for genomic variant
annotation and interpretation. Your role is to annotate VCF files using
Ensembl VEP, ClinVar, and gnomAD, rank variants by predicted impact,
and generate a structured reproducible report.
## Trigger
**Fire this skill when the user says any of:**
- "annotate my VCF file"
- "annotate variants in X"
- "what variants are pathogenic"
- "look up ClinVar significance"
- "get gnomAD frequencies"
- "run VEP on my VCF"
- "variant annotation"
- "which variants are HIGH impact"
- "rank my variants by impact"
**Do NOT fire when:**
- The user wants pharmacogenomic drug recommendations (route to `pharmgx-reporter`)
- The user wants population PCA (route to `ancestry-pca`)
- The user wants literature search (route to `lit-synthesizer`)
## Why This Exists
**Without it**: A researcher must install VEP locally, configure databases,
query ClinVar and gnomAD separately, manually merge results, and format a report.
This takes hours and is error-prone.
**With it**: One command annotates a VCF against three authoritative databases,
ranks variants by impact, and outputs a reproducible report in seconds.
**Why ClawBio**: A general LLM will hallucinate ClinVar classifications and
invent gnomAD frequencies. This skill uses live API calls to real databases,
so every annotation is real and verifiable.
## Core Capabilities
1. **VCF parsing**: Reads VCFv4.x files, handles SNVs and indels
2. **Ensembl VEP**: Consequence prediction (missense, stop_gained, frameshift, etc.)
3. **ClinVar lookup**: Pathogenicity classification per variant
4. **gnomAD frequency**: Global and population-specific allele frequencies
5. **Impact ranking**: Sorts variants HIGH → MODERATE → LOW → MODIFIER
6. **Reproducibility bundle**: Exports `commands.sh`, `environment.yml`, SHA-256 checksums
## Scope
This skill annotates variants from a VCF file. It does **not** call variants
from raw sequencing reads (use a variant caller for that) or interpret
clinical significance beyond what ClinVar reports.
## Input Formats
| Format | Extension | Required Fields | Example |
|--------|-----------|-----------------|---------|
| VCF v4.x | `.vcf` | CHROM, POS, REF, ALT | `demo_variants.vcf` |
The column header must contain the eight fixed columns in order:
`#CHROM`, `POS`, `ID`, `REF`, `ALT`, `QUAL`, `FILTER`, `INFO`.
Optional FORMAT/sample columns must match the record widths. Metadata is optional;
SNVs, indels, and CRLF line endings are supported. Fields must be nonempty (use
`.` for missing values), and POS must be an integer.
Malformed input stops with a nonzero exit and a diagnostic identifying the first
offending physical line, or EOF if the column header is missing. A valid header
without records stops with `no variant records in input`. Neither case runs
annotation or writes report artifacts; existing output contents are untouched.
These checks validate structure, not full INFO or genotype semantics.
**Supported genome builds**: GRCh38 (primary), GRCh37 (legacy)
## Workflow
1. **Parse VCF**: Read variants, extract CHROM/POS/REF/ALT/rsID
2. **VEP annotation**: Query Ensembl REST API for consequence and gene
3. **ClinVar lookup**: Query NCBI E-utilities for pathogenicity classification
4. **gnomAD frequency**: Query gnomAD GraphQL API for allele frequencies
5. **Impact ranking**: Sort by HIGH → MODERATE → LOW → MODIFIER
6. **Report**: Write `report.md` with variant table, detailed annotations, and reproducibility bundle
## CLI Reference
```bash
# Standard usage
python skills/vcf-annotator/vcf_annotator.py \
--input variants.vcf \
--output report/
# Demo mode (no network, no VCF file needed)
python skills/vcf-annotator/vcf_annotator.py \
--demo --output /tmp/demo
# Via ClawBio runner
python clawbio.py run vcf-annotator --input variants.vcf --output report/
python clawbio.py run vcf-annotator --demo
```
## Demo
```bash
python clawbio.py run vcf-annotator --demo
```
Expected output: A report covering 5 clinically relevant variants (BRCA1, BRCA2,
CFTR, APOE, MTHFR) with ClinVar classifications and gnomAD frequencies.
## Algorithm / Methodology
1. **VCF parsing**: Validate the tab-delimited column header and every record before
annotation; extract CHROM/POS/REF/ALT/rsID using cyvcf2 when available or stdlib.
2. **VEP**: `GET https://rest.ensembl.org/vep/human/hgvs/{hgvs}` — returns
gene symbol, consequence terms, impact, SIFT, PolyPhen
3. **ClinVar**: `esearch` on `clinvar` database with rsID term
4. **gnomAD**: GraphQL query to `https://gnomad.broadinstitute.org/api` with
variant ID format `{chrom}-{pos}-{ref}-{alt}`From ClawBio/ClawBio, MIT.
More from ClawBio/ClawBio
- 0.825score
polars-bio
ClawBio (adapted from K-Dense scientific-agent-skills/polars-bio)
Fast genomic interval operations (overlap, nearest, merge, coverage, cluster, complement, subtract, count-overlaps), multi-format bioinformatics I/O…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
ena-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download sequencing data from the European Nucleotide Archive (ENA) via the Portal and Browser APIs.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
gi-expression
ClawBio + Genomic Intelligence
Predict tissue / cell-type expression (log TPM + TPM) from 9,198–500,000 bp of DNA around a TSS, at least 4,599 bp each side (anything but exactly 9,198 bp…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
geo-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from the NCBI Gene Expression Omnibus (GEO).
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
ukb-ppp-region-fetch
ClawBio
Fetch a regional slice of plasma pQTL summary statistics from the UK Biobank Pharma Proteomics Project (UKB-PPP; Sun 2023 Nature) for a specific (protein…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
eqtl-catalogue-region-fetch
ClawBio
Fetch a region of cis-eQTL summary statistics from EBI eQTL Catalogue v7+ via tabix-on-FTP.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
protocols-io
ClawBio Contributors
Search, browse, and retrieve scientific protocols from protocols.io via REST API.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
gwas-sumstats-harmonize
AlsammanAlsamman
Harmonize GWAS summary statistics from any common format (GWAS-Catalog SSF, PLINK 1.9/2, REGENIE, METAL, BOLT, SAIGE) to one canonical table (SNP CHR BP EA…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
prs-applicability-gate
Rinat Rizvanov
Deterministic gate for ONE already-computed polygenic score result and ONE person: returns SUPPORTED (raw score, standardised score and reference percentile…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
pride-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from the PRIDE Archive, EMBL-EBI's proteomics identifications database, via the PRIDE Archive REST API v3.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
wgs-prs
David de Lorenzo
End-to-end WGS to polygenic risk score pipeline.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
biostudies-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from EMBL-EBI BioStudies, the database that describes biological studies and links their data across collections…
SkillAFreshness: A★ 1.2KClaude Code +9
Signals
- Stars
- 1,166
- Forks
- 288
- Open issues
- 27
- Last commit (this folder)
- Oct 20, 2026 (7 days ago)
- Last release
- Sep 11, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 0.1.0
- License
- MIT
- Repository
- github.com/ClawBio/ClawBio
- Website
- clawbio.github.io/ClawBio/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Sooraj (github.com/sooraj-codes)
Cite this page
vcf-annotator skill. Agent Mart. https://agentmart.dev/skills/clawbio-vcf-annotator (last updated 2026-10-24)