Semantic Scholar MCP Server
About
A FastMCP server implementation for the Semantic Scholar API, providing comprehensive access to academic paper data, author information, and citation networks. It is designed for researchers, developers, and anyone needing programmatic access to scholarly content and citation…
Explore
- 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
Install using FastMCP:
fastmcp install semantic-scholar-server.py --name "Semantic Scholar" -e SEMANTIC_SCHOLAR_API_KEY=your-api-key
The -e SEMANTIC_SCHOLAR_API_KEY parameter is optional. If not provided, the server will use unauthenticated access with lower rate limits.
- SEMANTIC_SCHOLAR_API_KEY: Your Semantic Scholar API key (optional)
- Get your key from Semantic Scholar API
- If not provided, the server will use unauthenticated access
paper_relevance_search
Search for papers using relevance ranking
paper_bulk_search
Bulk paper search with sorting options
paper_title_search
Find papers by exact title match
paper_details
Get comprehensive details about a specific paper
paper_batch_details
Efficiently retrieve details for multiple papers
paper_citations
Get papers that cite a specific paper
paper_references
Get papers referenced by a specific paper
author_search
Search for authors by name
author_details
Get detailed information about an author
author_papers
Get papers written by an author
author_batch_details
Get details for multiple authors
paper_recommendations_single
Get recommendations based on a single paper
paper_recommendations_multi
Get recommendations based on multiple papers
> Note: All tools are aligned with the official Semantic Scholar API documentation. Please refer to the official documentation for detailed field specifications and the latest updates.
- paper_relevance_search: Search for papers using relevance ranking
- Supports comprehensive query parameters including year range and citation count filters
- Returns paginated results with customizable fields
- paper_bulk_search: Bulk paper search with sorting options
- Similar to relevance search but optimized for larger result sets
- Supports sorting by citation count, publication date, etc.
- paper_title_search: Find papers by exact title match
- Useful for finding specific papers when you know the title
- Returns detailed paper information with customizable fields
- paper_details: Get comprehensive details about a specific paper
- Accepts various paper ID formats (S2 ID, DOI, ArXiv, etc.)
- Returns detailed paper metadata with nested field support
- paper_batch_details: Efficiently retrieve details for multiple papers
- Accepts up to 1000 paper IDs per request
- Supports the same ID formats and fields as single paper details
- paper_citations: Get papers that cite a specific paper
- Returns paginated list of citing papers
- Includes citation context when available
- Supports field customization and sorting
- paper_references: Get papers referenced by a specific paper
- Returns paginated list of referenced papers
- Includes reference context when available
- Supports field customization and sorting
- author_search: Search for authors by name
- Returns paginated results with customizable fields
- Includes affiliations and publication counts
- author_details: Get detailed information about an author
- Returns comprehensive author metadata
- Includes metrics like h-index and citation counts
- author_papers: Get papers written by an author
- Returns paginated list of author's publications
- Supports field customization and sorting
- author_batch_details: Get details for multiple authors
- Efficiently retrieve information for up to 1000 authors
- Returns the same fields as single author details
- paper_recommendations_single: Get recommendations based on a single paper
- Returns similar papers based on content and citation patterns
- Supports field customization for recommended papers
- paper_recommendations_multi: Get recommendations based on multiple papers
- Accepts positive and negative example papers
- Returns papers similar to positive examples and dissimilar to negative ones
A FastMCP server implementation for the Semantic Scholar API, providing comprehensive access to academic paper data, author information, and citation networks.
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
System Requirements
- Python 3.8+
- FastMCP framework
- Environment variable for API key (optional)
Installation
Install using FastMCP:
fastmcp install semantic-scholar-server.py --name "Semantic Scholar" -e SEMANTIC_SCHOLAR_API_KEY=your-api-key
The -e SEMANTIC_SCHOLAR_API_KEY parameter is optional. If not provided, the server will use unauthenticated access with lower rate limits.
Configuration
Environment Variables
- SEMANTIC_SCHOLAR_API_KEY: Your Semantic Scholar API key (optional)
- Get your key from Semantic Scholar API
- If not provided, the server will use unauthenticated access
Rate Limits
The server automatically adjusts to the appropriate rate limits:
With API Key:
- Search, batch and recommendation endpoints: 1 request per second
- Other endpoints: 10 requests per second
Without API Key:
- All endpoints: 100 requests per 5 minutes
- Longer timeouts for requests
Available MCP Tools
> Note: All tools are aligned with the official Semantic Scholar API documentation. Please refer to the official documentation for detailed field specifications and the latest updates.
Paper Search Tools
- paper_relevance_search: Search for papers using relevance ranking
- Supports comprehensive query parameters including year range and citation count filters
- Returns paginated results with customizable fields
- paper_bulk_search: Bulk paper search with sorting options
- Similar to relevance search but optimized for larger result sets
- Supports sorting by citation count, publication date, etc.
- paper_title_search: Find papers by exact title match
- Useful for finding specific papers when you know the title
- Returns detailed paper information with customizable fields
- paper_details: Get comprehensive details about a specific paper
- Accepts various paper ID formats (S2 ID, DOI, ArXiv, etc.)
- Returns detailed paper metadata with nested field support
- paper_batch_details: Efficiently retrieve details for multiple papers
- Accepts up to 1000 paper IDs per request
- Supports the same ID formats and fields as single paper details
Citation Tools
- paper_citations: Get papers that cite a specific paper
- Returns paginated list of citing papers
- Includes citation context when available
- Supports field customization and sorting
- paper_references: Get papers referenced by a specific paper
- Returns paginated list of referenced papers
- Includes reference context when available
- Supports field customization and sorting
Author Tools
- author_search: Search for authors by name
- Returns paginated results with customizable fields
- Includes affiliations and publication counts
- author_details: Get detailed information about an author
- Returns comprehensive author metadata
- Includes metrics like h-index and citation counts
- author_papers: Get papers written by an author
- Returns paginated list of author's publications
- Supports field customization and sorting
- author_batch_details: Get details for multiple authors
- Efficiently retrieve information for up to 1000 authors
- Returns the same fields as single author details
Recommendation Tools
- paper_recommendations_single: Get recommendations based on a single paper
- Returns similar papers based on content and citation patterns
- Supports field customization for recommended papers
- paper_recommendations_multi: Get recommendations based on multiple papers
- Accepts positive and negative example papers
- Returns papers similar to positive examples and dissimilar to negative ones
Usage Examples
Basic Paper Search
results = await paper_relevance_search(
context,
query="machine learning",
year="2020-2024",
min_citation_count=50,
fields=["title", "abstract", "authors"]
)
Paper Recommendations
```python
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



