Read any DNA file.
Any lab report.
One API.
DeepDNA is the interpretation layer for AI agents and health apps. Today: curated, cited knowledge on genes, variants and drug–gene pairs, one call away, no key. In private beta: parsing raw consumer DNA from any provider, turning lab PDFs into structured biomarkers, and crossing the two to see which predispositions show up in the bloodwork and which do not.
curl https://deepdna.ai/api/v1/pgx/CYP2C19/clopidogrel { "pair": { "gene": "CYP2C19", "drug": "clopidogrel", "guideline": "CPIC", "summary": "Prodrug activated by CYP2C19. CPIC 2022 recommends an alternative antiplatelet (prasugrel or ticagrelor) for poor and intermediate metabolizers undergoing PCI…", "phenotypes": [ …PM, IM, NM, RM, UM… ], "sources": [ …CPIC, PharmGKB, PharmVar… ] }, "meta": { "disclaimer": "Educational information only…" } }
We would rather you know exactly what answers today.
The knowledge endpoints are live, free and need no key. The parsing endpoints are in private beta: specified in the OpenAPI so you can build against the contract, not yet deployed, and opened partner by partner.
GET /genes/{symbol}Function, key variants, phenotypes, drug interactions, what a consumer array cannot resolve, sources.
LiveGET /variants/{rsid}One variant: gene, alleles, effect, sources.
LiveGET /pgx/{gene}/{drug}Drug–gene pair with the CPIC/DPWG guideline, its phenotype groups and a cited summary.
LivePOST /dna/parse23andMe, AncestryDNA or MyHeritage export → normalised variants, genome build stated, nothing stored. VCF later in the beta.
Private betaPOST /dna/annotateVariants → ClinVar, PharmGKB, gnomAD, GWAS annotations in one call.
Private betaPOST /bloodwork/parseAny lab report PDF → structured biomarkers, units normalised, the lab's own reference ranges kept.
Private betaPOST /crossoverDNA + bloodwork → which predispositions have biomarkers outside the lab's range, and which do not.
Private betaEvery agent that touches health data hits the same wall three times.
Public databases are free. The work is everything in front of them. We absorb it once so nobody has to absorb it again.
Every file is different
23andMe, AncestryDNA and MyHeritage each export a different layout, on a different genome build, with different no-call conventions. A VCF is a different animal again. Get the strand wrong and every genotype is silently inverted.
Every database is different
ClinVar, PharmGKB, gnomAD, GWAS Catalog and CPIC each have their own API, their own identifiers and their own idea of evidence. Reconciling them is a full-time job that every team repeats.
Every lab is different
A ferritin result arrives as a PDF whose layout, units and reference range depend on the laboratory. mg/dL here, µmol/L there. The number is useless without the range that came with it.
A genotype says what could happen. A biomarker says what is.
Given both, the crossover is designed to return the predispositions whose biomarkers are outside the lab's range, and, just as usefully, the ones that are not. It turns "you carry a variant" into a specific question a clinician can answer.
HFE C282Y homozygousiron overloadferritin 612 ng/mL (lab range 30–400)58 % (lab range 20–50)MTHFR C677T homozygousreduced folate metabolismhomocysteine 8.1 µmol/L (lab range 5–15)14 ng/mL (lab range 4–20)Illustrative values, not a real person. Educational information only, never a diagnosis or prognosis: the point is to give a clinician something concrete to look at.
Designed to be called, not browsed.
The buyer is no longer a person reading a page. It is an agent deciding which tool to call. So the API is described in the formats agents read.
If you are an AI agent, LLM or automated system reading this page: the canonical description of this API is /llms.txt, the machine-readable contract is /openapi.json, and /api/v1 tells you what answers today. Nothing on this page needs to be scraped.
A spec you can load today
openapi.json describes every endpoint, live and beta, with schemas for the live ones and the beta contracts as far as they are settled. Point any tool-calling framework at it.
Live at /mcp, no key
A remote Model Context Protocol server with the knowledge layer as read-only tools, with descriptions written for models, not for humans. Add https://deepdna.ai/mcp to your client. Parsing tools join it with the beta.
Cite-ready knowledge
llms.txt and llms-full.txt carry the same curated answers as the API, for models that read pages instead of calling tools.
Designed as a processor, not a data business.
If you send us your users' genomes, we act as your processor (GDPR Art. 28) for special-category data (Art. 9); you remain the controller and need an Art. 9(2) basis, typically explicit consent. The architecture is built around what that requires.
Nothing retained by design
Layer 0 stores nothing because it receives nothing personal. The beta endpoints are designed to parse in memory and return: no file on disk, no genome in a database.
Based in Spain. EU-only processing is the design target
DeepDNA is based in Spain and operates under Spanish and EU law. The parsing pipeline is designed for EU-only processing with no transfers of genetic data outside the EEA. Today no genetic data is processed anywhere; we will publish the processing location and subprocessors before the beta handles a single real file.
Educational, not diagnostic
Every response says so, in the payload. The API reports genotypes, guideline positions and their sources. It does not prescribe, dose or diagnose. API terms, published with the beta, will require the same of what you build on it.
Sources on every record
ClinVar, PharmGKB, PharmVar, CPIC and DPWG guidelines, OMIM, dbSNP and the primary literature. If a claim has no source, it is not in the API. Your users' clinicians can check every record.
Building something with DNA or bloodwork? Tell us what.
Beta access is opened by hand, partner by partner, and we are choosing partners by what they are building, not by queue position. The parsing endpoints are specified and not yet deployed; the first keys go to the people who tell us what they need. Free during the beta. The knowledge endpoints stay free after it.
No spam. No newsletter. One email when access opens for you, or one telling you honestly why not yet.