gwas-database

Query the NHGRI-EBI GWAS Catalog for SNP-trait associations and summary statistics.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/Juancho032007/claude-scientific-skills --skill gwas-database
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gwas-database
Source: https://github.com/Juancho032007/claude-scientific-skills/tree/main/scientific-databases/gwas-database
Command: npx skills add https://github.com/Juancho032007/claude-scientific-skills --skill gwas-database

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires requests, pandas, and includes references (resource) components.

What problem does it solve?

Manually sifting through thousands of GWAS publications to find specific SNP-trait associations or summary statistics is incredibly time-consuming and error-prone. This Skill automates access to the NHGRI-EBI GWAS Catalog, streamlining genetic epidemiology, polygenic risk score development, and systematic reviews of genetic evidence.

Core Features & Use Cases

  • Comprehensive Association Search: Find SNPs associated with diseases or traits by rs ID, gene, or genomic region, with options to filter by p-value and population.
  • Summary Statistics Access: Retrieve full genome-wide association data, including p-values, effect sizes, and allele frequencies, for studies that have deposited complete data.
  • Trait & Study Metadata: Access detailed information about phenotypes, diseases (mapped to EFO), and GWAS publications, including author, publication date, and ancestry.
  • Use Case: A genetic epidemiologist needs to identify all genome-wide significant variants associated with "type 2 diabetes" and retrieve their effect sizes for a polygenic risk score model. This skill can query the catalog, filter by significance, and extract the precise data needed for downstream analysis.

Quick Start

To find associations for "type 2 diabetes" (EFO_0001360): import requests trait_id = "EFO_0001360" url = f"https://www.ebi.ac.uk/gwas/rest/api/efoTraits/{trait_id}/associations" response = requests.get(url, headers={"Content-Type": "application/json"}) data = response.json() print(f"Found {data.get('page', {}).get('totalElements', 0)} associations")