Download PubMed/PMC literature using officially permitted PMC methods. Whenever the user wants to download PMC full text, batch-retrieve PMC Open Access Subset articles, save full text corresponding to PMID/PMCID locally, or needs to determine whether a PubMed article can be l...
66
80%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
Fix and improve this skill with Tessl
tessl review fix ./scientific-skills/Evidence Insight/pmc-official-download/SKILL.mdConverge "download PubMed literature" requests into a single legal, traceable PMC workflow:
The core of this skill is not "get any full text as fast as possible" but rather "only obtain legally accessible PMC content through officially permitted methods."
Use this skill first when the user has requests like:
If the user mentions Sci-Hub, mirror sites, bulk web scraping, bypassing restrictions, or similar approaches, refuse those paths directly and explain feasible alternatives using official PMC methods.
Only use the following official PMC channels:
PMC Cloud ServicePMC FTP ServicePMC OAI-PMH ServicePMC OA Web ServiceE-utilitiesBioC APIThese are services explicitly permitted by PMC for automated retrieval or downloading. Do not use any other automated scraping methods.
First confirm three things:
PMID, PMCID, DOI, or title keywordsXML, JSON, plain text, or PDFIf the user only provides a PMID, first map it to a PMCID, because whether it can be legally downloaded from PMC depends on whether the article exists in the PMC accessible collection.
First determine whether the article belongs to a PMC accessible collection:
PMC Open Access SubsetPMC Author Manuscript CollectionIf not in these collections, do not attempt to bypass restrictions or look for unofficial sites.
State directly:
Choose the most appropriate official channel by scenario:
BioC APIXML/JSON by PMID or PMCID, prefer BioC APIPMC OA Web Service or PMC Cloud ServiceE-utilitiesOAI-PMHXML, PDF, media files, or supplementary materials are needed, prefer PMC FTP Service or PMC Cloud ServiceNotes:
PDF when it is explicitly provided in the official article packagePDFPDF, inform the user honestlyWhen downloading, save the following information whenever possible:
Recommended output directory:
pmc-downloads/<identifier>/If writing JSON metadata, use UTF-8 encoding and preserve original Chinese text — do not force-escape Chinese characters.
If the user wants full text for a single PMID / PMCID and accepts XML or JSON, prefer the helper script bundled with this skill:
python scripts/download_pmc_bioc.pyThis script only uses the official PMC BioC API and is suitable for downloading the machine-readable version of a single publicly accessible full-text article.
If the user wants to batch-pull PMC public collections, follow these principles:
Cloud Service, FTP Service, or OA Web Service from the official PMC dataset pageWhen answering the user, include the following information whenever possible:
If an official channel does not return content, troubleshoot in the following order:
If still failing, honestly inform the user of the reason it cannot be downloaded and provide official alternative paths.
These are the most common gotchas with this skill — pay special attention when handling:
citation_pdf_url on article pages is often just a PDF viewer page, not necessarily a directly saveable binary PDFPMC OA Web Service to verify whether the PMCID is open, then get the official pdf linkftp://ftp.ncbi.nlm.nih.gov/... links can usually be changed to https://ftp.ncbi.nlm.nih.gov/..., which is more stable in local environments%PDF to avoid saving HTML as PDF by mistakePMID, do not assume it can directly download full text — first map to PMCID, then determine downloadabilityPrefer the unified entry point — do not rely on modifying constants at the top of scripts, and do not make yourself remember two script names:
python scripts/download_pmc.py --pmcid PMC13011518 --pmcid PMC11656652 --pmcid PMC11787101
python scripts/download_pmc.py --identifier PMC11787101If the user has already provided a set of PMCIDs, PMIDs, or download directory, pass them directly to download_pmc.py rather than temporarily modifying code. Only fall back to the underlying scripts when you explicitly need to debug BioC or PDF details separately.
| Field | Required | Format/Source | Example | If Missing |
|---|---|---|---|---|
| User task description | Yes | Text | Research question, writing goal, analysis objective | Stop and ask user to provide |
| Primary input material | Depends on task | Text, file path, ID, table, or literature | PMID, PDF, CSV, DOCX, keywords, etc. | Specify which material type is missing |
| Output preference | No | Text | Language, format, target journal, template | Use skill default format |
This skill accepts requests that match the documented purpose of pmc-official-download and include enough context to complete the workflow safely.
Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
pmc-official-downloadonly handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
f5ef65b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.