Scientific Agent Skills is a collection of reusable procedures that give AI agents capabilities for scientific research across areas such as biology, chemistry, medicine, and drug discovery. It is used by researchers and by people building AI scientist workflows with compatible coding agents. The catalogue contains many of the project's skills and supporting instructions.
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 K-Dense-AI/scientific-agent-skills --skill paper-lookupgit clone --depth 1 https://github.com/K-Dense-AI/scientific-agent-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/k-dense-ai/scientific-agent-skills/paper-lookup)<a href="https://agentmods.dev/skills/k-dense-ai/scientific-agent-skills/paper-lookup"><img src="https://agentmods.dev/badge/skills/k-dense-ai/scientific-agent-skills/paper-lookup/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/k-dense-ai/scientific-agent-skills/paper-lookup"><img src="https://agentmods.dev/badge/skills/k-dense-ai/scientific-agent-skills/paper-lookup.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Socket pass
- Snyk warn
- NVIDIA SkillSpector warn
SkillSpector: 5 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Supply Chain · line 185 Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.Fix: Avoid downloading and executing remote scripts. Use trusted packages from PyPI/npm. If remote fetch is required, verify checksums and use HTTPS.
- high Supply Chain · line 189 Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.Fix: Avoid downloading and executing remote scripts. Use trusted packages from PyPI/npm. If remote fetch is required, verify checksums and use HTTPS.
- high Supply Chain · line 192 Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.Fix: Avoid downloading and executing remote scripts. Use trusted packages from PyPI/npm. If remote fetch is required, verify checksums and use HTTPS.
- medium Data Exfiltration · line 137 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
- medium Data Exfiltration · line 192 Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
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.00198 | $0.06271 |
| Opus 5 | $0.00099 | $0.03136 |
| Sonnet 5 | $0.00040 | $0.01254 |
| Haiku 4.5 | $0.00020 | $0.00627 |
Grade C, and why
paper-lookup scanned grade C with 2 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 today.
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.
Downloads and executes remote codehighSupply chain
curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.
curl -s "https://export.arxiv.org/api/query?id_list=1706.03762" | python3 scripts/arxiv_atom.py - Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
compatibility: Needs network access and curl. The bundled scripts require Python 3.11+ and use only the standard library. No credentials are required; NCBI_API_KEY, S2_API_KEY, CORE_API_KEY, and OPENALEX_API_KEY raise ra How it starts
The opening of the file, as written. The whole thing — 304 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Paper Lookup
This skill gives you 18 scholarly APIs with documented endpoints. Your job is to turn the user's intent into a reproducible retrieval: pick the authoritative database(s), make bounded and rate-limited calls, and return an answer with enough provenance (endpoints, parameters, identifiers, access date) that a human or another agent can repeat it.
A literature lookup is only as trustworthy as it is repeatable. Prefer explicit identifiers and documented endpoints over broad guessing, report what you queried, and say plainly when a result is partial or a database came back empty — a silent gap reads as "nothing exists" when it may just mean "not indexed here."
These APIs fail with HTTP 200. That is the recurring hazard, and the reason for most of the rules below. PMC eFetch returns a well-formed article with no <body> when the publisher forbids redistribution. arXiv returns totalResults: 1 and one entry titled Error for a malformed parameter, and silently rewrites an unknown field prefix to all:. Europe PMC puts errCode in a 200 body. bioRxiv accepts an out-of-step pagination cursor and returns the wrong 30 records. Figshare GET /articles?search_for= ignores the query and still 200s. OpenCitations answers an unknown DOI with [{"count": "0"}]. None of these raise, and every one of them produces a confident, wrong answer. Verify the shape of what you got, not just the status code.
Core Workflow
-
Define the retrieval contract — What is the user after? A specific paper by DOI/PMID/arXiv ID? Papers on a topic? An author's publications? A citation graph? An open-access PDF? Full text? Note any constraints that change the answer: date range, field of study, open-access-only, exhaustive list vs. a few top hits. If a constraint that affects correctness is missing (e.g., "recent" with no year, or an author name with many namesakes), ask rather than guess.
-
Select database(s) — Use the selection guide below. Route to the primary database for the intent, then add others only when they earn their place: identifier resolution, open-access lookup, or a known coverage gap. Don't fan out across all eighteen just because they're available.
What ships with it
23 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- references/arxiv.md 12 KB
- references/biorxiv.md 6.1 KB
- references/biostudies.md 3.1 KB
- references/core.md 3.9 KB
- references/crossref.md 5.0 KB
- references/doaj.md 4.0 KB
- references/europepmc.md 8.7 KB
- references/figshare.md 2.7 KB
- references/medrxiv.md 4.8 KB
- references/openalex.md 5.0 KB
- references/opencitations.md 4.4 KB
- references/pmc.md 7.7 KB
- references/pubmed.md 3.8 KB
- references/pubtator.md 4.3 KB
- references/ror.md 3.9 KB
- references/semantic-scholar.md 6.0 KB
- references/unpaywall.md 3.7 KB
- references/zenodo.md 3.4 KB
- scripts/_common.py 8.2 KB runs code
- scripts/arxiv_atom.py 7.8 KB runs code
- scripts/jats_to_text.py 11 KB runs code
- scripts/openalex_abstract.py 5.9 KB runs code
- scripts/paginate.py 17 KB runs code
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.
- today Changed · +23 lines · +42 tokens per session 487f39acbc2d
- 9d ago First seen · 281 lines · 156 tokens per session scan C ba47c3f78422
paper-lookup is a skill published in the GitHub repository K-Dense-AI/scientific-agent-skills (44,469 stars, last pushed yesterday), licensed MIT. It adds 198 tokens to every session and 6,271 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it C with 2 findings (downloads and executes remote code, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
discovery-toolbox
A routed repertoire of 90 scientific thinking operators for biological research agents - visual reasoning, detectability and information budgets, search reframing, causal identification, competing explanations, observation and selection processes, pipeline artifact diagnosis, effort allocation, and confirmation…
discovery-director
Operate as a research director making original discoveries from a given biological question and dataset. Use when the task is open-ended scientific research, exploring omics or experimental data for findings, hypothesis generation and testing, screening a large candidate space of genes, variants, features or…
bio-interdomain-hgt
Detect and polarize interdomain horizontal gene transfer with homology, context, and phylogenetic checks. Use when studying lateral gene transfer, virus-host gene exchange, endogenous viral elements, or donor direction.
polars-dovmed
Search PMC Open Access and bioRxiv corpora with polars-dovmed. Use when structured, reproducible literature queries should run through the hosted API or local parquet indexes.
csag-extraction
Extract a Conditional Scientific Argumentation Graph and grounded Q&A from a manuscript. Use when representing assertions, contexts, evidence links, and inference steps in machine-readable form.
exploratory-data-analysis
Inspect scientific data and generate a Markdown structure-and-quality report. Use when triaging tabular, array, sequence, HDF5, JSON, or raster files before downstream analysis.