Semantic Scholar MCP Server
Provides tools for searching academic papers, retrieving paper details (by ID, DOI, ArXiv ID), listing citations and references, searching authors, getting author profiles and papers, recommending papers based on a seed paper, and batch lookup of multiple papers.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Semantic Scholar MCP Server find papers on reinforcement learning from 2022"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Semantic Scholar MCP Server
An MCP server that provides access to the Semantic Scholar academic paper API, with optional ngrok tunnel for remote access.
Features
search_papers — Search for papers by keyword, year, field of study, and citation count
get_paper — Get full details for a paper by S2 ID, DOI, ArXiv ID, etc.
get_citations — List papers that cite a given paper
get_references — List papers referenced by a given paper
search_authors — Search for authors by name
get_author — Get author profile (h-index, paper count, affiliations)
get_author_papers — List papers by a specific author
recommend_papers — Get paper recommendations based on a seed paper
batch_get_papers — Look up multiple papers in a single request
Related MCP server: Semantic Scholar MCP Server
Setup
Requires Python 3.10+ and uv.
# Install dependencies
uv syncOptionally set an API key for higher rate limits:
export S2_API_KEY="your-key-here"Usage
HTTP transport (default) — for remote clients
uv run python server.pyThe server listens on http://localhost:8000. The MCP endpoint is at /mcp.
With ngrok tunnel
uv run python server.py --ngrokThis opens a public ngrok tunnel and prints the URL to stderr.
stdio transport — for Claude Desktop
uv run python server.py --transport stdioClaude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"semantic-scholar": {
"command": "uv",
"args": ["--directory", "/path/to/this/project", "run", "python", "server.py", "--transport", "stdio"]
}
}
}Options
Flag | Default | Description |
|
|
|
|
| Port for HTTP transport |
| off | Open an ngrok tunnel |
Available Tools
9 toolsbatch_get_papersA
Look up multiple papers at once by their IDs.
Args: paper_ids: List of paper IDs (S2 IDs, DOIs, ArXiv IDs, etc.). Max 500. fields: Comma-separated fields to return. Defaults to standard detail fields.
Inputs: paper_ids (required), fields. Returns: result
get_authorB
Get detailed information about an author.
Args: author_id: Semantic Scholar author ID.
Inputs: author_id (required). Returns: result
get_author_papersA
Get papers written by a specific author.
Args: author_id: Semantic Scholar author ID. limit: Max papers to return (1-1000, default 10). offset: Pagination offset.
Inputs: author_id (required), limit, offset. Returns: result
get_citationsA
Get papers that cite a given paper.
Args: paper_id: The Semantic Scholar paper ID (or DOI, ArXiv ID, etc.). limit: Max citations to return (1-1000, default 10). offset: Pagination offset.
Inputs: paper_id (required), limit, offset. Returns: result
get_paperA
Get detailed information about a specific paper.
Args: paper_id: Semantic Scholar paper ID, DOI, ArXiv ID (prefix with "ArXiv:"), CorpusId (prefix with "CorpusId:"), PMID, ACL ID, or a URL.
Inputs: paper_id (required). Returns: result
get_referencesA
Get papers referenced by a given paper.
Args: paper_id: The Semantic Scholar paper ID (or DOI, ArXiv ID, etc.). limit: Max references to return (1-1000, default 10). offset: Pagination offset.
Inputs: paper_id (required), limit, offset. Returns: result
recommend_papersB
Get paper recommendations based on a given paper.
Args: paper_id: Semantic Scholar paper ID to get recommendations for. limit: Max recommendations to return (1-500, default 10).
Inputs: paper_id (required), limit. Returns: result
search_authorsB
Search for authors on Semantic Scholar.
Args: query: Author name to search for. limit: Max results (1-100, default 10).
Inputs: query (required), limit. Returns: result
search_papersA
Search for academic papers on Semantic Scholar.
Args: query: Search query (e.g. "transformer attention mechanism"). limit: Max results to return (1-100, default 10). year: Filter by year or range, e.g. "2020" or "2018-2023". fields_of_study: Comma-separated fields, e.g. "Computer Science,Mathematics". min_citation_count: Only include papers with at least this many citations.
Inputs: query (required), year, limit, fields_of_study, +1 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 9 tools
Each tool targets a distinct operation: search vs. lookup by ID, citation graph traversal, author retrieval, recommendations, and batch lookup. There is no meaningful overlap or ambiguity between the tools.
All tools follow a consistent snake_case verb_noun pattern: search_papers, get_paper, get_citations, get_author, recommend_papers, batch_get_papers. The naming is predictable and makes the action and target clear.
Nine tools is well-scoped for a scholarly literature and author discovery server. Each tool has a distinct purpose without the surface feeling bloated or sparse.
The server covers the core read-only academic search workflow: searching papers, retrieving details, batch lookups, citation/reference exploration, author search and paper lists, plus recommendations. No obvious gaps exist for its stated purpose.
Maintenance
Related MCP Connectors
OpenAlex MCP — wraps the OpenAlex API (scholarly works, free, no auth)
Academic research MCP server for paper search, citation checks, graphs, and deep research.
Academic literature search, retrieval, and private library management on top of OpenAlex.
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceEnables MCP clients to search and retrieve academic papers, explore citation networks, inspect author profiles and publications, and generate paper recommendations through the Semantic Scholar API, including batch operations and customizable fields.-
- FlicenseNot gradedqualityAmaintenanceEnables users to search and retrieve academic paper data, author profiles, citation networks, and paper recommendations via the Semantic Scholar API.-
- FlicenseNot gradedqualityAmaintenanceEnables users to search academic papers, analyze citation networks, retrieve author details and publication histories, and get paper recommendations through a unified MCP interface.-
- FlicenseNot gradedqualityAmaintenanceEnables searching academic papers, retrieving paper and author details, exploring citation networks, and receiving recommendations via the Semantic Scholar API.-