Skip to main content
Glama

Google Scholar Scraper Alternative: Papers, Citations & BibTeX

literature_search
Read-only

Search 250M+ scholarly works by topic, Boolean query, or seed DOIs to build reading lists, find real papers, and expand citation networks with ranked results and ready citations.

Instructions

Search 250M+ scholarly works (OpenAlex) by topic query or seed DOIs and return ranked papers with DOI, citation count, free PDF link, retraction flag and a ready citation. Unlike pubmed_evidence_table (PubMed biomedical records with study design and PRISMA counts), this covers every discipline and supports citation-network expansion. Use when you need real papers on a topic, a reading list, or papers citing/cited by known DOIs. Do not use for systematic biomedical screening (use pubmed_evidence_table) or to find people (use researcher_expert_finder). Parameters: seedDois with no query walks the citation network per seedMode (citing = forward, references = backward); with a query it searches inside that network. searchIn=fullText broadens recall but lowers precision. retractedPapers=flag returns and bills retracted papers marked FIX; exclude drops them unbilled. sortBy changes dataset order only; readingListSize does not affect cost. Returns per item: summary, status, title, authors, year, venue, doi, citations, readingRank, readingScore, isOpenAccess, pdfUrl, retracted, citation, bibtex, ris, abstract.

Behavior: read-only; runs the Apify Actor pandadad0214/literature-search (https://apify.com/pandadad0214/literature-search) on your own Apify account. Price: $0.003 per paper found. Runs that find nothing are not charged per result, and spending is capped per call by run_max_charge_usd (default $0.50). run_max_items (default 50) limits items returned and fills maxResults when you leave it unset, so it also limits what is billed; setting maxResults higher can bill more than is returned. Most calls finish in 5-15 s for a few inputs; large inputs or crawls can take minutes, so raise run_timeout_secs (max 300) or shrink the input after a timeout error. Returns JSON {actor, count, items}; long text output is trimmed to whole items, with all items in structuredContent.

Input Schema

NameRequiredDescriptionDefault
queryNoSearch query. Topic or Boolean query. Use quotes for phrases and AND / OR / NOT in capitals, e.g. "retrieval augmented generation" AND (clinical OR medicine) NOT survey. Leave empty to explore around seed papers only.
typesNoDocument types. Leave empty for all paper types (peer reviews, errata, retraction notices and abstracts-only records are always left out unless you pick them here).
sortByNoSort results by. Order of the dataset. The reading list is always ranked by reading score (relevance plus field-normalised citation impact). Choices: relevance = Relevance; citations = Most cited; newest = Newest first; oldest = Oldest first.relevance
yearToNoTo year. Latest publication year (inclusive). Whole number, 1500 to 2100.
languageNoLanguage. Optional two-letter language code, e.g. en, de, es.
searchInNoSearch in. Title and abstract is the most precise (like a database search). Full text also matches papers that only mention your terms in the body. Choices: titleAbstract = Title and abstract (recommended); title = Title only; fullText = Full text (broadest).titleAbstract
seedDoisNoSeed papers (DOIs). Optional. Start from papers you already trust. Combine with a query to search inside that network, or use alone. Up to 50 DOIs.
seedModeNoSeed mode. Which papers around the seeds to return. Choices: citing = Papers that cite the seeds (forward); references = Papers the seeds cite (backward); related = Related papers (OpenAlex similarity).citing
yearFromNoFrom year. Earliest publication year (inclusive). Whole number, 1500 to 2100.
maxResultsNoMaximum papers. You pay per returned paper, so this also caps the cost ($0.003 x papers). Whole number, 1 to 2,000 results; default 100.
contactEmailNoContact email for API etiquette (optional). Sent to Crossref and Unpaywall as the polite-pool contact. Leave empty to use ours.
minCitationsNoMinimum citations. Only return papers cited at least this many times (OpenAlex counts). Whole number, 0 or more citations; default 0.
citationStyleNoCitation style. Style for the citation column and the CITATIONS file. Formatted by citeproc-js with the official CSL style. Choices: apa = APA 7th edition; mla = MLA 9th edition; chicago = Chicago author-date; harvard = Harvard (Cite Them Right); ieee = IEEE; vancouver = Vancouver (NLM).apa
run_max_itemsNoOptional. Most results to return from this call (default from PANDA_MAX_ITEMS, 50). Also limits how many results the Actor produces and charges for, unless you set its own max field.
checkUnpaywallNoFind open-access PDFs (Unpaywall). Look up the best legal open-access copy of each paper. Default: on.
openAccessOnlyNoOpen access only. Only return papers with a free, legal full-text copy. Default: off.
readingListSizeNoReading list length. How many top papers go into the ranked READING_LIST file. All papers are still in the dataset and exports. Whole number, 5 to 500 papers; default 25.
retractedPapersNoRetracted papers. Flag keeps retracted papers in the results, marked FIX, so you know to avoid them (they are charged as returned papers). Exclude drops them before they are returned (not charged). Choices: flag = Flag them (FIX); exclude = Exclude them.flag
includeAbstractsNoInclude abstracts. Add the abstract where OpenAlex has one (some publishers withhold them). Default: on.
run_timeout_secsNoOptional. Seconds to wait for results (default from PANDA_TIMEOUT_SECS, 120; max 300).
run_max_charge_usdNoOptional. Hard spending cap for this call in USD (default from PANDA_MAX_CHARGE_USD, 0.50).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, open-world and non-destructive status, but the description adds substantial context they cannot express: per-paper pricing ($0.003), spending caps, the 5-15 s vs. minutes runtime split, timeout remediation, and that output is trimmed to whole items with all items in structuredContent. The only gap is that it does not discuss failure/error surfaces beyond timeouts. Note that the parameter-recap sentences largely restate schema text rather than adding new behavioral facts.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded correctly: purpose, differentiation and when-to-use come before parameter detail and the behavior block. It is long for a single field, and the parameter recap in the first paragraph re-treads schema content (sortBy ordering, retraction billing, readingListSize cost) that an agent has already been given, which is the main source of bloat.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 21 optional parameters and no output schema, the description compensates well by listing the per-item return fields (summary, readingRank, pdfUrl, retracted, citation, bibtex, ris, abstract) and the {actor, count, items} envelope. Cost model, timeout guidance and the seed-network semantics complete the picture an agent needs before calling.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents cost caps, billing for maxResults, retraction billing and dataset ordering, and much of the description's parameter walkthrough duplicates that. It does still add genuine cross-parameter meaning: that seedDois alone walks the network while a query searches within it, and that searchIn=fullText trades precision for recall. That added interaction semantics lifts it above the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ("Search"), resource ("250M+ scholarly works (OpenAlex)") and source mode ("topic query or seed DOIs"), then enumerates what comes back (DOI, citation count, free PDF link, retraction flag, ready citation). It explicitly contrasts itself with pubmed_evidence_table and researcher_expert_finder, so an agent can separate it from siblings without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives positive triggers ("real papers on a topic, a reading list, or papers citing/cited by known DOIs") and explicit exclusions with the sibling to use instead ("Do not use for systematic biomedical screening... or to find people"). It also explains the mode-selection rule for seedDois with vs. without a query, which is the main routing decision an agent must make.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.