
QuickGO Database
FreeEfficiently map genes to biological functions and processes.
Free · Opens the source repo
What QuickGO Database does
The QuickGO Database skill provides a Python CLI wrapper for querying the QuickGO and Evidence & Conclusion Ontology (ECO) REST API. This tool is essential for researchers and developers in the biological sciences who need to link genes to their associated biological processes, molecular functions, and cellular components. By utilizing this skill, users can effectively explore the Gene Ontology hierarchy and retrieve detailed annotations for gene products, which include proteins and RNA.
The skill offers several key functionalities through its command-line interface. Users can resolve gene symbols to their corresponding UniProtKB IDs, retrieve functional annotations, and explore GO terms and their relationships. This capability is particularly useful for those working on genomic data analysis or functional genomics, where understanding gene functions is critical. The tool also emphasizes the importance of using experimental evidence over electronic predictions, ensuring that the data retrieved is as accurate and relevant as possible.
To use the QuickGO Database skill, users must ensure they have the uv skill installed and configured correctly. The skill is designed to handle large JSON responses efficiently while respecting API rate limits. It also provides mechanisms for outputting results to files for further analysis, making it a practical choice for batch processing or integration into larger workflows.
In summary, this skill is tailored for biologists, bioinformaticians, and researchers who require a reliable method to access and analyze gene function data. Its structured approach to querying the QuickGO API allows for streamlined data retrieval and functional annotation mapping, making it an invaluable tool in the field of bioinformatics.
When to use it
Use this skill when you need to map genes to biological processes or retrieve gene annotations efficiently.
When not to use it
This skill is not suitable for querying drug targets or mechanistic signaling pathways; consider using OpenTargets or KEGG for those purposes.
What you can build with it
Mapping Gene Functions
Use the skill to resolve a gene symbol to its UniProtKB ID and retrieve its functional annotations.
Exploring Gene Ontology Hierarchy
Query specific GO terms to understand their definitions and relationships within the ontology.
Generating Functional Summaries
Create GO Slim summaries from a list of candidate genes to obtain high-level functional insights.
How to install QuickGO Database
View source1. Install with the skills CLI
npx skills add google-deepmind/science-skills/quickgo_database --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by google-deepmindQuickGO Database Skill
GO (Gene Ontology) annotations are one of the main ways to label a gene's function. QuickGO is a fast, web-based browser for the GO and Evidence & Conclusion Ontology (ECO), maintained by the Gene Ontology Annotation (GOA) group at EMBL-EBI.
It provides a centralised resource to explore the functional attributes of gene products (proteins, RNA, and complexes). It is a primary tool for functional annotation mapping since it allows you to link a gene (e.g., USH2A) to its specific biological processes (e.g. sensory perception of light stimulus), molecular functions, and cellular components.
Prerequisites
uv: Read theuvskill and follow its Setup instructions to ensureuvis installed and on PATH.- User Notification: If .licenses/quickgo_database_LICENSE.txt does not already exist in the workspace root directory then (1) prominently notify the user to check the terms at https://www.ebi.ac.uk/QuickGO/ and https://www.ebi.ac.uk/QuickGO/api/index.html, then (2) create the file recording the notification text and timestamp.
Usage
This skill provides a Python CLI wrapper scripts/quickgo_tool.py that queries
the QuickGO REST API. It handles formatting the requests, respecting rate
limits, and safely storing the potentially large JSON responses.
Core Rules
- Use the Wrapper: ALWAYS execute the provided helper scripts to query the database rather than accessing the database directly. The scripts automatically enforce the required rate limit gracefully.
- Pagination & Limits: Restrict endpoints to a maximum of 100 results per
page using
--limit 100and the--pageparameter for larger datasets. - Output Files: Always use the
--outputflag to save responses to a file incrementally or parse viajq. - Evidence Codes: Prioritize experimental evidence (
ECO:0000269) over electronic (ECO:0000501) to avoid noisy predictions. - Taxon Filtering: Use
--taxonId 9606to restrict results to Human when analysing clinical or human genomic data. - Notification: If this skill is used, ensure this is mentioned in the output.
The tool has four main subcommands:
go: For retrieving information about GO terms (e.g. definitions, ancestors, descendants, and slims). See references/go_terms.md.annotation: For finding functional annotations linking gene products to GO terms. This is your primary functional mapper. See references/annotations.md.geneproduct: For resolving gene symbols (likePROC) to their formal database identifiers. See references/gene_products.md.eco: For Evidence & Conclusion Ontology terms (used in annotations to indicate how an annotation was derived, e.g. experimental vs electronic). See references/eco_terms.md.
Common Workflows
1. Map a gene to its functions (Annotations)
To find out what a gene does, you must first resolve its symbol to a UniProtKB
ID, and then query its annotations. Often it is best to filter for experimental
evidence (e.g. ECO:0000269 for EXP, or others like IDA, IMP) to avoid noisy
electronic predictions.
# Step 1: Find the UniProtKB ID for human (9606) gene PROC
uv run scripts/quickgo_tool.py geneproduct search --query "PROC" --taxonId 9606 --limit 5 --output proc_id.json
# (Look at proc_id.json, observe the ID is e.g., UniProtKB:P04070)
# Step 2: Find experimental GO annotations for that ID
uv run scripts/quickgo_tool.py annotation search --geneProductId "UniProtKB:P04070" --taxonId 9606 --evidenceCode "ECO:0000269" --limit 50 --output proc_annotations.json
2. Find all genes in a pathway
To find all genes annotated to a specific GO term (e.g., GO:0003700 for "transcription factor activity"):
# Find human genes with this specific molecular function
uv run scripts/quickgo_tool.py annotation search --goId "GO:0003700" --taxonId 9606 --limit 50 --output tf_genes.json
3. Explore the GO Hierarchy
To check if a specific GO term is a descendant of a broader category, or to fetch its definition:
# Fetch term details (definitions, synonyms)
uv run scripts/quickgo_tool.py go terms --ids "GO:0003150" --output term_details.json
# Check ancestry (e.g., is GO:0001917 a child of something?)
uv run scripts/quickgo_tool.py go terms --ids "GO:0001917" --relation ancestors --output term_ancestors.json
4. Create a GO Slim Summary
If you have a list of candidate genes and want a high-level functional summary, you can map them up to a predefined GO Slim. First, fetch the annotations for the genes to extract their GO IDs, then pass those IDs to the slim endpoint:
# Step 1: Find GO IDs for candidate genes (e.g., via their UniProt IDs, fetching their annotations)
# ... (output yields e.g., GO:0006915,GO:0008219)
# Step 2: Create a slim summary from those specific GO IDs
uv run scripts/quickgo_tool.py go slim --slimsToIds "GO:0005575,GO:0008150,GO:0003674" --slimsFromIds "GO:0006915,GO:0008219" --output my_slim.json
Frequently asked questions about QuickGO Database
Similar skills
Scientific Problem Selection
Streamline your research problem selection process.
Nextflow Development
Run nf-core bioinformatics pipelines with ease.
Nature Reviewer Assessment
Simulate peer review for scientific manuscripts.
Research Writing Pipeline
Streamline your scientific writing with structured proposal-first methodologies.
Nature Literature Downloader
Efficiently download academic literature from various sources.
Auto Research
Streamline your NeMo-RL experiments with automated workflows.
