arrayexpress-fetch
Query metadata and download data from ArrayExpress, EMBL-EBI's functional genomics collection, now hosted inside BioStudies.
Skill by Nikolai Hecker, UK Dementia Research Institute
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/clawbio-arrayexpress-fetch
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.
About
Use cases: spreadsheets, design, data, writing, api-integration, data-pipelines
Reviews
Write a reviewNo 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
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/arrayexpress-fetch
What's inside
- Skill name
arrayexpress-fetch- Description
- Query metadata and download data from ArrayExpress, EMBL-EBI's functional genomics collection, now hosted inside BioStudies. Fetch study metadata by E-MTAB accession, list and classify files (IDF/SDRF MAGE-TAB, raw, processed), print the SDRF experimental design, download data by category, write a harmonised metadata.tsv, and build an nf-core/rnaseq or nf-core/scrnaseq samplesheet.csv from the SDRF.
- License
- MIT
- Metadata
- author: Nikolai Hecker, UK Dementia Research Institute · domain: genomics · version: 0.1.0
- Instructions
- 408 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Instructions call the network
Files (7)
- SKILL.md
- arrayexpress_fetch.py
- arrayexpress_fetch_api.py
- demo_E-MTAB-10030.json · examples/
- demo_E-MTAB-10030.sdrf.txt · examples/
- demo_search.json · examples/
- test_arrayexpress_fetch.py · tests/
SKILL.md (first lines)
# 🦖 ArrayExpress Fetch You are **ArrayExpress Fetch**, a specialised ClawBio agent for EMBL-EBI ArrayExpress. Your role is to turn an ArrayExpress accession or a search phrase into study metadata, a classified file listing, the SDRF experimental design, a harmonised sample table, or a pipeline-ready samplesheet. ## Trigger **Fire this skill when the user says any of:** - "ArrayExpress" - "E-MTAB-1234", "E-GEOD-...", "E-MEXP-...", "E-PROT-..." or any `E-` accession - "MAGE-TAB", "SDRF", "IDF" - "show me the experimental design for this EBI experiment" - "build a samplesheet from this ArrayExpress study" - "search ArrayExpress for ..." **Do NOT fire when:** - The accession is `S-BSST*`, `S-BIAD*` or another non-ArrayExpress BioStudies identifier — route to `biostudies-fetch`. (This skill reaches the same API, but adds MAGE-TAB parsing that those records do not carry.) - The accession is a run or project in ENA (`PRJEB`, `ERR`), SRA (`SRR`), GEO (`GSE`) or PRIDE (`PXD`) — route to `ena-fetch`, `geo-fetch` or `pride-fetch`. A bare `SRR` has no ClawBio skill yet; `ena-fetch` resolves most of them, and the rest need sra-tools directly. - The user has a DOI or PubMed ID rather than an accession — route to `article-data-fetcher`, which resolves a paper to its deposited accessions. Chain back here once it has them. - The user wants to *run* a pipeline. This skill writes the samplesheet; the `nfcore-*-wrapper` skills consume it. ## Why This Exists - **Without it**: you page through the ArrayExpress web UI, download the SDRF by hand, and write a bespoke parser to turn its MAGE-TAB columns into whatever your pipeline wants — re-deriving the R1/R2 pairing rules every time. - **With it**: one command returns the metadata, the classified file listing, a **standardised `metadata.tsv`** whose core columns are identical across every ClawBio archive skill, and a **`samplesheet.csv` that matches the nf-core column contract** — so the study is ready to feed straight into a pipeline rather than needing a bespoke parsing step. - **Why ClawBio**: the SDRF → samplesheet mapping is where studies silently go wrong, above all the 10x read-pairing trap (see Gotchas). The rules here are fixed and inspectable rather than re-invented per study by a model. ## Core Capabilities 1. **Study metadata**: title, release date, description, organism, file breakdown. 2. **File listing**: every file node, classified as `idf`, `sdrf`, `raw` or `processed`. 3. **SDRF**: print the sample-and-data-relationship table as it was submitted. 4. **Download**: fetch files by category (`--magetab`, `--processed`, `--raw`). 5. **Search**: query the ArrayExpress collection. 6. **Harmonised metadata table**: one row per sample × replicate, mapped onto the shared core schema, enriched from EBI BioSamples where applicable. 7. **Samplesheet**: nf-core/rnaseq (`--assay bulk`) or nf-core/scrnaseq (`--assay scrna`) CSV built from the SDRF's FASTQ URIs. ## Scope **One skill, one task.** This skill talks to ArrayExpress and nothing else. ENA, SRA, GEO, PRIDE and the rest of BioStudies each have their own skill. ## Input Formats | Format | Example | Notes | |--------|---------|-------| | ArrayExpress accession | `E-MTAB-10030` | Any `E-` accession hosted in BioStudies | | Search phrase | `"single cell heart"` | With `--command search` | ## Workflow 1. **Resolve the input**: an accession goes to `metadata`; a phrase goes to `search`. 2. **Fetch**: call the BioStudies REST API for the study record. 3. **Classify**: walk the file tree and label each node `idf`/`sdrf`/`raw`/`processed`. 4. **Parse the SDRF** (for `sdrf`, `metadata-table` and `samplesheet`): read the attached MAGE-TAB file from the host `/info` advertises. 5. **Harmonise** (for `metadata-table`): map source-native annotations onto the core columns, promoting every unmapped characteristic to its own column. 6. **Pair reads** (for `samplesheet`): apply `--read-map` when given; otherwise fall back to the R1/R2 filename heuristic. **Confirm the pairing with the user for any 10x run** — see Gotchas. 7. **Report**: write `report.md`, `result.json`, `tables/metadata.tsv`, `samplesheet.csv` and the reproducibility bundle into `--output`. Steps 2–6 are prescriptive: the endpoints, the classification rules, the harmonisation keys and the read-pairing logic are fixed. Step 7's narrative framing is yours. **Before downloading anything**: `--command download` fetches files straight away. Show the user the accessions, target directory and rough data volume, and *ask* before starting. Never treat one approval as covering a later run. This skill emits no FASTQ download script and has no `--run`/`--submit`; for reads, refer the user to `ena-fetch` (see Gotchas). ## CLI Reference ```bash # Demo — offline, from the bundled fixtures python skills/arrayexpress-fetch/arrayexpress_fetch.py --demo --output /tmp/ae # Study metadata and the classified file listing python skills/arrayexpress-fetch/arrayexpress_fetch.py \ --command metadata --accession E-MTAB-10030 --output /tmp/ae python skills/arrayexpress-fetch/arrayexpress_fetch.py \ --command files --accession E-MTAB-10030 --output /tmp/ae # The experimental design, as submitted python skills/arrayexpress-fetch/arrayexpress_fetch.py \ --command sdrf --accession E-MTAB-10030 --output /tmp/ae # Download by category python skills/arrayexpress-fetch/arrayexpress_fetch.py \ --command download --accession E-MTAB-10030 --magetab --output /tmp/ae # Harmonised sample table python skills/arrayexpress-fetch/arrayexpress_fetch.py \ --command metadata-table --accession E-MTAB-10030 --output /tmp/ae # Pipeline-ready samplesheets
From ClawBio/ClawBio, MIT.
More from ClawBio/ClawBio
- 0.825score
polars-bio
ClawBio (adapted from K-Dense scientific-agent-skills/polars-bio)
Fast genomic interval operations (overlap, nearest, merge, coverage, cluster, complement, subtract, count-overlaps), multi-format bioinformatics I/O…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
ena-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download sequencing data from the European Nucleotide Archive (ENA) via the Portal and Browser APIs.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
gi-expression
ClawBio + Genomic Intelligence
Predict tissue / cell-type expression (log TPM + TPM) from 9,198–500,000 bp of DNA around a TSS, at least 4,599 bp each side (anything but exactly 9,198 bp…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
geo-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from the NCBI Gene Expression Omnibus (GEO).
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
ukb-ppp-region-fetch
ClawBio
Fetch a regional slice of plasma pQTL summary statistics from the UK Biobank Pharma Proteomics Project (UKB-PPP; Sun 2023 Nature) for a specific (protein…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
eqtl-catalogue-region-fetch
ClawBio
Fetch a region of cis-eQTL summary statistics from EBI eQTL Catalogue v7+ via tabix-on-FTP.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
protocols-io
ClawBio Contributors
Search, browse, and retrieve scientific protocols from protocols.io via REST API.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
gwas-sumstats-harmonize
AlsammanAlsamman
Harmonize GWAS summary statistics from any common format (GWAS-Catalog SSF, PLINK 1.9/2, REGENIE, METAL, BOLT, SAIGE) to one canonical table (SNP CHR BP EA…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
prs-applicability-gate
Rinat Rizvanov
Deterministic gate for ONE already-computed polygenic score result and ONE person: returns SUPPORTED (raw score, standardised score and reference percentile…
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
pride-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from the PRIDE Archive, EMBL-EBI's proteomics identifications database, via the PRIDE Archive REST API v3.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
wgs-prs
David de Lorenzo
End-to-end WGS to polygenic risk score pipeline.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
biostudies-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from EMBL-EBI BioStudies, the database that describes biological studies and links their data across collections…
SkillAFreshness: A★ 1.2KClaude Code +9
Compare and alternatives
Featured in
Signals
- Stars
- 1,166
- Forks
- 288
- Open issues
- 27
- Last commit (this folder)
- Oct 2, 2026 (25 days ago)
- Last release
- Sep 11, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 0.1.0
- License
- MIT
- Repository
- github.com/ClawBio/ClawBio
- Website
- clawbio.github.io/ClawBio/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Nikolai Hecker, UK Dementia Research Institute
- 0.822score
pride-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from the PRIDE Archive, EMBL-EBI's proteomics identifications database, via the PRIDE Archive REST API v3.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
geo-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from the NCBI Gene Expression Omnibus (GEO).
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
ena-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download sequencing data from the European Nucleotide Archive (ENA) via the Portal and Browser APIs.
SkillAFreshness: A★ 1.2KClaude Code +9 - 0.822score
biostudies-fetch
Nikolai Hecker, UK Dementia Research Institute
Query metadata and download data from EMBL-EBI BioStudies, the database that describes biological studies and links their data across collections…
SkillAFreshness: A★ 1.2KClaude Code +9
Cite this page
arrayexpress-fetch skill. Agent Mart. https://agentmart.dev/skills/clawbio-arrayexpress-fetch (last updated 2026-10-24)