GenomeMCP
AI-powered genomic intelligence through the Model Context Protocol
GenomeMCP is a research-grade Model Context Protocol (MCP) server that enables AI agents to query clinical genomics databases, retrieve supporting scientific literature, analyze population genetics, and visualize biological pathways โ all in real-time.
๐ฅ๏ธ CLI Tool
GenomeMCP includes a beautiful command-line interface with rich formatting and an interactive TUI mode.
Quick Install
# Recommended (any platform with Python)
pipx install genomemcp
# macOS (Homebrew)
brew install nexisdev/tap/genomemcp
# Windows (Scoop)
scoop bucket add genomemcp https://github.com/nexisdev/scoop-genomemcp
scoop install genomemcp
# From source
git clone https://github.com/nexisdev/GenomeMCP.git
cd GenomeMCP && ./install.sh
Standalone binaries available on GitHub Releases.
CLI Commands
genomemcp search BRCA1 # ๐ Search ClinVar
genomemcp variant 12345 # ๐ Get variant report
genomemcp gene TP53 # ๐งฌ Get gene info
genomemcp pathway EGFR --visualize # ๐ฌ Pathway analysis
genomemcp population 1-55516888-G-GA # ๐ฅ gnomAD frequencies
genomemcp discover "Lynch Syndrome" # ๐ Discover related genes
genomemcp tui # ๐ฅ๏ธ Interactive mode
Theme Options
genomemcp --theme cyberpunk search BRCA1
genomemcp --theme professional gene TP53
genomemcp --theme minimal pathway EGFR
See CLI Guide for complete documentation.
๐ฏ Why GenomeMCP?
| Problem | GenomeMCP Solution |
|---|---|
| AI agents lack genomic knowledge | Direct ClinVar, gnomAD, Reactome integration |
| No evidence for clinical claims | Auto-retrieves PubMed abstracts |
| Variant interpretation is complex | Population frequency + pathway context |
| Gene-disease links are opaque | Automatic relationship discovery |
๐งฌ Features
Core Genomics Tools
search_clinvar(term)โ Query ClinVar for genes, variants, or diseasesget_variant_report(id)โ Detailed clinical significance reportget_gene_info(symbol)โ Gene function, location, and aliases from NCBI Geneget_supporting_literature(id)โ PubMed articles linked to a variant
Population Genetics
get_population_stats(variant)โ Allele frequency from gnomAD (Genome Aggregation Database)
Pathway Analysis
get_pathway_info(gene)โ Reactome biological pathways for a genevisualize_pathway(gene)โ Generate Mermaid.js diagrams of gene-pathway relationships
Discovery & Synthesis
find_related_genes(phenotype)โ Discover genes associated with a diseaseget_genomic_context(gene, position)โ Identify exon vs intron regionsget_discovery_evidence(phenotype)โ Aggregate PubMed abstracts for AI reasoning
๐ Quick Start
MCP Server Installation
# Clone the repository
git clone https://github.com/nexisdev/GenomeMCP.git
cd GenomeMCP
# Install dependencies with uv
uv sync
# Run the MCP server
uv run python src/main.py
CLI Installation
# Using the install script
./install.sh
# Or with pip
pip install genomemcp[cli]
# Or for development
./setup-dev.sh
source .venv/bin/activate
Claude Desktop Integration
Add to your claude_desktop_config.json:
{
"mcpServers": {
"genomemcp": {
"command": "uv",
"args": [
"--directory",
"/path/to/GenomeMCP",
"run",
"python",
"src/main.py"
]
}
}
}
### โ๏ธ Cloud Deployment (Railway)
You can deploy the GenomeMCP server to the cloud with one click. It will be exposed as an SSE (Server-Sent Events) endpoint, ready for remote agents.
1. Click the **Deploy on Railway** button above.
2. Provide your `SUPABASE_URL` and `SUPABASE_KEY` (optional, for persistence).
3. Connect your agent to the deployment URL (e.g. `https://your-app.up.railway.app/sse`).
---
## ๐ Usage Examples
### Search for a Gene Variant
User: "What variants are associated with BRCA1?"Agent uses: search_clinvar("BRCA1")
### Get Population Frequency
User: "How common is the variant 1-55516888-G-GA?"Agent uses: get_population_stats("1-55516888-G-GA")โ Returns gnomAD allele frequency: 0.000123 (0.01%)
### Discover Gene-Disease Relationships
User: "What genes are linked to Lynch Syndrome?"Agent uses: find_related_genes("Lynch Syndrome")โ Returns: MSH2 (12 variants), MLH1 (8 variants), PMS2 (5 variants)
### Visualize Pathways
User: "Show me the pathways for TP53"Agent uses: visualize_pathway("TP53")โ Returns Mermaid diagram:
```mermaid
graph TD
TP53((TP53))
TP53 --> P_123["Transcriptional Regulation by TP53"]
TP53 --> P_456["Cell Cycle Checkpoints"]
TP53 --> P_789["DNA Damage Response"]
๐ฌ Data Sources
| Source | Description | API |
|---|---|---|
| ClinVar | Clinical variant interpretations | NCBI E-utilities |
| gnomAD | Population allele frequencies | gnomAD GraphQL |
| Reactome | Biological pathway database | Reactome Content Service |
| PubMed | Scientific literature | NCBI E-utilities |
| NCBI Gene | Gene annotations | NCBI E-utilities |
๐๏ธ Architecture
GenomeMCP/
โโโ src/
โ โโโ main.py # MCP server & tool definitions
โ โโโ clinvar.py # ClinVar & PubMed API client
โ โโโ genomics.py # Exon/Intron mapping
โ โโโ population.py # gnomAD integration
โ โโโ pathways.py # Reactome integration
โ โโโ utils.py # Shared utilities
โ โโโ cli/ # Command-line interface
โ โโโ app.py # Typer CLI application
โ โโโ formatters/ # Rich output formatters
โ โโโ tui/ # Textual interactive UI
โ โโโ config.py # Theme configuration
โโโ tests/ # Unit tests
โโโ docs/ # Documentation
โโโ install.sh # Quick install script
โโโ setup-dev.sh # Development setup
โโโ pyproject.toml # Project configuration
๐งช Testing
# Run all tests
uv run pytest
# Run CLI tests
uv run pytest tests/test_cli.py -v
# Run specific test suite
uv run pytest tests/test_phase4.py tests/test_phase5.py
๐ Documentation
- CLI Guide โ Command-line interface documentation
- Tool Reference โ Complete API documentation
- Architecture Guide โ System design
๐ค Contributing
Contributions are welcome! Please open an issue or submit a pull request.
๐ License
MIT License โ see LICENSE for details.
๐ Keywords
genomics bioinformatics clinvar gnomad mcp model-context-protocol ai-agent claude variant-interpretation population-genetics reactome pathway-analysis pubmed ncbi gene-discovery clinical-genomics precision-medicine llm-tools cli tui terminal
Built for AI agents. Powered by open genomic data.