fulltext-retrieval

Featured

Batch download open-access PDFs by DOI using legitimate OA APIs (Unpaywall, PMC, OpenAlex, Crossref). Optional PDF→Markdown conversion for token-efficient LLM analysis.

Data & Documents 223 stars 55 forks Updated yesterday MIT

Install

View on GitHub

Quality Score: 95/100

Stars 20%
78
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Fulltext Retrieval Skill Batch download open-access full-text PDFs from a DOI list using legitimate OA APIs only. ## Pipeline ``` DOI → arXiv (10.48550/arXiv.* DOIs) → Unpaywall → PMC (Europe PMC / OA FTP / web) → OpenAlex → Crossref → landing page ``` Each DOI goes through these sources in order until a valid PDF (≥10 KB, `%PDF-` header) is found. arXiv DOIs (`10.48550/arXiv.2401.01234`, version suffixes, old-style `hep-th/9901001`, or a bare `arXiv:` id) resolve directly to the arXiv PDF first. ## Quick Start ```bash # Prepare a DOI list (one per line) cat > dois.txt << 'EOF' 10.1007/s00330-010-1783-x 10.1002/mp.12524 10.1148/radiol.13131265 EOF # Run python fetch_oa.py dois.txt --output pdfs/ --email your@email.com # Verbose mode for debugging python fetch_oa.py dois.txt -o pdfs/ -e your@email.com --verbose ``` ## Input Formats **Plain text** — one DOI per line: ``` 10.1007/s00330-010-1783-x 10.1002/mp.12524 ``` **TSV / CSV with header** — must contain a `DOI` column; optional `PMID` and `Title` columns: ```tsv ID Title DOI PMID Year 1 Some paper 10.1007/s00330-010-1783-x 20628747 2010 ``` **Markdown table** — a pipe table with a `DOI` column also works: ```markdown | DOI | PMID | Title | |-----|------|-------| | 10.1007/s00330-010-1783-x | 20628747 | Some paper | ``` When a PMID is available, the PMC lookup is more reliable (PMID → PMCID conversion). When a `Title` column is present, downloaded PDFs get a best-effort title cross-check (see *Retrieval report...

Details

Author
Aperivue
Repository
Aperivue/medsci-skills
Created
3 months ago
Last Updated
yesterday
Language
Python
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

Data & Documents Listed

paper-fetch

Use when the user wants to download a paper PDF from a DOI (or title, resolved to a DOI first). Tries Unpaywall, arXiv, bioRxiv/medRxiv, PubMed Central, Semantic Scholar, and Sci-Hub mirrors as a last-resort fallback.

4 Updated yesterday
Kara-lynnmacroeconomic2412
AI & Automation Solid

paper-fetch

Use whenever the user wants to obtain, download, or fetch a paper's PDF — given a DOI, an arXiv id, a paper title, a citation, or a list of DOIs. Trigger on phrases like "download this paper", "find the PDF for [DOI]", "grab me the [Nature/bioRxiv/arXiv] paper on X", "get the open-access version", "I need this article", or any bulk/batch paper download request, even when the user doesn't explicitly say "PDF" or "DOI". Resolves via Unpaywall → Semantic Scholar → arXiv → PubMed Central → bioRxiv/medRxiv → publisher direct (institutional opt-in) → Sci-Hub mirrors as last-resort fallback.

163 Updated 1 weeks ago
Agents365-ai
AI & Automation Solid

food-fetch

Lawfully acquire the full text of academic articles so the research and review skills can read papers, not just abstracts. Routes each article through legal open access (Unpaywall/OpenAlex/PMC/arXiv), the user's own reference-manager library (EndNote/Zotero/Mendeley PDFs), and — only with the user's own logged-in institutional browser session — their library's entitled full text, then extracts the text and writes a manifest of what was and was not obtained. Open-access articles are always downloaded and read, never left at abstract-level. Never bypasses paywalls, DRM, or logins. Use to fetch PDFs for a reference list or DOIs, get full text behind a subscription the user is entitled to, or build a full-text corpus. Triggers: download these papers, get the full text, fetch the PDFs for these DOIs, retrieve full text for my reference list, access the article through my library, build a full-text corpus.

19 Updated 4 days ago
PangenomeAI