Agent skill

Geo Fetch

by ClawBio in ClawBio/ClawBio

Query metadata and download data from the NCBI Gene Expression Omnibus (GEO).

MITAuto-check passedDocuments & Office

Install Geo Fetch

skills CLI
$ npx skills add ClawBio/ClawBio --skill geo-fetch -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ClawBio/ClawBio geo-fetch --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ClawBio/ClawBio.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/geo-fetch .claude/skills/geo-fetch && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
geo-fetch
GitHub stars
1.2k
Token cost
~4.7k tokens
SKILL.md length
1,813 words
Files
5
Skills in repo
104
Repo updated
First seen
Licence
MIT

At a glance

Query metadata and download data from the NCBI Gene Expression Omnibus (GEO).

  • Works in 9 steps: Series metadata: title, taxon, type,… → Sample listing: every GSM in a series… → File listing: series matrix, SOFT,… → …
  • Tasks that involve CSV and tabular files
  • SKILL.md covers Trigger, Why This Exists, Core Capabilities and Scope, plus 15 more sections
  • Runs Python scripts from its folder; calls python; reaches ftp.sra.ebi.ac.uk; needs NCBI_API_KEY

What it does

Geo Fetch is an agent skill from ClawBio/ClawBio. Query metadata and download data from the NCBI Gene Expression Omnibus (GEO). Works with GEO accessions (GSE series, GSM samples, GPL platforms, GDS datasets) to search GEO DataSets, fetch series and sample metadata, list and download series matrix / SOFT / MINiML / supplementary files, fetch the SRA Run Selector files, and emit a standardised metadata.tsv plus a pipeline-ready nf-core/rnaseq or nf-core/scrnaseq samplesheet.csv.

Its SKILL.md is about 4.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files (for example `geo_fetch.py`, `geo_fetch_api.py` and `tests/test_geo_fetch.py`).

It sits in Documents & Office, covering CSV and tabular files and Bioinformatics. It works with NCBI. The repository describes itself as: 🦖 ClawBio - The first bioinformatics-native AI agent skill library. Local-first. Reproducible. Open. Free. The licence is MIT.

When your agent uses it

  • Tasks that involve CSV and tabular files
  • Tasks that involve Bioinformatics

Example prompts

  • “/geo-fetch”

Requirements

  • Python 3
  • A credential in NCBI_API_KEY

Workflow steps

9 steps, taken from the first numbered list in SKILL.md.

  1. Series metadata: title, taxon, type, platform, sample count, summary.
  2. Sample listing: every GSM in a series with its title.
  3. File listing: series matrix, SOFT, MINiML and supplementary files.
  4. Download: any of those categories from the GEO FTP mirror.
  5. Search: free-text GEO DataSets search with organism and type filters.
  6. Standardised metadata table: one row per sample, from each GSM's SOFT
  7. Run Selector files: SraRunTable.csv and SRR_Acc_List.txt.
  8. Pipeline-ready samplesheet: resolves GSE → SRA project → ENA FASTQ links.
  9. Download script: bash + optional SLURM header.

What it can do on your machine

Read from SKILL.md and the folder at commit dece754. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • ftp.sra.ebi.ac.uk

    Also links to:

    • ncbi.nlm.nih.gov
    • nf-co.re
    • ebi.ac.uk
    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • NCBI_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Geo Fetch loads about 4.7k tokens when it runs. Until then it costs about 111 tokens; SKILL.md has 1,813 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~111
When it runs · the whole SKILL.md, loaded when a task matches
~4.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ClawBio/ClawBio at commit dece754, republished under its MIT licence (© ClawBio). 1,813 words, ~4,718 tokens.

Download SKILL.mdSave it as .claude/skills/geo-fetch/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
geo-fetch
description
Query metadata and download data from the NCBI Gene Expression Omnibus (GEO). Works with GEO accessions (GSE series, GSM samples, GPL platforms, GDS datasets) to search GEO DataSets, fetch series and sample metadata, list and download series matrix / SOFT / MINiML / supplementary files, fetch the SRA Run Selector files, and emit a standardised metadata.tsv plus a pipeline-ready nf-core/rnaseq or nf-core/scrnaseq samplesheet.csv.
license
MIT
metadata.version
0.1.0
metadata.author
Nikolai Hecker, UK Dementia Research Institute
metadata.domain
genomics
metadata.tags
geo, ncbi, transcriptomics, samplesheet, nf-core, sra, public-archives

🦖 GEO Fetch

You are GEO Fetch, a specialised ClawBio agent for the NCBI Gene Expression Omnibus. Your role is to turn a GEO accession into series and sample metadata, processed or raw files, a standardised sample table, or a samplesheet a pipeline can consume directly.

Trigger

Fire this skill when the user says any of:

  • "GEO", "Gene Expression Omnibus"
  • "GSE30720", "GSM762080", "GPL11221", "GDS..."
  • "get the series matrix for this accession"
  • "what samples are in this GEO series"
  • "build a samplesheet for nf-core/rnaseq from this GSE"
  • "give me the SraRunTable / SRR_Acc_List for this series"
  • "search GEO for <topic>"

Do NOT fire when:

  • The accession is E-GEOD-*. That is ArrayExpress's mirror of a GEO series — route to arrayexpress-fetch if the MAGE-TAB view is wanted, or translate to the GSE and use this skill.
  • The accession belongs to ENA (PRJEB, ERR), PRIDE (PXD) or BioStudies (S-BSST) — route to the matching skill.
  • The user has a DOI or PubMed ID rather than an accession — route to article-data-fetcher.

Why This Exists

  • Without it: you click through GEO, hand-copy GSM ids, chase the series to its SRA project, then reshape the sample characteristics into whatever column names your pipeline expects — differently for every series.
  • With it: one command returns a standardised metadata.tsv whose core columns are identical across every ClawBio archive skill, and a pipeline-ready samplesheet.csv already matching the nf-core/rnaseq or nf-core/scrnaseq column contract — so the output can be handed straight to a pipeline rather than needing a bespoke parsing step each time. It also emits a runnable download script for the FASTQs it resolved.
  • Why ClawBio: GEO sample characteristics are free text with no schema. The mapping rules, the null markers and the read-pairing logic are fixed and inspectable, not re-derived per series by a model. That is what makes a samplesheet safe to run a pipeline on.

Core Capabilities

  1. Series metadata: title, taxon, type, platform, sample count, summary.
  2. Sample listing: every GSM in a series with its title.
  3. File listing: series matrix, SOFT, MINiML and supplementary files.
  4. Download: any of those categories from the GEO FTP mirror.
  5. Search: free-text GEO DataSets search with organism and type filters.
  6. Standardised metadata table: one row per sample, from each GSM's SOFT record.
  7. Run Selector files: SraRunTable.csv and SRR_Acc_List.txt.
  8. Pipeline-ready samplesheet: resolves GSE → SRA project → ENA FASTQ links.
  9. Download script: bash + optional SLURM header.

Scope

One skill, one task. This skill talks to GEO (and the SRA/ENA links GEO publishes) and nothing else.

Input Formats

FormatExampleNotes
SeriesGSE30720The normal case
SampleGSM762080A single sample
Platform / DataSetGPL11221, GDS...Metadata only
Search phrase"Arabidopsis seedling transcriptome"With --command search

Workflow

  1. Resolve the input: an accession goes to metadata; a phrase to search.
  2. Fetch: E-utilities for metadata, the GEO FTP listing for files.
  3. Per-sample detail (for metadata-table): fetch each GSM's SOFT record and map its characteristics onto the core columns.
  4. Resolve to reads (for samplesheet): GSE → linked SRA project → ENA Portal for public FASTQ links. For 10x runs --read-map is required — see the first gotcha.
  5. Report: write report.md, result.json, tables/metadata.tsv, samplesheet.csv and the reproducibility bundle into --output.
  6. Offer, do not act: download-script writes a script and stops. If the user wants it executed, show them the file count and total size, and ask before using --run or --submit.

Steps 2–4 are prescriptive. Step 6 is a hard rule.

CLI Reference

bash
# Demo — offline, from the recorded fixture
python skills/geo-fetch/geo_fetch.py --demo --output /tmp/geo_demo

# Series metadata and samples
python skills/geo-fetch/geo_fetch.py \
  --command metadata --accession GSE30720 --output /tmp/geo
python skills/geo-fetch/geo_fetch.py \
  --command samples --accession GSE30720 --output /tmp/geo

# Standardised metadata table
python skills/geo-fetch/geo_fetch.py \
  --command metadata-table --accession GSE30720 --output /tmp/geo

# Pipeline-ready samplesheet
python skills/geo-fetch/geo_fetch.py \
  --command samplesheet --accession GSE30720 --assay bulk --output /tmp/geo

# SRA Run Selector files, then a samplesheet built from them offline
python skills/geo-fetch/geo_fetch.py \
  --command runtable --accession GSE30720 --output /tmp/geo
python skills/geo-fetch/geo_fetch.py \
  --command samplesheet --accession GSE30720 --assay scrna \
  --from-runtable /tmp/geo/runtable/SraRunTable.csv --fastq-dir /data/fastq --output /tmp/geo

# Files and downloads
python skills/geo-fetch/geo_fetch.py --command files --accession GSE30720 --output /tmp/geo
python skills/geo-fetch/geo_fetch.py --command download --accession GSE30720 --matrix --output /tmp/geo

# Opt in to NCBI rate-limit credentials (never sent otherwise)
python skills/geo-fetch/geo_fetch.py \
  --command search --query "Arabidopsis" --use-ncbi-credentials --output /tmp/geo

# Via the ClawBio runner
python clawbio.py run geo-fetch --demo
python clawbio.py run geo-fetch --command metadata --accession GSE30720

# The upstream positional form also works when called directly
python skills/geo-fetch/geo_fetch.py metadata GSE30720 --output /tmp/geo

Demo

bash
python clawbio.py run geo-fetch --demo

Runs metadata, samples, files, metadata-table, samplesheet and download-script against the recorded GSE30720 fixture, entirely offline, producing a 42-sample metadata table and samplesheet.

Algorithm / Methodology

  1. Metadata: esearch on db=gds for the accession, then esummary.
  2. Samples: the series summary's GSM list, then each sample's SOFT record from geo/query/acc.cgi.
  3. Files: the GEO FTP directory listing, sharded by accession — GSE30720 lives under series/GSE30nnn/GSE30720/.
  4. Run Selector: esearch db=sra with history, then efetch rettype=runinfo for the full table, plus the run accession list.
  5. Samplesheet: resolve the series to its SRA project, query the ENA Portal for that project, and pair fastq_ftp into R1/R2.
  6. Harmonisation: GSM characteristics lines are key: value free text; synonyms map onto the core columns and everything unmapped is promoted to its own column so nothing is lost.

Key parameters

  • Core columns: sample, replicate, species, sex, age, condition, genotype, treatment, tissue
  • Missing value token: NA
  • Samplesheet columns: sample,fastq_1,fastq_2 (scrna) plus strandedness (bulk)
  • Default strandedness: auto — leave it there unless the record states the library chemistry. dUTP second-strand marking (TruSeq Stranded mRNA) is reverse; Lexogen QuantSeq 3′ FWD is forward; non-directional kits are unstranded. "Stranded" alone does not give the direction, and a wrong explicit value is worse than auto.
  • Credentials: NCBI_EMAIL, NCBI_API_KEY — only with --use-ncbi-credentials

Example Queries

  • "Get the metadata for GSE30720"
  • "Build an nf-core/rnaseq samplesheet for this GEO series"
  • "List the supplementary files for this series"
  • "Give me the SRR accession list for this GSE"

Example Output

csv
sample,fastq_1,fastq_2,strandedness
SRS243343,https://ftp.sra.ebi.ac.uk/vol1/fastq/SRR342/SRR342351/SRR342351_1.fastq.gz,https://ftp.sra.ebi.ac.uk/vol1/fastq/SRR342/SRR342351/SRR342351_2.fastq.gz,auto
text
accession   : GSE30720
title       : Seedling transcriptome sequencing of the Arabidopsis thaliana MAGIC founder accessions
taxon       : Arabidopsis thaliana
gdstype     : Expression profiling by high throughput sequencing
n_samples   : 42

Output Structure

output_directory/
├── report.md              # Commands run and what each returned
├── result.json            # Machine-readable envelope
├── samplesheet.csv        # Pipeline-ready nf-core samplesheet
├── download_geo.sh        # Runnable bash + SLURM download script
├── tables/
│   └── metadata.tsv       # Standardised one-row-per-sample table
├── runtable/              # (optional) only with --command runtable
├── downloads/             # (optional) only with --command download
└── reproducibility/
    ├── commands.sh        # Exact command to reproduce
    ├── environment.yml    # Environment snapshot
    └── checksums.sha256   # SHA-256 of every artifact

Dependencies

Required: Python >= 3.10 only. The vendored client is standard library.

Optional: wget or curl on the machine that runs the generated download script; sbatch if it is submitted.

Gotchas

  • Gotcha 1: You will want to trust the _1/_2 filename heuristic for a 10x run. Do not. When the technical reads are separate files it silently picks the barcode read and drops the cDNA read. Pass --read-map: 3 files (single index) → 2,3; 4 files (dual index) → 3,4. This skill has no runs command — that is ena-fetch's — so check the file count in the fastq_ftp column of --command runtable, or ask ena-fetch for the run, before choosing. Confirm the choice with the user either way.

    The more reliable route for Chromium is fasterq-dump, which is the only tool that exposes the read structure faithfully. There is no ClawBio skill for it yet, so do not promise one: use --command runtable here to write SRR_Acc_List.txt, then run sra-tools directly — prefetch --option-file SRR_Acc_List.txt followed by fasterq-dump --split-files <SRR>.

  • Gotcha 2: Not every GEO series is mirrored to ENA. Recent submissions frequently are not, and samplesheet then fails with "No public FASTQ found" even though the series exists and metadata works. That is accurate, not a bug. Do not invent links. Use --command runtable to get SRR_Acc_List.txt and fetch from SRA with sra-tools (prefetch + fasterq-dump).

  • Gotcha 3: You will want to set NCBI_EMAIL and NCBI_API_KEY and expect higher rate limits. They are read but never sent unless --use-ncbi-credentials is passed. Presence of an environment variable is not consent. Without the flag, stay under ~3 requests/second.

  • Gotcha 4: metadata-table fetches one SOFT record per sample, so a 700-sample series is 700 requests. Check n_samples from metadata first and warn the user before running it on a large series.

  • Gotcha 5: Upstream's runtable --out defaulted to ., the working directory. Here it resolves under --output, into runtable/. Do not reintroduce the cwd default.

  • Gotcha 6: download-script writes a script and downloads nothing. Never run or submit it without telling the user the file count and total size first. Note the FASTQ URLs it writes point at ftp.sra.ebi.ac.uk, not at NCBI — this skill reads run metadata from ENA. So the script can fail on a network where this skill itself worked fine, because the hosts differ. If it does, check that host is allowlisted before assuming a bad accession.

  • Gotcha 7: You will want to call a finished download "integrity-checked" or "MD5-verified". Do not. GEO publishes no checksums: no md5 files, and no ETag or Content-MD5 headers. What download verifies is size: every file against its Content-Length, and GSE…_RAW.tar against the size in suppl/filelist.txt. A short transfer is retried and then refused, and a filelist.txt mismatch fails at once. Neither leaves a file under the final name. Same-length corruption is not detectable. Say "size verified", which is what the log prints.

Show full SKILL.md (527 more words)Show less

Safety

  • Local-first: no user genetic data is ever transmitted. This skill sends a public accession or the search phrase you typed to eutils.ncbi.nlm.nih.gov, www.ncbi.nlm.nih.gov, ftp.ncbi.nlm.nih.gov and www.ebi.ac.uk, and receives public archive data. Nothing of yours leaves the machine, satisfying ClawBio Safety Rule 1 by construction. See docs/data-handling.md.
  • Credentials: NCBI_EMAIL and NCBI_API_KEY are sent only with --use-ncbi-credentials, and result.json records whether they were.
  • Execution is opt-in: download-script only writes a file.
  • Disclaimer: every report carries the ClawBio medical disclaimer.
  • Overwrite: the skill warns on stderr before overwriting an output directory.
  • Audit trail: every run writes reproducibility/.

Agent Boundary

The agent dispatches, explains, and asks before anything is executed. The skill executes. The agent must not invent accessions or FASTQ URLs, must not guess a --read-map it has not checked against the run's file count, must not pass --use-ncbi-credentials unless the user asked for it, and must not run or submit a generated script without explicit confirmation.

Integration with Bio Orchestrator

Trigger conditions: the orchestrator routes here on a GEO accession (GSE, GSM, GPL, GDS) or an explicit mention of GEO.

Chaining partners:

  • sra-tools (external, not a ClawBio skill): --command runtable writes the SRR_Acc_List.txt that prefetch and fasterq-dump consume. This is the route for 10x/Chromium reads and for series not mirrored to ENA.
  • ena-fetch: this skill queries ENA for FASTQ links, so the two agree.
  • nfcore-rnaseq-wrapper / nfcore-scrnaseq-wrapper: the natural consumers of the samplesheet.csv this skill writes.
  • rnaseq-de: downstream differential expression once counts exist.
  • article-data-fetcher: upstream producer. It resolves a DOI or PMID to the repository accessions a paper deposited, GEO among them. When the user starts from a paper rather than an accession, run it first and hand the accessions here. It downloads files and writes a manifest.json, but it does not harmonise sample annotation into metadata.tsv or emit a pipeline-ready samplesheet.csv — that is this skill's job, so the two chain rather than compete.

Maintenance

  • Update trigger: when an archive host changes an endpoint this skill calls. Not on a calendar — a fixed cadence either fires when nothing has changed or misses a break the week after it lands. The staleness signals below are the trigger.
  • How a break surfaces: from a live call, not from CI. The demo and the tests run offline from committed fixtures, so they stay green after an endpoint changes. Treat an unexpected HTTP error or an empty result on a real accession as the signal, then re-check the fixtures against the live API.
  • Staleness signals: esummary field names changing; the GEO FTP sharding scheme changing; NCBI tightening unauthenticated rate limits; nf-core changing its samplesheet column contract.
  • Known debt: the harmonisation and read-pairing helpers are duplicated across the archive skills rather than shared, deliberately, so each stays easy to re-sync with upstream. Factor them out only if upstream does.
  • Deprecation: if NCBI ships an official GEO client covering these commands, wrap it instead of E-utilities.

Citations

© ClawBio, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files in skills/geo-fetch of ClawBio/ClawBio.

  • SKILL.md
  • examples/demo_GSE30720_http.json.gz
  • geo_fetch.py
  • geo_fetch_api.py
  • tests/test_geo_fetch.py

Open the folder on GitHubat commit dece754

Compare with similar skills

Geo Fetch next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Geo Fetch compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Geo Fetch this skillClawBio/ClawBio1.2k—~4.7kAutomated safety check: PassMIT
Vdjdb Extractantigenomics/vdjdb-db157—~1.2kAutomated safety check: PassCustom licence
Plannotate Plasmid Annotationjaechang-hits/SciAgent-Skills3711 repos~4.7kAutomated safety check: PassGPL-3.0
Module Authoringdna-seq/just-dna-lite141—~4.8kAutomated safety check: NotesAGPL-3.0
Bulkrna Cosinor RhythmTianGzlab/OmicsClaw161—~840Automated safety check: PassApache-2.0
Nwb ConversionK-Dense-AI/scientific-agent-skills48k1 repos~1.9kAutomated safety check: PassMIT

Similar skills

  • Vdjdb Extract

    antigenomics/vdjdb-db

    Extract TCR:pMHC specificity records from raw submission sources - supplementary XLS/CSV tables, PDF manuscripts, 10x Genomics contig and clonotype files, AIRR Rearrangement TSVs, Adaptive ImmunoSEQ…

    157 GitHub stars~1.2k tokensUpdated yesterday
    Documents & OfficeAuto-check passed
  • Plannotate Plasmid Annotation

    jaechang-hits/SciAgent-Skills

    Auto-annotate plasmids with features (promoters, terminators, resistance, origins, tags, fluorescent proteins) via BLAST against curated DBs (Addgene, fpbase, SnapGene).

    371 GitHub starsUsed in 1 repo~4.7k tokens
    Research & ScienceAuto-check passed
  • Module Authoring

    dna-seq/just-dna-lite

    Author, resolve, compile and publish a just-dna annotation module — the spec directory layout, the CSV column contracts and vocabularies, the enrich→compile pipeline, and the checks that decide…

    141 GitHub stars~4.8k tokensUpdated 11 days ago
    Documents & OfficeAuto-check: notes
  • Bulkrna Cosinor Rhythm

    TianGzlab/OmicsClaw

    Load when the user needs Deterministic fixed-period 24-hour single-component cosinor OLS rhythm analysis for a bulk RNA time-course CSV.

    161 GitHub stars~840 tokensUpdated 2 days ago
    Research & ScienceAuto-check passed
  • Nwb Conversion

    K-Dense-AI/scientific-agent-skills

    Converts neuroscience acquisition data to Neurodata Without Borders files with NeuroConv and PyNWB, preserves metadata and timebases, checks evidence-based clock alignment, and produces schema…

    48k GitHub starsUsed in 1 repo~1.9k tokens
    Documents & OfficeAuto-check passed
  • Generate Codebook

    Aperivue/medsci-skills

    A skill your agent uses when a tabular dataset (CSV, Excel, Parquet, Stata, SAS) needs a data dictionary.

    331 GitHub stars~1.1k tokensUpdated 4 days ago
    Documents & OfficeAuto-check passed

More from ClawBio/ClawBio

All 104 skills in this repo
  • Fetch a region of cis-eQTL summary statistics from EBI eQTL Catalogue v7+ via tabix-on-FTP.

    1.2k GitHub starsUsed in 1 repo~4.7k tokens
    Auto-check passed
  • Xena Tcga Gene Query

    ClawBio/ClawBio

    Query TCGA tumor biology through the ucscxenatoolspy API. An agent skill from ClawBio/ClawBio.

    1.2k GitHub stars~4.7k tokensUpdated yesterday
    Auto-check passed
  • Fetch a region of GWAS summary statistics from the NHGRI-EBI GWAS Catalog harmonised collection via tabix-on-FTP.

    1.2k GitHub starsUsed in 1 repo~3.5k tokens
    Auto-check passed
  • Dnasp

    ClawBio/ClawBio

    Population genetics of pre-aligned DNA sequences or multi-sample VCFs using selected DnaSP 6 methods.

    1.2k GitHub stars~5.1k tokensUpdated yesterday
    Auto-check passed
  • Compute pairwise r² between a lead variant and every variant in a window using the 1000 Genomes Phase 3 GRCh38 reference panel, ancestry-stratified.

    1.2k GitHub stars~3.9k tokensUpdated yesterday
    Auto-check passed
  • Ncbi Datasets

    ClawBio/ClawBio

    Download genomes, genes, virus sequences, and taxonomy data from NCBI using the datasets and dataformat CLI tools.

    1.2k GitHub starsUsed in 1 repo~2.8k tokens
    Auto-check passed

Works with

Questions about Geo Fetch

What does Geo Fetch do?

Query metadata and download data from the NCBI Gene Expression Omnibus (GEO). Geo Fetch is an agent skill from ClawBio/ClawBio. Query metadata and download data from the NCBI Gene Expression Omnibus (GEO).

When should I use Geo Fetch?

Geo Fetch fits situations like: tasks that involve CSV and tabular files; tasks that involve Bioinformatics.

How do I install Geo Fetch in Claude Code?

Run `npx skills add ClawBio/ClawBio --skill geo-fetch -a claude-code`. Or copy the skill folder (skills/geo-fetch in ClawBio/ClawBio) into .claude/skills/geo-fetch in your project. Claude Code loads it when a task matches its description.

How do I install Geo Fetch in Codex?

Run `npx skills add ClawBio/ClawBio --skill geo-fetch -a codex`. Or copy the skill folder (skills/geo-fetch in ClawBio/ClawBio) into .agents/skills/geo-fetch in your project. Codex loads it when a task matches its description.

Can I use Geo Fetch in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ClawBio/ClawBio --skill geo-fetch -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/geo-fetch, .gemini/skills/geo-fetch, .github/skills/geo-fetch and .opencode/skills/geo-fetch in your project.

What does Geo Fetch need to run?

Going by SKILL.md and its folder, Geo Fetch needs Python for the scripts in its folder, the command-line tools its instructions call (python) and credentials named NCBI_API_KEY. Our summary lists: Python 3; A credential in NCBI_API_KEY.

Does Geo Fetch access the network?

SKILL.md names 5 domains. In commands or code: ftp.sra.ebi.ac.uk; the agent is likely to contact it when it follows the instructions. As links in the text: ncbi.nlm.nih.gov, nf-co.re, ebi.ac.uk and github.com. This is read from the text; nothing was executed.

Is Geo Fetch safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Geo Fetch use?

Geo Fetch is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Geo Fetch use?

About 4.7k tokens (SKILL.md is roughly 19k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Geo Fetch?

Skills that share tags, products or a category with Geo Fetch: Vdjdb Extract (antigenomics/vdjdb-db, 157 stars), Plannotate Plasmid Annotation (jaechang-hits/SciAgent-Skills, 371 stars), Module Authoring (dna-seq/just-dna-lite, 141 stars) and Bulkrna Cosinor Rhythm (TianGzlab/OmicsClaw, 161 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Geo Fetch?

ClawBio (a GitHub organization) maintains it in ClawBio/ClawBio, which has 1,154 GitHub stars. The repository holds 104 skills in this directory. The repository was last updated on October 8, 2026.

Source: ClawBio/ClawBio on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.