skills/43-wentorai-research-plugins/skills/literature/fulltext/unpaywall-api/SKILL.md
Find free legal full-text versions of scholarly articles via Unpaywall
npx skillsauth add brycewang-stanford/Awesome-Agent-Skills-for-Empirical-Research unpaywall-apiInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Unpaywall is a free, open database of over 40 million free scholarly articles. Built by the nonprofit OurResearch, Unpaywall indexes legal open access (OA) copies of papers from thousands of institutional repositories, preprint servers, publisher websites, and government archives. It is the most comprehensive source for finding freely available versions of paywalled academic literature.
Researchers, librarians, and tool developers use Unpaywall to locate open access copies of papers they need, assess the OA status of publications, and integrate OA discovery into their workflows. The database is updated daily, scanning repositories and publisher sites for new open access content. Unpaywall categorizes OA into types: gold (published OA), green (repository copy), hybrid (OA in subscription journal), and bronze (free to read on publisher site).
The API requires only an email address for authentication and is free for non-commercial use with a generous rate limit of 100,000 requests per day.
Authentication is via email address passed as a query parameter. No API key or registration is needed -- just provide a valid email:
[email protected]
This email is used for contact purposes only and to identify your application. The API will reject requests without a valid email address. For commercial use or higher rate limits, contact OurResearch for an API key.
GET https://api.unpaywall.org/v2/{doi}curl "https://api.unpaywall.org/v2/10.1038/[email protected]"
is_oa: boolean indicating if any OA version existsbest_oa_location: the best available OA copy with url, url_for_pdf, evidence, host_type, license, and versionoa_locations: array of all known OA copiesoa_status: gold, green, hybrid, bronze, or closedtitle, doi, year, genre, journal_name, publisherGET https://api.unpaywall.org/v2/{doi} (repeated per DOI)# Process multiple DOIs sequentially
for doi in "10.1038/nature12373" "10.1126/science.aaa8685" "10.1016/j.cell.2015.05.002"; do
curl -s "https://api.unpaywall.org/v2/[email protected]" | jq '{doi: .doi, is_oa: .is_oa, oa_status: .oa_status, best_url: .best_oa_location.url}'
sleep 0.01
done
For large-scale analyses, Unpaywall provides a complete database snapshot and a weekly data feed, rather than requiring millions of individual API calls. Access is available at https://unpaywall.org/products/data-feed for registered users.
The API allows 100,000 requests per day (approximately 1.15 requests per second sustained). There is no strict per-second rate limit, so burst traffic is acceptable as long as the daily cap is respected. Exceeding the limit returns HTTP 429. For analyses requiring more than 100K lookups, use the Unpaywall Data Feed (database snapshot) instead.
Determine which papers in your reading list have freely available versions:
curl -s "https://api.unpaywall.org/v2/10.1038/[email protected]" | jq '{title: .title, is_oa: .is_oa, oa_status: .oa_status, pdf: .best_oa_location.url_for_pdf}'
Get a direct link to the best open access PDF for a paper:
curl -s "https://api.unpaywall.org/v2/10.1145/[email protected]" | jq '.best_oa_location | {url: .url, pdf: .url_for_pdf, version: .version, license: .license}'
Check whether publications from a funded project comply with OA mandates:
# For each publication DOI from the grant
curl -s "https://api.unpaywall.org/v2/10.1038/[email protected]" | jq '{doi: .doi, title: .title, is_oa: .is_oa, oa_status: .oa_status, locations: [.oa_locations[] | {host: .host_type, license: .license, version: .version}]}'
tools
Show mcp-stata identity, connected tools, and status. Use when the user asks if mcp-stata is available, asks about access to the toolkit, or asks what Stata tools are connected.
tools
Activate when users mention Stata commands, .do files, regressions, econometrics, stored results, graphs, dataset inspection, replication, or Stata errors. Route the task through mcp-stata tools and the specialized research skills instead of treating it as plain text coding.
development
Build and review paper-ready regression, balance, and summary tables from Stata outputs. Use when the user needs a clean table for a draft, appendix, or coauthor share-out.
tools
Install, configure, update, or verify mcp-stata across Claude Code, Codex, Gemini CLI, Cursor, Windsurf, and VS Code. Activate when users ask to set up the Stata toolkit or troubleshoot the installation.