NHGRI-EBI GWAS Catalog REST API for SNP-trait associations from published GWAS. Query studies, associations, variants, traits, genes, summary stats. Build PRS candidates, analyze pleiotropy, fetch stats for Manhattan plots. No auth.
SkillScore86Maintained
Automatic
◆Research pack
Last verified 9/3/2026
What it changes
Passed 18 of 21 test cases with the skill, and 11 of 21 without it.
Without skill55%
With skill86%
Checks it passed that the model alone missed
Sets page size parameter to 500.
Passes the target gene symbol as a query parameter.
Passes the canonical trait name in the efoTrait parameter.
and 9 more in the full report
7 fixed12 passed either way3 still failing0 broke
Pass-rate lift
+32 pp
Tokens
+221%
Agent turns
0%
Response time
-2%
Model gemini-3.6-flashMeasured 9/3/2026v219 of 22 cases passed with skill · 21 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 7 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 7
Prompt
Could you help me retrieve all genome-wide significant genetic loci for schizophrenia from the GWAS Catalog? Please query the API for schizophrenia associations, filter down to significant hits, and present the output as a summary table showing each variant's rsID, p-value, effect size (odds ratio or beta), and mapped genes.
What was checked, without and with the skill
Checked
Without skill
With skill
Queries the association p-value using the lowercase field name pvalue.
Passed
Passed
Reads odds ratio values from the effect size field rather than an inherited allele field.
Passed
Passed
Traverses the loci structure to extract variant rsIDs from strongestRiskAlleles.
Missed
Passed
Traverses the loci structure to extract gene names from authorReportedGenes.
Passed
Passed
Includes a pause between HTTP requests to adhere to rate limiting.
Missed
Passed
case-01 · gemini-3.6-flash · 9/3/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md589 lines2 files
GWAS Catalog Database — SNP-Trait Association Queries
Overview
The NHGRI-EBI GWAS Catalog is a curated collection of published genome-wide association studies, mapping SNP-trait associations with genomic context. The REST API provides programmatic access to studies, associations, variants, traits, genes, and summary statistics. All responses are HAL+JSON with embedded _links for pagination.
When to Use
Finding genetic variants associated with a disease or trait (e.g., "which SNPs are linked to type 2 diabetes?")
Retrieving genome-wide significant associations for a specific variant (rs ID)
Exploring the genetic architecture of complex traits (number of loci, effect sizes)
Checking variant pleiotropy (how many traits a single SNP affects)
Downloading summary statistics for meta-analysis or polygenic risk score construction
Identifying published GWAS studies by disease, gene, or PubMed ID
Cross-referencing EFO trait ontology terms with GWAS evidence
Building candidate gene lists from GWAS association regions
Use omics-plotting SKILL to render Manhattan, QQ, and forest plots from the summary statistics / association results
For drug target validation from GWAS hits, use opentargets-database instead
For variant functional annotation (consequence prediction, regulatory impact), use Ensembl VEP via gget
Prerequisites
pip install requests matplotlib numpy
API access:
No authentication required -- fully open access
Rate limits: no official limit, but add time.sleep(0.2) between requests to be courteous
Base URL: https://www.ebi.ac.uk/gwas/rest/api
Response format: HAL+JSON with _embedded data and _links for pagination
Pagination: default 20 results per page; max 500 via size parameter
Quick Start
import requests
import time
BASE = "https://www.ebi.ac.uk/gwas/rest/api"