Better Fetch

OpenAlex Works Scraper

Search OpenAlex scholarly works or fetch one exact OpenAlex work by ID or DOI through the public OpenAlex API, returning normalized paper metadata, authors, institutions, publication venues, citation counts, open-access links, concepts, topics, and optional abstract text.

Researchv0.1.1~1 credit/runSource on GitHub

Overview

OpenAlex Works Scraper gives agents a public-API route into OpenAlex scholarly work metadata. Search by keyword with optional publication date, year, type, open-access, and raw OpenAlex filters, or fetch a known OpenAlex work ID, DOI, or DOI URL. The tool normalizes OpenAlex JSON into compact paper rows with OpenAlex IDs, DOI URLs, titles, publication dates, authors, ORCIDs, institutions, countries, venues, publishers, citation and reference counts, open-access status, landing pages, PDF URLs, concepts, topics, and reconstructed abstracts when requested. It is designed for literature discovery, bibliometric analysis, RAG corpus triage, open-access harvesting, institution research maps, citation monitoring, and research-agent workflows that need open scholarly metadata without publisher scraping.

Last validated: Jul 3, 2026

Playground

Search OpenAlex works or fetch one exact work.

OpenAlex search page number.

OpenAlex sort expression for search mode.

OpenAlex work type such as article, preprint, book-chapter, or dataset.

Keyword query for OpenAlex works search.

Optional raw OpenAlex filter expression, e.g. type:article,authorships.institutions.country_code:US.

OpenAlex work ID, OpenAlex URL, DOI, DOI URL, or DOI-prefixed value, e.g. W2919115771, https://openalex.org/W2919115771, 10.1038/nature14539, or https://doi.org/10.1038/nature14539.

Maximum works to return in search mode.

Filter search results to open-access or closed works.

Reconstruct abstract text from OpenAlex inverted-index abstracts when available.

Exact publication year filter.

Latest publication date filter in YYYY, YYYY-MM, or YYYY-MM-DD format.

Earliest publication date filter in YYYY, YYYY-MM, or YYYY-MM-DD format.

Sign in to run this tool

~1 credit per run · runs against your account

Input

mode"search" | "work"default: "search"

Search OpenAlex works or fetch one exact work.

pageintegerdefault: 1

OpenAlex search page number.

sort"relevance_score" | "cited_by_count:desc" | "publication_date:desc" | "publication_year:desc"default: "relevance_score"

OpenAlex sort expression for search mode.

typestring

OpenAlex work type such as article, preprint, book-chapter, or dataset.

querystring

Keyword query for OpenAlex works search.

filterstring

Optional raw OpenAlex filter expression, e.g. type:article,authorships.institutions.country_code:US.

work_idstring

OpenAlex work ID, OpenAlex URL, DOI, DOI URL, or DOI-prefixed value, e.g. W2919115771, https://openalex.org/W2919115771, 10.1038/nature14539, or https://doi.org/10.1038/nature14539.

per_pageintegerdefault: 10

Maximum works to return in search mode.

is_open_accessboolean

Filter search results to open-access or closed works.

include_abstractbooleandefault: true

Reconstruct abstract text from OpenAlex inverted-index abstracts when available.

publication_yearinteger

Exact publication year filter.

to_publication_datestring

Latest publication date filter in YYYY, YYYY-MM, or YYYY-MM-DD format.

from_publication_datestring

Earliest publication date filter in YYYY, YYYY-MM, or YYYY-MM-DD format.

Output

modestringrequired

Mode used for this run

countintegerrequired

Number of returned works

querystring

OpenAlex search query used

worksobject[]required

Structured OpenAlex work records

work_idstring

Exact work identifier used

source_urlstringrequired

OpenAlex API URL fetched

total_matchesinteger

Total OpenAlex matches reported by the API

Examples

deep-learning-work

{
  "mode": "work",
  "work_id": "10.1038/nature14539"
}

llm-search

{
  "mode": "search",
  "query": "large language models",
  "per_page": 2,
  "from_publication_date": "2024-01-01"
}

Use cases

Literature discovery

Search OpenAlex works by topic, year range, type, or open-access status, then return normalized papers for review or ranking.

Citation and venue analysis

Fetch citation counts, reference counts, source names, publishers, concepts, topics, and authorship metadata for bibliometric workflows.

RAG corpus triage

Collect OpenAlex IDs, DOI URLs, landing pages, open-access links, PDF URLs, and abstracts before deciding which papers to download or embed.

FAQ

Does OpenAlex Works Scraper require an API key?

No. Version 0.1 uses the public OpenAlex API and keeps each run to one bounded request. OpenAlex may enforce request budgets, so high-volume workflows should use OpenAlex's current authentication and pricing guidance directly.

Does it download PDFs or crawl publisher pages?

No. It returns metadata, landing-page URLs, open-access URLs, and PDF URLs when OpenAlex provides them. It does not download PDFs, parse full text, or scrape publisher websites.

Is this tool affiliated with OpenAlex?

No. OpenAlex is operated by OurResearch. This Better Fetch tool uses public OpenAlex API data and is not endorsed by or affiliated with OpenAlex or OurResearch.

Use it anywhere

MCP (Claude, Cursor, any client)

# Add the Better Fetch MCP connector (or paste the URL into
# Claude → Settings → Connectors → Add custom connector):
claude mcp add --transport http better-fetch https://betterfetch.co/api/mcp \
  --header "Authorization: Bearer bf_your_key_here"

# Then ask for the tool by name: openalex_works_scraper

REST

curl -sS -X POST "https://betterfetch.co/api/tools/openalex_works_scraper/run" \
  -H "Authorization: Bearer bf_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"input": {"mode":"work","work_id":"10.1038/nature14539"}}'

Run locally

git clone https://github.com/better-fetch/tools/tree/main/tools/openalex-works-scraper && cd openalex-works-scraper && npm i
BETTER_FETCH_API_KEY=bf_your_key_here npx bf-tool run --input '{"mode":"work","work_id":"10.1038/nature14539"}'