Hi HN — I built OpenPGx because pharmacogenomic knowledge is scattered in PDFs and lab portals, while the formats we use in healthcare (FHIR, etc.) are not really built for “let me ask an AI about my genotype with citations.”
Problem: After getting genotyped, I wanted plain questions answered with evidence — “Can I take this GLP-1?”, “What does my APOE mean for Alzheimer risk?” — without pasting rsIDs into random chatbots. PharmCAT and similar tools are valuable but not aimed at MCP/LLM workflows; papers are unstructured.
What it is: An open JSON shape for PGx (one file ≈ one gene–drug study, PMID/DOI on every interpretation) plus an MCP server so Claude, Cursor, or any MCP client can load your raw file, query the catalog, and answer in natural language with study-backed reasoning.
Local workflow (privacy-first):
Clone or npx openpgx — raw DNA stays out of git: use the genomes/ folder (gitignored). Supported parsers today: 23andMe .txt and Genera .csv (same convention as in genomes/README.md: drop files there, then point the tool at the path).
In the assistant: e.g. “Upload my genome from genomes/my_file.txt” — parsing stays on your machine.
Ask medication, risk, trait, or supplement questions; answers tie back to the study JSON (and optional full reports).
What ships today (from the repo):
118 curated study files · 109 genes · 219 drug strings indexed (generics + brands + fuzzy/typo-friendly resolution, multilingual prompts)
There is also an optional hosted MCP endpoint for people who prefer zero install (data processed server-side with a short session TTL) — for maximum privacy, the local npx path above is the one I use.
I’d especially like feedback on the study JSON schema: we kept it deliberately small so a paper + rsIDs can become one file. What would you add or split differently for real-world use?
Disclaimer: educational / research tooling, not a substitute for a clinician or pharmacist.
dougplac•1h ago
Problem: After getting genotyped, I wanted plain questions answered with evidence — “Can I take this GLP-1?”, “What does my APOE mean for Alzheimer risk?” — without pasting rsIDs into random chatbots. PharmCAT and similar tools are valuable but not aimed at MCP/LLM workflows; papers are unstructured.
What it is: An open JSON shape for PGx (one file ≈ one gene–drug study, PMID/DOI on every interpretation) plus an MCP server so Claude, Cursor, or any MCP client can load your raw file, query the catalog, and answer in natural language with study-backed reasoning.
Local workflow (privacy-first):
Clone or npx openpgx — raw DNA stays out of git: use the genomes/ folder (gitignored). Supported parsers today: 23andMe .txt and Genera .csv (same convention as in genomes/README.md: drop files there, then point the tool at the path).
In the assistant: e.g. “Upload my genome from genomes/my_file.txt” — parsing stays on your machine.
Ask medication, risk, trait, or supplement questions; answers tie back to the study JSON (and optional full reports).
What ships today (from the repo):
118 curated study files · 109 genes · 219 drug strings indexed (generics + brands + fuzzy/typo-friendly resolution, multilingual prompts)
19 disease-risk conditions · 31 traits
9 MCP tools (upload, medication check, PGx / risk / trait reports, comparisons, supplements, combined report)
Contributing: No code required to add evidence — drop a new JSON under data/pgx/studies/ and PR; the server indexes at runtime.
Install (stdio, local):
npx openpgx
Claude Desktop example:
{ "mcpServers": { "openpgx": { "command": "npx", "args": ["-y", "openpgx"] } } }
Site: https://openpgx.ai · Repo: https://github.com/open-pgx/openpgx · npm: https://www.npmjs.com/package/openpgx
There is also an optional hosted MCP endpoint for people who prefer zero install (data processed server-side with a short session TTL) — for maximum privacy, the local npx path above is the one I use.
I’d especially like feedback on the study JSON schema: we kept it deliberately small so a paper + rsIDs can become one file. What would you add or split differently for real-world use?
Disclaimer: educational / research tooling, not a substitute for a clinician or pharmacist.