MCP server by h-lu
Paper Search MCP Server
A Model Context Protocol (MCP) server for searching and downloading academic papers from multiple platforms. Designed for LLM tools like Claude Desktop, Cursor, etc.
Supported Platforms
Core Platforms
| Platform | Search | Download | Read | Description | |----------|:------:|:--------:|:----:|-------------| | arXiv | ✅ | ✅ | ✅ | Preprints: Physics, Math, CS, Stats, Biology, Finance | | Semantic Scholar | ✅ | ✅ | ✅ | General academic search, 200M+ papers, AI-powered | | PubMed | ✅ | ❌ | ❌ | Biomedical literature | | bioRxiv | ✅ | ✅ | ✅ | Biology preprints | | medRxiv | ✅ | ✅ | ✅ | Medical preprints | | CrossRef | ✅ | ❌ | ❌ | DOI metadata, 150M+ records | | IACR | ✅ | ✅ | ✅ | Cryptography papers | | Google Scholar | ✅ | ❌ | ❌ | All-discipline search (web scraping) | | RePEc/IDEAS | ✅ | ❌ | ❌ | Economics paper library, 4.5M+ items | | Sci-Hub | ❌ | ✅ | ✅ | Download paywalled papers (pre-2023) |
RePEc/IDEAS Features
RePEc is the largest open economics bibliography, with rich search options:
Search Fields: Full text / Abstract / Keywords / Title / Author
Sort Options: Relevance / Newest / Oldest / Citations / Recent & Relevant
Document Types: Journal Articles / Working Papers / Book Chapters / Books
Institution/Journal Filters:
| Category | Options |
|----------|---------|
| Research Institutions | nber, imf, worldbank, ecb, bis, cepr, iza |
| Federal Reserve | fed, fed_ny, fed_chicago, fed_stlouis, fed_sf |
| Top 5 Journals | aer, jpe, qje, econometrica, restud |
| Other Journals | jfe, jme, aej_macro, aej_micro, aej_applied |
Quick Start
Installation
# Clone the repository
git clone https://github.com/h-lu/paper-search-mcp.git
cd paper-search-mcp
# Install with uv (recommended)
uv pip install -e .
# Or use pip
pip install -e .
Configure Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
Using uv (recommended):
{
"mcpServers": {
"paper_search_server": {
"command": "uv",
"args": ["run", "-m", "paper_search_mcp.server"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "",
"CROSSREF_MAILTO": "your_email@example.com",
"NCBI_API_KEY": "",
"PAPER_DOWNLOAD_PATH": "~/paper_downloads"
}
}
}
}
Using Python:
{
"mcpServers": {
"paper_search_server": {
"command": "python",
"args": ["-m", "paper_search_mcp.server"],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "",
"CROSSREF_MAILTO": "your_email@example.com",
"NCBI_API_KEY": "",
"PAPER_DOWNLOAD_PATH": "~/paper_downloads"
}
}
}
}
Usage Guide
Choose Tools by Discipline
General academic search → search_semantic or search_crossref
CS/Physics preprints → search_arxiv
Biomedical → search_pubmed + download_scihub(doi)
Economics → search_repec (supports NBER, IMF, Fed, AER, etc.)
Cryptography → search_iacr
Download paywalled papers → download_scihub(doi) [pre-2023]
Typical Workflow
# 1. Search for papers
papers = search_semantic("climate change agriculture", max_results=5)
# 2. Get DOI
doi = papers[0]["doi"]
# 3. Download via Sci-Hub (older papers)
pdf_path = download_scihub(doi)
# 4. Read full text
text = read_scihub_paper(doi)
RePEc Economics Search Examples
# Search NBER working papers
search_repec("inflation expectations", series='nber')
# Search AER journal articles, sorted by newest
search_repec("causal inference", series='aer', sort_by='newest')
# Search Fed papers, with year filter
search_repec("monetary policy", series='fed', year_from=2020)
# Search by author
search_repec("Acemoglu", search_field='author')
# Get paper details (with full abstract)
get_repec_paper("https://ideas.repec.org/p/nbr/nberwo/32000.html")
Complete Tool List
Search Tools
| Tool | Description |
|------|-------------|
| search_arxiv | Search arXiv preprints |
| search_semantic | Semantic Scholar general search |
| search_crossref | CrossRef DOI metadata search |
| search_pubmed | PubMed biomedical search |
| search_biorxiv | bioRxiv biology preprints |
| search_medrxiv | medRxiv medical preprints |
| search_iacr | IACR cryptography papers |
| search_google_scholar | Google Scholar search |
| search_repec | RePEc/IDEAS economics search |
Download Tools
| Tool | Description |
|------|-------------|
| download_arxiv | Download arXiv PDF (free) |
| download_semantic | Download open access papers |
| download_biorxiv | Download bioRxiv PDF |
| download_medrxiv | Download medRxiv PDF |
| download_iacr | Download IACR PDF |
| download_scihub | Download via Sci-Hub |
Read Tools (PDF → Markdown)
| Tool | Description |
|------|-------------|
| read_arxiv_paper | Read arXiv paper |
| read_semantic_paper | Read Semantic Scholar paper |
| read_biorxiv_paper | Read bioRxiv paper |
| read_medrxiv_paper | Read medRxiv paper |
| read_iacr_paper | Read IACR paper |
| read_scihub_paper | Read Sci-Hub downloaded paper |
Helper Tools
| Tool | Description |
|------|-------------|
| get_repec_paper | Get RePEc paper details (full abstract) |
| get_crossref_paper_by_doi | Get paper metadata by DOI |
Environment Variables
| Variable | Purpose | Recommended |
|----------|---------|:-----------:|
| SEMANTIC_SCHOLAR_API_KEY | Increase Semantic Scholar rate limit | ✅ |
| CROSSREF_MAILTO | CrossRef polite pool access | ✅ |
| NCBI_API_KEY | Increase PubMed rate limit | Optional |
| SCIHUB_MIRROR | Custom Sci-Hub mirror | Optional |
| PAPER_DOWNLOAD_PATH | PDF download directory (default: ~/paper_downloads) | Optional |
Development
# Clone the repository
git clone https://github.com/openags/paper-search-mcp.git
cd paper-search-mcp
# Create virtual environment
uv venv && source .venv/bin/activate
# Install dev dependencies
uv pip install -e .
# Run tests
uv run pytest tests/ -v
License
MIT License
Original code based on paper-search-mcp
Copyright (c) 2025 OPENAGS
Modifications and enhancements
Copyright (c) 2025 Haibo Lu
🎓 Happy researching!