Skip to main content

A powerful MCP Server for GWAS and Bioinformatics Research - Access 30+ tools from 14 major biological databases

Project description

๐Ÿงฌ GWAS-MCP: Bioinformatics MCP Server

PyPI version License: MIT MCP

A powerful Model Context Protocol (MCP) server for GWAS and bioinformatics research. Seamlessly integrates with Claude Desktop and other MCP clients to provide AI-powered access to major biological databases.

30+ Tools 12+ Databases Python 3.10+


โœจ Features

๐Ÿ”ฌ Protein & Gene Lookup

  • UniProt - Search proteins by name, gene, or ID
  • Ensembl - Gene information and variant details
  • NCBI Gene - Comprehensive gene database

๐Ÿงช Clinical & Variants

  • ClinVar - Clinical variant interpretations (pathogenic/benign)
  • GWAS Catalog - Genome-wide association studies
  • GTEx - Expression quantitative trait loci (eQTL)

๐Ÿ”— Protein Interactions & Networks

  • STRING - Protein-protein interactions
  • InterPro - Protein domains and families

๐Ÿ—๏ธ Structures & Pathways

  • AlphaFold - AI-predicted protein structures
  • PDB - Experimental 3D structures
  • KEGG - Metabolic and signaling pathways

๐Ÿ’Š Drug Discovery

  • Open Targets - Drug target validation & disease associations
  • PharmGKB - Pharmacogenomics & drug-gene interactions

๐Ÿฅ Genetic Diseases

  • OMIM - Online Mendelian Inheritance in Man

๐Ÿš€ Quick Start

Installation

pip install gwas-mcp

Claude Desktop Configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "gwas-bioinformatics": {
      "command": "python",
      "args": ["-m", "gwas_mcp.server"]
    }
  }
}

Config file location:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Restart Claude Desktop

After adding the configuration, restart Claude Desktop to load the MCP server.


๐Ÿ› ๏ธ Available Tools

Protein & Gene Tools

Tool Description
search_uniprot Search UniProt by protein name, gene, or ID
get_protein_details Get detailed protein info (function, domains, GO terms)
search_ncbi_gene Search NCBI Gene database
search_ensembl_gene Get gene location and details from Ensembl
get_variant_info Get SNP/variant info by rsID
get_interpro_domains Get protein domain information

Clinical & Variant Tools

Tool Description
search_clinvar Search ClinVar for clinical variants
get_clinvar_variant Get clinical interpretation for a variant
annotate_snps Annotate SNPs with functional consequences
query_gwas_catalog Query GWAS Catalog for associations
get_eqtl_data Get eQTL data from GTEx

Protein Interaction Tools

Tool Description
get_protein_interactions Find interacting proteins (STRING)
get_interaction_network Get network between multiple proteins
get_functional_enrichment Pathway/GO enrichment analysis

Structure & Pathway Tools

Tool Description
get_alphafold_structure Get AI-predicted structure
search_alphafold Search AlphaFold database
search_pdb_structures Search PDB for 3D structures
get_pdb_structure Get PDB structure details
search_kegg_pathway Search KEGG pathways
get_kegg_pathway Get pathway genes and details
get_gene_pathways Find pathways for a gene

Drug Discovery Tools

Tool Description
get_drug_targets Find drugs targeting a gene (Open Targets)
get_disease_associations Get disease associations with scores
search_open_targets Search genes, diseases, or drugs
search_pharmgkb Search PharmGKB database
get_drug_gene_interactions Get drug-gene interactions

Genetic Disease Tools

Tool Description
search_omim Search OMIM for genetic diseases
get_gene_diseases Get all diseases for a gene

๐Ÿ’ฌ Example Prompts

Once configured, ask Claude naturally:

Protein & Gene Queries

"Get information about the BRCA1 gene"

"Search UniProt for hemoglobin"

"What protein has UniProt ID P53_HUMAN?"

Clinical Variants

"Is the BRCA1 variant rs80357906 pathogenic?"

"Search ClinVar for TP53 variants"

Protein Interactions

"What proteins interact with TP53?"

"Find functional enrichment for BRCA1, ATM, and CHEK2"

Structures & Pathways

"Get the AlphaFold structure for TP53"

"What pathways is BRCA1 involved in?"

"Search PDB for insulin structures"

Drug Discovery

"What drugs target EGFR?"

"What diseases is BRAF associated with?"

Genetic Diseases

"Search OMIM for cystic fibrosis"

"What diseases are linked to the CFTR gene?"


โšก Performance Features

  • Smart Caching - API responses cached for 1 hour to improve speed
  • Async Operations - All API calls are non-blocking
  • Error Handling - Graceful handling of API failures

๐Ÿ”ง Development

From Source

# Clone the repository
git clone https://github.com/zaeyasa/gwas-mcp.git
cd gwas-mcp

# Install dependencies
pip install -e .

# Run the server
python -m gwas_mcp.server

Project Structure

gwas-mcp/
โ”œโ”€โ”€ src/
โ”‚   โ””โ”€โ”€ gwas_mcp/
โ”‚       โ”œโ”€โ”€ server.py           # Main MCP server
โ”‚       โ”œโ”€โ”€ tools/
โ”‚       โ”‚   โ”œโ”€โ”€ protein_tools.py     # UniProt, NCBI, Ensembl
โ”‚       โ”‚   โ”œโ”€โ”€ clinical_tools.py    # ClinVar, STRING
โ”‚       โ”‚   โ”œโ”€โ”€ structure_tools.py   # PDB, KEGG, PharmGKB
โ”‚       โ”‚   โ””โ”€โ”€ advanced_tools.py    # AlphaFold, Open Targets, OMIM
โ”‚       โ””โ”€โ”€ resources/
โ”‚           โ””โ”€โ”€ db_resources.py      # Database resources
โ”œโ”€โ”€ pyproject.toml
โ”œโ”€โ”€ README.md
โ””โ”€โ”€ LICENSE

๐Ÿ“Š Supported Databases

Database Type Description
UniProt Protein Protein sequences and annotations
Ensembl Gene/Variant Genome browser and variant data
NCBI Gene Gene Gene information database
ClinVar Clinical Clinical variant interpretations
GWAS Catalog GWAS Genome-wide association studies
GTEx Expression Expression QTL data
STRING Interactions Protein-protein interactions
InterPro Domains Protein families and domains
AlphaFold Structure AI-predicted structures
PDB Structure Experimental 3D structures
KEGG Pathways Metabolic and signaling pathways
Open Targets Drug Discovery Drug targets and disease associations
PharmGKB Pharmacogenomics Drug-gene interactions
OMIM Diseases Genetic disease database

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐Ÿ™ Acknowledgments

  • Model Context Protocol - The MCP specification
  • Anthropic - Claude AI and MCP development
  • All the amazing bioinformatics databases that make this possible

๐Ÿ“ฌ Contact


Made with โค๏ธ for the bioinformatics community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gwas_mcp-1.0.2.tar.gz (52.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gwas_mcp-1.0.2-py3-none-any.whl (56.1 kB view details)

Uploaded Python 3

File details

Details for the file gwas_mcp-1.0.2.tar.gz.

File metadata

  • Download URL: gwas_mcp-1.0.2.tar.gz
  • Upload date:
  • Size: 52.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for gwas_mcp-1.0.2.tar.gz
Algorithm Hash digest
SHA256 9bcf8b8683b300ecde733e7944b8f9d461a4cebba5ad1c9644eb1a733f37bb75
MD5 4ac9a402e128fa281f7900e75094e881
BLAKE2b-256 20644e2b3ec023c9f5a796f7dc259f9d07cff4798de1036f9d77c93515365d8e

See more details on using hashes here.

File details

Details for the file gwas_mcp-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: gwas_mcp-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 56.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for gwas_mcp-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e7339a3a95a2af06f292f7f6cecff097edc3da5810535f56ce894510846f403e
MD5 06aa0f317b2cb62d4b010107c7e6c2e8
BLAKE2b-256 a55e770b91f67c85f912be6204a8d2b5f3e09c36833894def5b4b3b6acebbad7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page