PharmGKB / ClinPGx Query Skill
SkillDev toolsQuery ClinPGx (PharmGKB) and CPIC for pharmacogenomics data. Use whenever the user asks about gene-drug interactions, pharmacogenomics clinical annotations, drug-metabolizing enzymes, CPIC guidelines, or variant-level PGx evidence for any gene symbol, drug name, rsID, or ClinPGx accession.
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the PharmGKB / ClinPGx Query Skill skill
What this skill tells your AI
The instructions your AI receives, as published by qsong-github/drugclaw in skills/pharmacogenomics/pharmgkb/SKILL.md and read by ahel’s review.
Queries two complementary APIs:
- ClinPGx API (
api.clinpgx.org/v1) — gene, chemical, variant detail - CPIC API (
api.cpicpgx.org/v1) — gene-drug pairs, CPIC guideline levels (PostgREST)
Auto-detects input entity type by pattern:
| Input Pattern | Detected As | Data Sources |
|---|---|---|
PA128 | ClinPGx accession | gene or chemical detail + CPIC pairs |
rs4244285 | dbSNP rsID | variant lookup |
CYP2D6 | gene symbol (uppercase, 2-15 chars) | gene detail + CPIC pairs |
| anything else | drug / free text | chemical detail + CPIC pairs |
API
| Function | Input | Returns |
|---|---|---|
search(entity) | single entity string | dict with genes, chemicals, variants, cpic_pairs, related |
search_batch(entities) | list of entity strings | dict[str → search result] |
summarize(result, entity) | search result + label | compact text (one line per hit) |
to_json(result) | search result | indented JSON string |
search_gene(symbol) | gene symbol | list of gene dicts (ClinPGx) |
search_drug(name) | drug name | list of chemical dicts (ClinPGx) |
search_variant(rsid) | rsID string | list of variant dicts (ClinPGx) |
get_cpic_pairs_by_gene(symbol) | gene symbol | list of pair dicts (CPIC pair_view) |
get_cpic_pairs_by_drug(name) | drug name | list of pair dicts (CPIC pair_view) |
Usage
See if __name__ == "__main__" block in 49_PHARMGKB_CLINPGX.py for runnable
examples covering: gene symbol, drug name, rsID, ClinPGx accession, batch
search, and JSON output.
Key Fields
Gene (ClinPGx): id, symbol, name, hasCpicGuideline
Chemical (ClinPGx): id, name, types
Variant (ClinPGx): id, symbol, genes, location
CPIC Pair (pair_view): genesymbol, drugname, cpiclevel (A/B/C/D),
clinpgxlevel (evidence), pgxtesting, guidelinename
Data Sources
- ClinPGx (Stanford / NIH) — https://www.clinpgx.org/ — REST JSON, no key, ≤2 req/s, CC BY-SA 4.0
- CPIC API — https://api.cpicpgx.org/ — PostgREST, no key — gene-drug guideline pairs
- Note: PharmGKB was subsumed by ClinPGx (July 2025). CPIC API remains at
api.cpicpgx.org.
Signals
- GitHub stars
- 116
- Forks
- 3
- Last commit
- Aug 2026
Advanced
- Item type
- skill
- Key
pharmgkb-clinpgx- Source
- github.com/qsong-github/drugclaw
github.com/qsong-github/drugclaw
Related picks
Skill · wshobson
The pick for Pythonpython-pro
Skill · jeffallan
The pick for Pythonsearch
Skill · davila7
The pick for Searchacademic-paper-composer
Skill · brycewang-stanford
The pick for Academic03-academic-writing
Skill · 24kchengye
The pick for Academicbmad-technical-research
Skill · tronghieu
The pick for Technical