Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add bigbio/sdrf-skills --skill sdrf-metascreengit clone --depth 1 https://github.com/bigbio/sdrf-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/bigbio/sdrf-skills/sdrf-metascreen)<a href="https://agentmods.dev/skills/bigbio/sdrf-skills/sdrf-metascreen"><img src="https://agentmods.dev/badge/skills/bigbio/sdrf-skills/sdrf-metascreen/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/bigbio/sdrf-skills/sdrf-metascreen"><img src="https://agentmods.dev/badge/skills/bigbio/sdrf-skills/sdrf-metascreen.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00087 | $0.05794 |
| Opus 5 | $0.00044 | $0.02897 |
| Sonnet 5 | $0.00017 | $0.01159 |
| Haiku 4.5 | $0.00009 | $0.00579 |
Grade A, and why
sdrf-metascreen scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 495 lines — stays where its author put it; the contents beside it link to each section on GitHub.
SDRF Meta-Analysis Screening Protocol
You are screening datasets before annotation or autoresearch. Your job is to resolve a candidate study set, read repository metadata and the associated publication for each candidate, apply the user's inclusion criteria, extract requested study-level metadata, and write one TSV row per accession.
Do not guess. Use the MCP tools to verify every field.
This skill is complementary to sdrf:autoresearch: run it first when the user
needs a more precise, publication-aware study screen before deciding which
datasets should enter annotation. This skill produces a curation TSV; it does
not create, validate, fix, or improve SDRF files.
The criteria and the extract fields come from the user, not from this file. Nothing here is specific to any one research question — the PRIDE fields named in Step 2 are a worked example of "pre-filter on whatever structured fields the criteria actually constrain", not a fixed list.
Step 1: Parse the Request
Normalize into these fields:
target
What dataset set to screen. Accepted forms:
-
accessions:PXD001234,MSV000078958— use the comma- or whitespace-separated accession list directly. Do not put file paths afteraccessions:. BothPXD…andMSV…are supported;get_project_detailsroutes to the right repository on its own, so no per-accession branching is needed. -
Any file path (
.txt,.tsv,.csv) — resolve automatically by extension:.txt— one accession per line, strip whitespace, skip blank lines.tsv/.csv— read the first available accession column from:id,accession,project_accession,project, or the first column
-
all <category> datasets— usesearch_projectsto discover matching datasets. Examples:all PRIDE human gut metaproteomics datasetsall crosslinking datasetsall human plasma proteomics datasets
search_projectscovers PRIDE and MassIVE together by default. A repository name inside the category phrase ("all PRIDE …") is ordinary habit, not a scoping instruction — search both. Passrepository="pride"or"massive"only when the user is unambiguously scoping to one, e.g. "PRIDE only", "just MassIVE datasets", "skip MassIVE" — phrasing that names the repository as an exclusion, not just in the category sentence.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago Changed · -1 tokens per session 469421d2a3d8
- 11d ago First seen · 495 lines · 88 tokens per session scan A d891409cc780
sdrf-metascreen is a skill published in the GitHub repository bigbio/sdrf-skills (18 stars, last pushed 4d ago), licensed MIT. It adds 87 tokens to every session and 5,794 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
uniprot-query
Query UniProt database for protein sequences, metadata, and search by criteria. Use this skill when: (1) Looking up protein information by UniProt accession ID, (2) Searching proteins by gene name, organism, function, or disease, (3) Retrieving comprehensive protein metadata including domains, PTMs, and annotations.
proteomics-de
Load when computing two-group differential protein abundance (group2 vs group1, log2FC + p-value + BH-adjusted FDR) via Welch t-test, equal-variance t-test, or Mann-Whitney on a wide protein × sample CSV. Skip when you need multi-condition DE (run pairwise contrasts manually); label-based TMT linear-mixed models.
proteomics-enrichment
Load when running over-representation analysis (ORA) on a list of proteins via Fisher's exact test against a built-in 8-pathway DEMO dictionary, with BH-FDR correction. Skip when needing a real pathway database (this skill is demo-only) (use bulkrna-enrichment); rank-based GSEA.
proteomics-ptm
Load when summarising PTM sites (phosphorylation, acetylation, ubiquitination, etc.) from a per-site CSV — site-class assignment (Olsen et al. Class I/II/III by localizationprobability), per-PTM-type counts, amino-acid distribution, sites-per-protein. Skip when raw spectra are the input; you only need protein-level…
proteomics-quantification
Load when computing per-protein abundance from a peptide / PSM table via LFQ (intensity summation), iBAQ (intensity / tryptic peptide count), or spectral counting (PSMs per protein). Skip when the input is already protein-level (use proteomics-ms-qc); label-based TMT / iTRAQ workflows (search upstream first).
proteomics-structural
Load when summarising cross-linking MS (XL-MS) results — intra/inter-protein link split, optional FDR filtering, distance-constraint validation against a per-crosslinker (DSS / BS3 / EDC / DSSO / DSBU) max distance. Skip when raw spectra are the input (run XlinkX / pLink / xiSEARCH first); no XL-MS experiment was…