Back to Claude Scientific Skills

gget

skills/gget/SKILL.md

2.57.06.5 KB
Original Source

gget

Overview

gget is a command-line bioinformatics tool and Python package providing unified access to 20+ genomic databases and analysis methods. Query gene information, sequence analysis, protein structures, viral sequences, expression data, disease associations, and mouse tissue/cell specificity metrics through a consistent interface. Most gget modules work both as command-line tools and as Python functions.

Important: The databases queried by gget are continuously updated, which sometimes changes their structure. Guidance here targets gget 0.30.5 (PyPI current as of 2026-06-07). For reproducible work, pin gget==0.30.5; for broken upstream database adapters, update gget after checking release notes.

Installation

Install gget in a clean virtual environment to avoid conflicts:

bash
# Reproducible install targeting this skill
uv venv .venv
source .venv/bin/activate
uv pip install "gget==0.30.5"

# In Python/Jupyter
import gget

Quick Start

Basic usage pattern for all modules:

bash
# Command-line
gget <module> [arguments] [options]

# Python
gget.module(arguments, options)

Most modules return:

  • Command-line: JSON (default) or CSV with -csv flag
  • Python: DataFrame or dictionary

Common flags across modules:

  • -o/--out: Save results to file
  • -q/--quiet: Suppress progress information
  • -csv: Return CSV format (command-line only)

Python argument names generally match long CLI options without leading dashes. For example, --census_version becomes census_version=.... Use gget <module> --help for the exact current signature.

Module Categories

gget exposes 23 modules in six categories. Parameters, CLI and Python examples, and return shapes for every one are in references/module_catalog.md; fuller per-parameter documentation is in references/module_reference.md.

CategoryModules
1. Reference & gene informationref (Ensembl reference downloads), search (gene search), info (gene/transcript detail), seq (nucleotide and protein sequences)
2. Sequence analysis & alignmentblast, blat, muscle (multiple alignment), diamond (local alignment)
3. Structural & protein analysispdb (structures and metadata), alphafold (structure prediction), elm (linear motifs)
4. Expression & disease dataarchs4 (correlation, tissue expression), cellxgene (single-cell), enrichr (enrichment), bgee (orthology and expression), opentargets (disease and drug), cbio (cancer genomics), cosmic (mutations)
5. Viral & mouse specificityvirus (viral sequences), 8cube (mouse specificity and expression)
6. Additional toolsmutate (mutated sequences), gpt (text generation), setup (install module dependencies)

Several modules need a one-time gget setup before first use (alphafold, elm, cellxgene), and cosmic prompts for COSMIC credentials to download its database.

Common Workflows

Worked multi-module pipelines — gene characterization, structural comparison, expression and enrichment analysis, disease and drug association, orthology comparison, and reference-file preparation for kallisto or alignment — are in references/common_workflows.md, with longer versions in references/workflows.md.

Best Practices

Data Retrieval

  • Use --limit to control result sizes for large queries
  • Save results with -o/--out for reproducibility
  • Check database versions/releases for consistency across analyses
  • Use --quiet in production scripts to reduce output

Sequence Analysis

  • For BLAST/BLAT, start with default parameters, then adjust sensitivity
  • Use gget diamond with --threads for faster local alignment
  • Save DIAMOND databases with --diamond_db for repeated queries
  • For multiple sequence alignment, use -s5/--super5 for large datasets

Expression and Disease Data

  • Gene symbols are case-sensitive in cellxgene (e.g., 'PAX7' vs 'Pax7')
  • Run gget setup before first use of alphafold, cellxgene, elm, gpt
  • For enrichment analysis, use database shortcuts for convenience
  • Cache cBioPortal data with -dd to avoid repeated downloads
  • For OpenTargets, inspect returned column names before writing filters; gget 0.30.5 follows the newer OpenTargets API schema

Structure Prediction

  • AlphaFold multimer predictions: use -mr 20 for higher accuracy
  • Use -r flag for AMBER relaxation of final structures
  • Visualize results in Python with plot=True
  • Check PDB database first before running AlphaFold predictions

Viral Data

  • Use restrictive filters with gget virus before requesting broad viral datasets
  • Keep command_summary.txt with downstream results for reproducibility and recovery after partial downloads
  • Use --baseline and --merge-results to resume interrupted viral metadata/sequence downloads

Error Handling

  • Database structures change; when an adapter breaks, check upstream release notes and pin the newer fixed version explicitly
  • Pin the known-good version for reproducible environments: uv pip install "gget==0.30.5"
  • Process max ~1000 Ensembl IDs at once with gget info
  • For large-scale analyses, implement rate limiting for API queries
  • Use virtual environments to avoid dependency conflicts
  • Keep COSMIC and OpenAI credentials in named environment variables or interactive prompts; do not write real credentials into examples, notebooks, or logs

Output Formats

Command-line

  • Default: JSON
  • CSV: Add -csv flag
  • FASTA: gget seq, gget mutate
  • PDB: gget pdb, gget alphafold
  • PNG: gget cbio plot
  • FASTA/CSV/JSONL folder: gget virus

Python

  • Default: DataFrame or dictionary
  • JSON: Add json=True parameter
  • Save to file: Add save=True or specify out="filename"
  • AnnData: gget cellxgene
  • DataFrame/JSON: gget 8cube specificity, psi_block, expression

Resources

This skill includes reference documentation for detailed module information:

references/

  • module_reference.md - Comprehensive parameter reference for all modules
  • database_info.md - Information about queried databases and their update frequencies
  • workflows.md - Extended workflow examples and use cases

For additional help: