VariantAgent
Multi-agent ACMG variant interpretation with full provenance.
The problem
A clinical variant interpretation analyst processes 50-200 variants per week. Each one needs:
- Allele frequency lookups across population databases (gnomAD, ExAC)
- Pathogenicity evidence from ClinVar
- Functional predictions (Ensembl VEP, REVEL, CADD)
- Literature search for variant-disease links (PubMed)
- ACMG/AMP rule application across 28 evidence criteria
- A defensible written justification for the final classification
Existing automation tools cover individual steps. None of them produce a full chain-of-thought report you can defend in front of a CAP/CLIA audit.
The approach
VariantAgent is a six-agent pipeline orchestrated with LangGraph. Each agent has a narrow responsibility, deterministic tools, and a structured output contract enforced with Pydantic. The orchestrator routes dynamically — QC failures skip annotation, novel variants trigger literature search, and low-confidence classifications hit a human checkpoint.
The classification step is not an LLM call. The LLM reasons about which ACMG criteria apply; a deterministic rule engine then applies the standard combination logic. This separation is the difference between a demo and something a clinical lab can actually deploy.
The agents
| Agent | Responsibility | Tools |
|---|---|---|
| Orchestrator | Plan and route across the other five agents | LangGraph state machine |
| QC | Validate input quality (coverage, depth, alignment) | MultiQC, flagstat, coverage thresholds |
| Annotation | Query ClinVar, gnomAD, Ensembl VEP, UniProt | MCP servers (one per database) |
| Literature | RAG over PubMed + ACMG guidelines | ChromaDB + sentence-transformers |
| Classification | Apply ACMG rules deterministically | Custom rule engine |
| Reviewer | Self-evaluation, contradiction detection | LLM-as-judge |
Why this matters
Clinical variant interpretation is the kind of workflow where a pure LLM is dangerous and a pure rule engine is incomplete. VariantAgent is my attempt at the hybrid: LLMs read evidence, a deterministic ACMG rule engine classifies, and the whole pipeline is auditable end to end. The goal is a system an analyst could actually sign off on, not a demo.
Try it live
Try VariantAgent
Paste a variant and get an ACMG classification grounded in ClinVar and gnomAD. Simplified demo, not clinical.
Run it locally
Every project is open source. Clone the repo, install dependencies with
uv sync, drop your API keys into .env, and run the
CLI. The README walks you through each step.
git clone https://github.com/deepmind11/variantagent.git
cd variantagent
uv sync
cp .env.example .env # add your keys
uv run python -m variantagent --help Domain
- Clinical genomics
- Variant interpretation
- ACMG / AMP guidelines