GeneOntology-MCP-Server
If you are the rightful owner of GeneOntology-MCP-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Unofficial Gene Ontology MCP Server is a comprehensive server designed to facilitate access to Gene Ontology data, enabling AI systems to perform ontology-based analysis, gene annotation research, and functional enrichment studies.
Unofficial Gene Ontology MCP Server
A comprehensive Model Context Protocol server for accessing Gene Ontology (GO) data, enabling AI systems to perform ontology-based analysis, gene annotation research, and functional enrichment studies.
Features
- Term Search & Lookup: Search GO terms by keyword, name, or definition
- Ontology Navigation: Explore hierarchical relationships between terms
- Gene Annotations: Access GO annotations for genes and proteins
- Validation: Validate GO identifiers and check term existence
- Statistics: Get comprehensive ontology statistics and metadata
Installation
npm install
npm run build
Usage
As an MCP Server
Add to your MCP client configuration:
{
"mcpServers": {
"go-server": {
"command": "node",
"args": ["/path/to/go-server/build/index.js"]
}
}
}
Available Tools
search_go_terms
Search across Gene Ontology terms by keyword, name, or definition.
{
"query": "apoptosis",
"ontology": "biological_process",
"size": 10
}
get_go_term
Get detailed information for a specific GO term.
{
"id": "GO:0006915"
}
validate_go_id
Validate GO identifier format and check if term exists.
{
"id": "GO:0008150"
}
get_ontology_stats
Get statistics about GO ontologies (term counts, recent updates).
{
"ontology": "all"
}
Resource Templates
go://term/{id}
- Complete GO term informationgo://annotations/{gene}
- Gene annotationsgo://search/{query}
- Search resultsgo://hierarchy/{id}
- Term hierarchy relationships
Examples
Search for apoptosis-related terms
# Using the search_go_terms tool
{
"query": "apoptosis",
"ontology": "biological_process",
"size": 5,
"include_obsolete": false
}
Get detailed information about a GO term
# Using the get_go_term tool
{
"id": "GO:0006915"
}
Validate a GO identifier
# Using the validate_go_id tool
{
"id": "GO:0008150"
}
Data Sources
This server integrates with:
- QuickGO API (https://www.ebi.ac.uk/QuickGO/) - Primary data source
- GO Consortium (https://geneontology.org/) - Official Gene Ontology
- AmiGO (http://amigo.geneontology.org/) - Additional browsing interface
Error Handling
The server includes comprehensive error handling for:
- Invalid GO identifiers
- Missing terms
- API timeouts
- Network errors
- Malformed requests
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
Citation
If you use this project in your research or publications, please cite it as follows:
author = {Moudather Chelbi},
title = {GeneOntology MCP Server},
year = {2025},
howpublished = {https://github.com/Augmented-Nature/GeneOntology-MCP-Server},
note = {Accessed: 2025-06-29}