semantic-scholar-mcp
Provides tools to search for academic papers, retrieve paper details, author information, and generate formatted citations using the Semantic Scholar API.
Click on "Install 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-mcpsearch for recent papers on reinforcement learning"
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
Note: A lightweight CLI alternative is available at
semantic-scholar-cli. It is designed for LLM tool-use workflows with strict typed inputs, stable JSON envelopes, and small default payloads — usable without an MCP server.
A Model Context Protocol (MCP) server that provides access to Semantic Scholar's academic paper database through their API.
Features
Paper Search: Search for academic papers with filters for year, fields of study, and open access
Paper Details: Get comprehensive information about specific papers including abstracts, authors, and citation counts
Author Information: Retrieve detailed author data including affiliations, h-index, and citation metrics
Citation Export: Generate citations in multiple formats (BibTeX, APA, MLA, Chicago)
Usage
Get API Key
While the Semantic Scholar API can be used without authentication, having an API key provides higher rate limits. To get an API key:
Visit Semantic Scholar API
Request an API key
Add to Claude Code configuration
Run the following command to add the Semantic Scholar MCP server to your project-scope Claude Code configuration:
claude mcp add semantic-scholar-mcp -s project -e SEMANTIC_SCHOLAR_API_KEY="your-api-key-here" -- uv run --with "git+https://github.com/FujishigeTemma/semantic-scholar-mcp" semantic-scholar-mcp serveOr manually add it to your .mcp.json configuration file:
{
"mcpServers": {
"semantic-scholar-mcp": {
"type": "stdio",
"command": "uv",
"args": [
"run",
"--with",
"git+https://github.com/FujishigeTemma/semantic-scholar-mcp",
"semantic-scholar-mcp",
"serve"
],
"env": {
"SEMANTIC_SCHOLAR_API_KEY": "your-api-key-here"
}
}
}
}Available Tools
search_paper - Search for papers
Required:
query(search terms)Optional:
fields,limit,offset,year,fieldsOfStudy,openAccessPdf
get_paper - Get detailed paper information
Required:
paper_id(supports multiple ID types: DOI, ArXiv ID, S2 Paper ID, etc.)Optional:
fields(customize returned data, see: Field Customization)
get_authors - Get author information for a paper
Required:
paper_idOptional:
fields,limit,offset
get_citation - Generate formatted citations
Required:
paper_idOptional:
format(bibtex, apa, mla, chicago)
CLI Examples
Search for papers:
semantic-scholar-mcp tools search_paper "machine learning" --limit 5 --year "2020-2023"Get paper details:
semantic-scholar-mcp tools get_paper "10.1038/nature12373"Get authors for a paper:
semantic-scholar-mcp tools get_authors "649def34f8be52c8b66281af98ae884c09aef38b"Generate BibTeX citation:
semantic-scholar-mcp tools get_citation "649def34f8be52c8b66281af98ae884c09aef38b" --format bibtexField Customization
All tools support a fields parameter to customize the returned data. This allows you to request only the information you need, reducing response size and improving performance.
Paper Fields (for search_paper and get_paper)
Basic fields:
paperId- Unique paper identifiertitle- Paper titleabstract- Paper abstractyear- Publication yearpublicationDate- Full publication date
Author information:
authors- List of authors (returnsauthorIdandnameby default)authors.authorId- Author's unique identifierauthors.name- Author's nameauthors.affiliations- Author's institutional affiliationsauthors.citationCount- Author's total citation countauthors.hIndex- Author's h-index
Citation and reference data:
citationCount- Number of times this paper has been citedreferenceCount- Number of references in this papercitations- List of papers that cite this paperreferences- List of papers referenced by this paper
Publication details:
journal- Journal information (name, volume, pages, etc.)venue- Publication venuepublicationTypes- Types of publication (e.g., JournalArticle, Conference)fieldsOfStudy- Academic fields (e.g., Computer Science, Medicine)s2FieldsOfStudy- Semantic Scholar's field classifications
Additional metadata:
doi- Digital Object IdentifierarxivId- ArXiv identifierurl- Paper URLopenAccessPdf- Open access PDF informationembedding- Paper embedding vectors (for similarity analysis)
Author Fields (for get_authors)
authorId- Unique author identifiername- Author's nameaffiliations- Institutional affiliationscitationCount- Total citation counthIndex- h-index metricpaperCount- Number of papers publishedurl- Author's profile URL
Example Field Usage
Get basic paper information:
semantic-scholar-mcp tools search_paper "machine learning" --fields "paperId,title,year,citationCount"Get detailed paper with author affiliations:
semantic-scholar-mcp tools get_paper "10.1038/nature12373" --fields "title,abstract,authors.name,authors.affiliations,journal,year"Get comprehensive author information:
semantic-scholar-mcp tools get_authors "649def34f8be52c8b66281af98ae884c09aef38b" --fields "authorId,name,affiliations,citationCount,hIndex,paperCount"Development
Setting up the development environment
uv sync
uv run pytest tests/
uv run ruff format .
uv run ruff check . --fix
uv run ty checkProject Structure
semantic-scholar-mcp/
src/
semantic_scholar_mcp/
__init__.py
server.py # Main server implementation
cli.py # CLI interface
tests/ # Test files
pyproject.toml # Project configuration
README.md # This fileAPI Rate Limits
Without API key: 100 requests per 5 minutes
With API key: 1 request per second (higher limits available on request)
Supported Paper ID Types
The API supports various paper identifier formats:
Semantic Scholar ID (e.g., "649def34f8be52c8b66281af98ae884c09aef38b")
DOI (e.g., "10.1038/nature12373")
ArXiv ID (e.g., "arXiv:2106.15928")
MAG ID
ACL ID
PubMed ID
Corpus ID
License
MIT License
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Acknowledgments
This project uses the Semantic Scholar API to access academic paper data.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/FujishigeTemma/semantic-scholar-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server