paper-search-mcp and academic-search-mcp-server

Maintenance 2/25
Adoption 10/25
Maturity 15/25
Community 21/25
Maintenance 0/25
Adoption 9/25
Maturity 16/25
Community 12/25
Stars: 779
Forks: 104
Downloads:
Commits (30d): 0
Language: Python
License: MIT
Stars: 105
Forks: 11
Downloads:
Commits (30d): 0
Language: Python
License: AGPL-3.0
Stale 6m No Package No Dependents
Stale 6m No Package No Dependents

About paper-search-mcp

openags/paper-search-mcp

A MCP for searching and downloading academic papers from multiple sources like arXiv, PubMed, bioRxiv, etc.

Implements a two-layer architecture with unified high-level tools (`search_papers`, `download_with_fallback`) that coordinate concurrent searches across 20+ academic platforms while deduplicating results, backed by modular platform-specific connectors using intelligent DOI extraction. Follows a free-first design philosophy prioritizing open metadata sources (Crossref, OpenAlex, dblp) and full-text repositories (arXiv, PMC, CORE, OpenAIRE) with optional API keys for rate-limit improvement, and chains fallback strategies for PDF retrieval across multiple OA sources before optional Sci-Hub access. Integrates as an MCP server compatible with LLM clients like Claude Desktop via the MCP Python SDK.

About academic-search-mcp-server

afrise/academic-search-mcp-server

Academic Paper Search MCP Server for Claude Desktop integration. Allows Claude to access data from Semantic Scholar and Crossref.

Implements three distinct search tools—general paper search, detailed metadata retrieval by DOI/identifier, and topic-based filtering with date ranges—all returning structured metadata including abstracts, TL;DR summaries, and open-access status. Built on Python's FastMCP framework with httpx for API calls, it aggregates data from Semantic Scholar and Crossref endpoints into standardized MCP tool responses. Designed for Claude Desktop via configuration file setup, though the MCP specification enables compatibility with other AI clients supporting tool-calling interfaces.

Scores updated daily from GitHub, PyPI, and npm data. How scores work