whatisgithub

What is paper-search-cli?

dr-dumpling/paper-search-cli — explained in plain English

Analysis updated 2026-05-18

21TypeScriptAudience · researcherComplexity · 2/5LicenseSetup · easy

In one sentence

A Node.js command line tool that searches, validates, and downloads academic papers across 25 scholarly sources, built for both terminal use and AI agents.

Mindmap

mindmap
  root((Paper Search CLI))
    Sources
      Crossref
      PubMed and arXiv
      Semantic Scholar
      Sci-Hub Fallback
    Design
      Free First Retrieval
      JSON Output
      No Background Service
    Commands
      search
      download
      status and tools
    Use Cases
      Researchers
      Agent Workflows

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Search across 25 academic sources like Crossref, PubMed, arXiv, and Semantic Scholar from one command.

USE CASE 2

Download a paper's PDF using a funnel of fallback sources, from the native publisher to open access aggregators.

USE CASE 3

Wire academic paper search into an AI agent workflow using predictable JSON output on stdout.

USE CASE 4

Search Semantic Scholar's open access snippet index to find specific methodological details inside papers.

What is it built with?

TypeScriptNode.js

How does it compare?

dr-dumpling/paper-search-cliagentfm-ai/agent-fmame-x/auto-ppt
Stars212121
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyeasyeasymoderate
Complexity2/52/52/5
Audienceresearcherdevelopervibe coder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires Node.js 18 or newer, some sources need an API key configured via paper-search setup.

MIT license: use, modify, and distribute freely, including commercially, as long as you keep the copyright notice.

So what is it?

Paper Search CLI is a Node.js command line tool for finding, validating, and downloading academic papers. It is aimed at researchers, students, and increasingly at automated agents that need to look up scholarly literature. The tool started life as an earlier project called Paper Search MCP, which ran as a long-living background service. This version takes the same broad coverage of academic sources and the same unified data model, but repackages it as a plain CLI: each command starts, returns a result, and exits. There is nothing to keep alive. The headline number is 25 academic sources. The list includes Crossref, OpenAlex, PubMed, PubMed Central, Europe PMC, arXiv, bioRxiv, medRxiv, Semantic Scholar, CORE, OpenAIRE, DBLP, ACM Digital Library metadata, USENIX metadata, OpenReview, Web of Science, Google Scholar, IACR ePrint, Sci-Hub, IEEE Xplore, ScienceDirect, Springer Nature, Wiley, Scopus, and Unpaywall. Some of these only provide metadata, some can serve full text PDFs, and some need an API key. The README is careful to document which capability each source supports through a detailed table. The core design goals are stated up front. Free public metadata and open access full text routes are tried before restricted ones. Output is machine-readable JSON on stdout so an agent or script can parse the results, while human-readable diagnostics go to stderr. A funnel-style fallback download tries the native source first, then discovered PDF URLs, then open access aggregators such as PMC and Unpaywall, and finally Sci-Hub as a last resort unless the user disables that with useSciHub=false. Rate limits and retries are handled per platform. Installation needs Node.js 18 or newer. The typical sequence is to install the package globally with npm, run paper-search setup to write any API keys and contact emails into the user config, and then start searching. The README shows a quick example: paper-search search "machine learning" --platform crossref --max-results 3 --pretty. Other useful commands are status, tools, config doctor, and run, which is the precise advanced call for invoking a specific tool by name. The project is MIT licensed and at version 0.1.2. The author thanks the LinuxDo community for shaping the CLI plus Skill direction and the paper search workflow. Platforms are grouped into broad families such as general scholarly metadata, medicine and life sciences, preprints, computer science, open full text, citation indexes, and DOI-targeted lookup. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Help me install paper-search-cli globally with npm and run paper-search setup to configure my API keys.
Prompt 2
Show me how to search for papers on machine learning using the crossref platform with a limited number of results.
Prompt 3
Explain how the funnel-style fallback download tries different sources before falling back to Sci-Hub.
Prompt 4
Walk me through querying multiple sources at once with --sources and how duplicate results get merged by DOI.
Prompt 5
I want to use this CLI from an agent script. Show me how the JSON output on stdout is structured for parsing.

Frequently asked questions

What is paper-search-cli?

A Node.js command line tool that searches, validates, and downloads academic papers across 25 scholarly sources, built for both terminal use and AI agents.

What language is paper-search-cli written in?

Mainly TypeScript. The stack also includes TypeScript, Node.js.

What license does paper-search-cli use?

MIT license: use, modify, and distribute freely, including commercially, as long as you keep the copyright notice.

How hard is paper-search-cli to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is paper-search-cli for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.