1. What is in the knowledge base
| Record | Count | What it holds |
|---|---|---|
| Genes | 16 | CYP2C19, CYP2C9, CYP2D6, CYP3A5, SLCO1B1, VKORC1, UGT1A1, DPYD, TPMT, NUDT15, G6PD, MTHFR, COMT, HFE, APOE, BRCA1: function, key variants, the phenotype groups used in guidelines, drug interactions, what a consumer genotyping array cannot resolve, and sources. |
| Variants | 39 | By dbSNP rsID: gene, star-allele or common name, alleles, effect, a frequency note, sources, and in the REST API a reading block (section 4). |
| Drug–gene pairs | 83 | For a gene and a drug: the guideline, a summary, the phenotype groups the guideline distinguishes, and sources. 72 rest on a CPIC or DPWG guideline. 7 rest on an FDA drug label (siponimod with CYP2C9, the four PARP inhibitors with BRCA1, lecanemab and donanemab with APOE). 4 rest on the primary literature: COMT with entacapone, tolcapone and morphine, and MTHFR with methotrexate, for which a DPWG guideline found insufficient evidence of a gene–drug interaction. |
It is deliberately small. It is not a mirror of PharmGKB/ClinPGx or ClinVar, and a gene or drug that is not covered is reported as not covered. That does not mean it has no pharmacogenomic interaction.
2. Where a record comes from
Records are written from primary sources, in this order of weight:
- Clinical guidelines: CPIC (Clinical Pharmacogenetics Implementation Consortium) and DPWG (Dutch Pharmacogenetics Working Group). When a guideline exists, the summary follows it.
- Drug labels: FDA prescribing information (DailyMed), including boxed warnings.
- Nomenclature and variant references: PharmVar for star alleles, dbSNP for rsIDs, Ensembl GRCh37 for positions, ClinVar for clinical significance, OMIM for gene–disease relationships, PharmGKB/ClinPGx for annotations.
- Primary literature: peer-reviewed studies, cited by PubMed ID, when no guideline covers the question.
If a claim has no source, it is not in the knowledge base.
3. How a record is written and checked
- Drafted from the sources, with AI assistance, and checked against them: each citation is looked up on PubMed or the source page, and each number is compared with the paper or guideline it comes from.
- Reviewed before publishing. Every change passes an automated review by a panel of AI reviewers covering science, legal, privacy, clarity and how the product is described. A change that a reviewer rejects is corrected and reviewed again.
- Positions verified. The position and alleles of every variant are checked against dbSNP and Ensembl (GRCh37).
- Published from a versioned database. Every version of every record is kept, with the date and the reason for each change. A request reads the current version and never calls a third-party database, so the same question gets the same answer until a record is revised. Each API and MCP response carries
data_as_of.
Every day an automated watcher checks CPIC (its change log and gene–drug levels), ClinVar (the classifications linked to each curated variant), FDA drug labels, the FDA Table of Pharmacogenomic Biomarkers, AlphaMissense releases and new papers in Europe PMC. It only proposes changes. New papers are screened by an AI model, which sets aside those that do not bear on a record; a person reviews every change to a record before it is published. DPWG guidelines are not checked automatically yet. Every published change, and when each source was last checked, is listed in the changelog. Each record shows the sources it was written from.
4. What the fields mean
guideline: CPIC, DPWG or “drug label” when the record follows one of these, or null when the record rests on the primary literature because no guideline or drug label gives a genotype-based recommendation for the pair (the 4 literature-based pairs; for MTHFR with methotrexate and COMT with morphine, a DPWG or CPIC review found the evidence insufficient).basis(in the MCP toolcheck_medications): whether the record rests on a CPIC or DPWG guideline or a drug label, or says that it rests on the primary literature because no guideline recommendation or drug label applies.level: CPIC’s level for the gene–drug pair, copied from the CPIC database. On CPIC’s A–D scale, which combines the strength of the evidence with how actionable the pair is,CPIC Ameans genetic information should be used to change prescribing,CPIC Bthat it could be, andCPIC CorCPIC Dthat CPIC recommends no prescribing action. Combined levels such asCPIC B/Care copied as CPIC publishes them. “(provisional)” marks a pair CPIC has not yet covered in a guideline; the record’sguidelinefield says what it actually rests on. A record for a drug class carries the level CPIC gives each of its members when they share one (G6PD and sulfonamides:CPIC C). It is null when CPIC has not rated the pair. It is not the strength of any one recommendation, it describes CPIC’s rating rather than advice for any person, and DeepDNA assigns no levels of its own.phenotypes: the groups a guideline distinguishes (for example poor, intermediate, normal, rapid and ultrarapid metabolizers) or, where no guideline gives a genotype-based recommendation, the genotype groups described in the cited studies. They describe the evidence, not the user. DeepDNA never places anyone in one of these groups.allelesand the RESTreadingblock: positions on GRCh37, with the reference and variant allele on the plus strand, as 23andMe reports them; the gene's own strand; whether the position can be read on its own (countable, true for 31 of the 39 variants); and whether the two letters look the same on either strand (strand_ambiguous).alphamissense: for a missense variant, the AlphaMissense prediction for the protein change, taken from the published dataset (Cheng et al., Science 2023, Zenodo record 10813168, CC BY 4.0; the header inside the data file still says CC BY-NC-SA 4.0, and DeepDNA relies on the record’s CC BY 4.0 licence, with attribution) by exact GRCh37 position and alleles, with the score rounded to 3 decimals, and checked against the record’s protein change.am_classuses AlphaMissense’s own bins (likely_benignbelow 0.34,ambiguous,likely_pathogenicabove 0.564) andis_clinical_classificationis always false. It predicts how the change affects the protein; it is not an ACMG/ClinVar classification, not a measure of disease risk and not evidence about drug response. Established alleles can score in either direction (APOE ε4 scoreslikely_benign; MTHFR C677T scoreslikely_pathogenic), which is why each record’snotecomes first and theeffectfield says what is established. Google DeepMind states that AlphaMissense is not validated or approved for clinical use. Null for variants that are not a single-letter missense change.disclaimer: present in every response. The information is educational, not medical advice or a diagnosis.
5. What it does not do
- No genotype in, no phenotype out. The tools take gene symbols, rsIDs and drug names. They have no field for a genotype, and an argument they do not declare is refused.
- No star-allele calling, diplotype or metabolizer status. Turning a genotype into a metabolizer status needs phasing and the other variants in the gene; a single lookup or a chip file does not provide them. Tools such as PharmCAT do that from a VCF.
- No dose or drug choice for anyone, and no diet or supplement advice. Where a guideline gives dosing advice for a phenotype group, the record quotes it with its source. Decisions about a medication stay with the prescriber, with a validated clinical test.
- No polygenic risk scores, ancestry estimates or predictions for variants of uncertain significance.
6. The local package for raw DNA files
The open-source package deepdna-mcp runs on the user's computer and reads a 23andMe, AncestryDNA or MyHeritage/FamilyTreeDNA export at the positions the knowledge base curates. Nothing from the file is sent to DeepDNA; what it reports becomes part of the user's conversation with the AI model. Its rules:
- Each position is
read,no_call,not_in_fileorunexpected_letters. A missing or unreadable position is unknown, never normal. - The file's strand is checked first: at least three positions that are not A/T or C/G must agree on one strand (plus or minus), and none may disagree. Strand-ambiguous positions are counted only on a confirmed strand.
- It counts copies of the variant allele only at
countablepositions. A count at one position is not a metabolizer status, a diplotype, a diagnosis or a dose. - APOE, BRCA1 and HFE are disease-risk genes: they are read only when the user names them.
- VCF files are not supported.
7. Limits of consumer genotyping arrays
- Arrays are reliable for common variants and much less so for rare ones. A rare result needs confirmation with a validated clinical test.
- They cannot see copy-number changes such as CYP2D6 deletions and duplications, or tell which copy of a gene each variant sits on.
- Most pharmacogenomic and genome-wide association research has been done in people of European ancestry, so frequencies and effects can differ in other populations.
8. No files on DeepDNA’s servers
DeepDNA does not parse DNA files or lab reports on its servers. The API and the MCP server take gene symbols, rsIDs and drug names, never a file or a genotype. A raw DNA file is read only by the local package described in section 6, on the user’s own computer.
9. References
- CPIC guidelines and DPWG (KNMP) guidelines.
- PharmVar — star-allele nomenclature.
- Whirl-Carrillo M et al. "An evidence-based framework for evaluating pharmacogenomics knowledge for personalized medicine." Clinical Pharmacology & Therapeutics, 2021. doi:10.1002/cpt.2350
- Landrum MJ et al. "ClinVar: improvements to accessing data." Nucleic Acids Research, 2020. doi:10.1093/nar/gkz972
- Swen JJ et al. "A 12-gene pharmacogenetic panel to prevent adverse drug reactions." The Lancet, 2023. doi:10.1016/S0140-6736(22)01841-4 (PREPARE trial)
10. Corrections and contact
If a record is wrong or out of date, write to science@deepdna.ai with the record and the source, or open an issue in the deepdna-mcp repository on GitHub (please don't post a DNA file, genotypes or medications there). General questions: hello@deepdna.ai. See also the API docs, how to connect the MCP server and the privacy policy.