Skip to content
Agentmart
Submit a tool

download-geo

Download supplementary data files, series matrices, and raw FASTQ links from NCBI GEO for a given GSE series or GSM sample accession.

Skill by Scientific-Tooling

IndexedMIT★ 4
Write a review

Chalk Labs

Need help deploying download-geo?

Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.

Book a call

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/scientific-tooling-download-geo

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Download supplementary data files, series matrices, and raw FASTQ links from NCBI GEO for a given GSE series or GSM sample accession.

Use cases: data

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Shell scripts

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/download-geo

What's inside

Skill name
download-geo
Description
Download supplementary data files, series matrices, and raw FASTQ links from NCBI GEO for a given GSE series or GSM sample accession.
License
MIT
Instructions
96 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts
  • Instructions call the network

Files (6)

  • SKILL.md
  • claude.yaml · agents/
  • openai.yaml · agents/
  • config.yaml
  • geo-ftp.md · references/
  • run.sh · scripts/

SKILL.md (first lines)

# Skill: Download GEO

## Use When

- A user wants to download supplementary files (count matrices, CEL files, processed tables) for a GEO series (GSE) or sample (GSM).
- A user wants to download the series matrix file(s) for a GSE, which contain sample metadata and normalized expression values.
- A user wants to discover and fetch raw FASTQ files linked to a GEO series (which are stored in SRA and require `download-sra`).
- A user wants to bulk-download all supplementary files for a set of GSE accessions.
- A user wants to organize downloaded GEO files by sample or by file type.

## Inputs

- Required:
  - one or more GEO accessions: GSE (series) or GSM (sample)
- Optional:
  - `--type` — what to download: `supplementary` (default), `matrix`, `both`, or `sra-list`
  - `--outdir DIR` — output directory (default: `geo_downloads`)
  - `--filter PATTERN` — glob pattern to select supplementary files (e.g., `"*_counts.txt.gz"`, `"*.CEL.gz"`)
  - `--no-decompress` — keep files compressed (default: leave as-is, do not auto-decompress)
  - `--soft` — also download the full SOFT metadata file for the series
  - `--dry-run` — list files that would be downloaded without fetching them

## Workflow

1. Resolve the GEO FTP base path for the accession:
   - For `GSEnnnnn` where nnn is the numeric part:
     ```
     ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSEnnn/GSEnnnnn/
     ```
   - For `GSEnnnnnnn` (7-digit, prefix = `GSEnnnnnn`):
     ```
     ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSEnnnnnnn/GSEnnnnnnn/
     ```
   - Helper: `PREFIX="${ACC%???}nnn"` — replace last 3 digits with `nnn`.

2. List available files:
   ```bash
   curl -s "https://ftp.ncbi.nlm.nih.gov/geo/series/$PREFIX/$ACC/" 2>/dev/null
   # Or via NCBI GEO query API:
   curl -s "https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=$ACC&targ=self&form=text&view=brief"
   ```

3. Download supplementary files (if `--type supplementary` or `both`):
   ```bash
   wget -r -nH --cut-dirs=5 -np -nd \
     -P "$OUTDIR/$ACC/supplementary/" \
     "https://ftp.ncbi.nlm.nih.gov/geo/series/$PREFIX/$ACC/suppl/"
   ```
   Apply `--filter` pattern if provided.

4. Download series matrix (if `--type matrix` or `both`):
   ```bash
   wget -r -nH --cut-dirs=5 -np -nd \
     -P "$OUTDIR/$ACC/matrix/" \
     "https://ftp.ncbi.nlm.nih.gov/geo/series/$PREFIX/$ACC/matrix/"
   ```

5. Download SOFT file (if `--soft`):
   ```bash
   wget -P "$OUTDIR/$ACC/soft/" \
     "https://ftp.ncbi.nlm.nih.gov/geo/series/$PREFIX/$ACC/soft/"
   ```

6. Extract SRA run accessions for raw FASTQ (if `--type sra-list`):
   ```bash
   esearch -db gds -query "$ACC[Accession]" | elink -target sra | \
     efetch -format runinfo | awk -F',' 'NR>1 && $1!="" {print $1}'
   ```
   Write the SRR list to `$OUTDIR/$ACC/sra_accessions.txt` and instruct the user to run `download-sra` with this file.

7. Report: files downloaded, total size, destination paths. For `sra-list` mode, display the SRR list and the recommended `download-sra` command.

## Output Contract

- Supplementary files under `<outdir>/<GSE>/supplementary/`
- Series matrix files under `<outdir>/<GSE>/matrix/` (plain text, gzip-compressed)
- SOFT file under `<outdir>/<GSE>/soft/` (when `--soft` requested)
- `sra_accessions.txt` under `<outdir>/<GSE>/` (when `--type sra-list` requested, one SRR per line)
- `download_manifest.tsv` listing: `accession`, `file`, `size_bytes`, `url`, `local_path`
- Recommended `download-sra` command when raw FASTQ is needed

## Limits

- GEO FTP is accessible without authentication; no credentials are needed for public data.
- Supplementary files are whatever the submitter uploaded; format and content vary widely (CSV, TSV, CEL, H5AD, RDS, etc.).
- Series matrix files contain processed/normalized data, not raw counts. Raw counts, if available, are usually in supplementary files or in SRA.
- Raw sequencing data (FASTQ) is stored in SRA, not on the GEO FTP. Use `download-sra` with the `sra_accessions.txt` output of this skill to download raw reads.
- Some large GSE series have hundreds of supplementary files totalling many GB; always dry-run first to inspect file sizes.
- GEO does not provide MD5 checksums for supplementary files; integrity verification is not possible for supplementary downloads.
- Common failure cases:
  - FTP path resolution failure because the GSE numeric prefix is computed incorrectly; double-check the `nnn` suffix calculation
  - no supplementary files present (some series only have series matrix and SRA links)
  - wget following symlinks into unintended directories; use `--no-parent` flag
  - series matrix is split across multiple files (one per platform); all will be downloaded automatically

From Scientific-Tooling/structured-intelligence, MIT.

More from Scientific-Tooling/structured-intelligence

Signals

Stars
4
Forks
1
Open issues
0
Last commit (this folder)
Mar 16, 2026 (7 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from Scientific-Tooling

Done for you

Rather not set it up yourself?

Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.

See how we build AI agents →Read the case studies

Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.

launches shipped
50+
launches shipped
media placements
500+
media placements
founders on every account
2
founders on every account

Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block

Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.

Get download-geo running in your business

Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.

Goes to the Chalk Labs founders, not the newsletter. Privacy

Need help deploying download-geo?

CallGet help
Cite this page

download-geo skill. Agent Mart. https://agentmart.dev/skills/scientific-tooling-download-geo (last updated 2026-10-24)