semantic-scholar-fastmcp-mcp-server

MCP.Pizza Chef: zongmin-yu

Sixteen tools reach into the Semantic Scholar catalogue: keyword, title, and phrase search, full records for a paper, author profiles and their publication lists, the works that cite a study, the works it cites, and recommendations built from one paper or several at once. Everything is read-only. A free key raises the rate limits but is genuinely optional. One caution: installing it also starts a small unprotected web service on your computer unless you turn that off.

Web/Research
Writing

Use This MCP server To

Find recent papers on a topic I am writing about See who has cited a study since it was published Pull the reference list out of a paper I am reading Look up an author and list what they have published Get papers similar to one I already found useful Check a half-remembered title against the real record

README

MseeP.ai Security Assessment Badge

Semantic Scholar MCP Server

smithery badge

A FastMCP server implementation for the Semantic Scholar API, providing comprehensive access to academic paper data, author information, and citation networks.

Looking for Claude Code skills? Check out semantic-scholar-skills — the next-generation toolkit that bundles this MCP server with ready-to-use Claude Code skills (/expand-references, /trace-citations, /paper-triage) and a Python workflow engine.

Project Structure

The project has been refactored into a modular structure for better maintainability:

semantic-scholar-server/
├── semantic_scholar/            # Main package
│   ├── __init__.py             # Package initialization
│   ├── server.py               # Server setup and main functionality
│   ├── mcp.py                  # Centralized FastMCP instance definition
│   ├── config.py               # Configuration classes
│   ├── utils/                  # Utility modules
│   │   ├── __init__.py
│   │   ├── errors.py           # Error handling
│   │   └── http.py             # HTTP client and rate limiting
│   ├── api/                    # API endpoints
│       ├── __init__.py
│       ├── papers.py           # Paper-related endpoints
│       ├── authors.py          # Author-related endpoints
│       └── recommendations.py  # Recommendation endpoints
├── run.py                      # Entry point script

This structure:

  • Separates concerns into logical modules
  • Makes the codebase easier to understand and maintain
  • Allows for better testing and future extensions
  • Keeps related functionality grouped together
  • Centralizes the FastMCP instance to avoid circular imports

Features

  • Paper Search & Discovery

    • Full-text search with advanced filtering
    • Title-based paper matching
    • Paper recommendations (single and multi-paper)
    • Batch paper details retrieval
    • Advanced search with ranking strategies
  • Citation Analysis

    • Citation network exploration
    • Reference tracking
    • Citation context and influence analysis
  • Author Information

    • Author search and profile details
    • Publication history
    • Batch author details retrieval
  • Advanced Features

    • Complex search with multiple ranking strategies
    • Customizable field selection
    • Efficient batch operations
    • Rate limiting compliance
    • Support for both authenticated and unauthenticated access
    • Graceful shutdown and error handling
    • Connection pooling and resource management

semantic-scholar-fastmcp-mcp-server FAQ

Do I need a key?
No. It works fine unauthenticated at roughly a hundred requests every five minutes. Semantic Scholar hands out free keys that raise that ceiling, but you have to apply and wait.
Can I use this to build a reading list on a topic?
Yes — search on the topic, then ask for the papers that cite the best hits and for similar-paper recommendations.
Does it hand me the full text of the papers?
No. You get records, abstracts, matching passages, author details, and citation links. Anything behind a publisher paywall still needs your own library access.
Can it change or delete anything?
No. Every one of the sixteen tools only reads. Nothing is written to your computer or to Semantic Scholar.
Is there anything to watch out for when installing it?
Yes. By default it also starts a small web service on port 8000 that listens on every network connection with no password, so anyone on the same Wi-Fi can query it, and it will clash with other software using that port. Setting SEMANTIC_SCHOLAR_ENABLE_HTTP_BRIDGE to 0 switches it off.
Which apps does it work in?
Claude Desktop is the documented target, plus any assistant that can run a small local command. There is also a one-line automatic installer through Smithery.
How hard is setup?
Straightforward. You paste a short config block that runs the published package; it fetches Python bits for you.
Does it cost anything?
No. Both the connector and the Semantic Scholar data are free to use, subject to their licence terms.