$npx -y skills add K-Dense-AI/scientific-agent-skills --skill ggetFast CLI/Python queries to 20+ bioinformatics databases. Use for quick lookups: gene info, BLAST/BLAT, viral sequence downloads, AlphaFold structures, enrichment analysis, OpenTargets, COSMIC, CELLxGENE, and 8cube mouse specificity/expression data. Best for interactive exploratio
| 1 | # gget |
| 2 | |
| 3 | ## Overview |
| 4 | |
| 5 | 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. |
| 6 | |
| 7 | **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. |
| 8 | |
| 9 | ## Installation |
| 10 | |
| 11 | Install gget in a clean virtual environment to avoid conflicts: |
| 12 | |
| 13 | ```bash |
| 14 | # Reproducible install targeting this skill |
| 15 | uv venv .venv |
| 16 | source .venv/bin/activate |
| 17 | uv pip install "gget==0.30.5" |
| 18 | |
| 19 | # In Python/Jupyter |
| 20 | import gget |
| 21 | ``` |
| 22 | |
| 23 | ## Quick Start |
| 24 | |
| 25 | Basic usage pattern for all modules: |
| 26 | |
| 27 | ```bash |
| 28 | # Command-line |
| 29 | gget <module> [arguments] [options] |
| 30 | |
| 31 | # Python |
| 32 | gget.module(arguments, options) |
| 33 | ``` |
| 34 | |
| 35 | Most modules return: |
| 36 | - **Command-line**: JSON (default) or CSV with `-csv` flag |
| 37 | - **Python**: DataFrame or dictionary |
| 38 | |
| 39 | Common flags across modules: |
| 40 | - `-o/--out`: Save results to file |
| 41 | - `-q/--quiet`: Suppress progress information |
| 42 | - `-csv`: Return CSV format (command-line only) |
| 43 | |
| 44 | 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. |
| 45 | |
| 46 | ## Module Categories |
| 47 | |
| 48 | ### 1. Reference & Gene Information |
| 49 | |
| 50 | #### gget ref - Reference Genome Downloads |
| 51 | |
| 52 | Retrieve download links and metadata for Ensembl reference genomes. |
| 53 | |
| 54 | **Parameters**: |
| 55 | - `species`: Genus_species format (e.g., 'homo_sapiens', 'mus_musculus'). Shortcuts: 'human', 'mouse' |
| 56 | - `-w/--which`: Specify return types as comma-separated CLI values or Python list (gtf, cdna, dna, cds, cdrna, pep). Default: all |
| 57 | - `-r/--release`: Ensembl release number (default: latest) |
| 58 | - `-od/--out_dir`: Directory for downloaded files |
| 59 | - `-l/--list_species`: List available vertebrate species |
| 60 | - `-liv/--list_iv_species`: List available invertebrate species |
| 61 | - `-ftp`: Return only FTP links |
| 62 | - `-d/--download`: Download files (requires curl) |
| 63 | |
| 64 | **Examples**: |
| 65 | ```bash |
| 66 | # List available species |
| 67 | gget ref --list_species |
| 68 | |
| 69 | # Get all reference files for human |
| 70 | gget ref homo_sapiens |
| 71 | |
| 72 | # Download GTF and cDNA files for mouse |
| 73 | gget ref -w gtf,cdna -d mouse |
| 74 | ``` |
| 75 | |
| 76 | ```python |
| 77 | # Python |
| 78 | gget.ref("homo_sapiens") |
| 79 | gget.ref("mus_musculus", which=["gtf", "cdna"], download=True) |
| 80 | ``` |
| 81 | |
| 82 | #### gget search - Gene Search |
| 83 | |
| 84 | Locate genes by name, description, and Ensembl synonyms across species. |
| 85 | |
| 86 | **Parameters**: |
| 87 | - `searchwords`: One or more search terms (case-insensitive) |
| 88 | - `-s/--species`: Target species (e.g., 'homo_sapiens', 'mouse') |
| 89 | - `-r/--release`: Ensembl release number |
| 90 | - `-t/--id_type`: Return 'gene' (default) or 'transcript' |
| 91 | - `-ao/--andor`: 'or' (default) finds ANY searchword; 'and' requires ALL |
| 92 | - `-l/--limit`: Maximum results to return |
| 93 | - `wrap_text`: Python-only display helper for wide DataFrames |
| 94 | |
| 95 | **Returns**: ensembl_id, gene_name, ensembl_description, ext_ref_description, biotype, URL |
| 96 | |
| 97 | **Examples**: |
| 98 | ```bash |
| 99 | # Search for GABA-related genes in human |
| 100 | gget search -s human gaba gamma-aminobutyric |
| 101 | |
| 102 | # Find specific gene, require all terms |
| 103 | gget search -s mouse -ao and pax7 transcription |
| 104 | ``` |
| 105 | |
| 106 | ```python |
| 107 | # Python |
| 108 | gget.search(["gaba", "gamma-aminobutyric"], species="homo_sapiens") |
| 109 | ``` |
| 110 | |
| 111 | #### gget info - Gene/Transcript Information |
| 112 | |
| 113 | Retrieve comprehensive gene and transcript metadata from Ensembl, UniProt, and NCBI. |
| 114 | |
| 115 | **Parameters**: |
| 116 | - `ens_ids`: One or more Ensembl IDs (also supports WormBase, Flybase IDs). Limit: ~1000 IDs |
| 117 | - `-n/--ncbi`: Disable NCBI data retrieval |
| 118 | - `-u/--uniprot`: Disable UniProt data retrieval |
| 119 | - `-pdb`: Include PDB identifiers (increases runtime) |
| 120 | |
| 121 | **Returns**: UniProt ID, NCBI gene ID, primary gene name, synonyms, protein names, descriptions, biotype, canonical transcript |
| 122 | |
| 123 | **Examples**: |
| 124 | ```bash |
| 125 | # Get info for multiple genes |
| 126 | gget info ENSG00000034713 |