Skip to main content
Glama
smaniches

Semantic Scholar MCP Server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SEMANTIC_SCHOLAR_API_KEYNoYour Semantic Scholar API key for accessing the Semantic Scholar API. Sign up at https://www.semanticscholar.org/product/api

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
semantic_scholar_search_papersA

Search for academic papers.

Relevance-ranked plain-text search over 200M+ papers, with year,
field-of-study, publication-type, open-access, and citation-count filters.
The query is sent unchanged; boolean and quoted-phrase syntax is
documented only for semantic_scholar_bulk_search. Page with
offset/limit (max 100 per call). For sorted or very large result sets
use semantic_scholar_bulk_search; to search inside paper full text use
semantic_scholar_snippet_search; to resolve one known title use
semantic_scholar_match_paper. Returns Markdown by default,
response_format='json' for raw JSON.
semantic_scholar_get_paperA

Get paper details. Accepts: S2 ID, DOI:xxx, ARXIV:xxx, PMID:xxx, CorpusId:xxx

Returns title, abstract, authors, venue, year, citation counts, TLDR,
and open-access PDF link for one paper, e.g. paper_id='ARXIV:1706.03762'.
Set include_citations / include_references to also list citing and
referenced papers (fetched in parallel, 1-100 per page each). Paginate
the two directions independently with citations_offset/references_offset;
JSON output exposes citations_page.next and references_page.next.
Results are cached
in memory for 5 minutes; an unknown ID raises a not-found error. Client-side
requests use a 1.0-second unkeyed interval and a conservative 1.1-second
authenticated default; explicitly higher S2-assigned quotas can be configured.
429/502/503 responses retry automatically with backoff. Returns
Markdown by default, response_format='json' for raw JSON. To fetch many
papers at once use semantic_scholar_bulk_papers.
semantic_scholar_search_authorsA

Search for academic authors by name.

Example: query='Yoshua Bengio'. Several distinct researchers can share a
name, so confirm identity with semantic_scholar_get_author (affiliations,
h-index, publications) before attributing work; to list the authors of a
specific paper use semantic_scholar_paper_authors instead. Page with
offset/limit (max 100 per call, default 10). Returns Markdown by default,
response_format='json' for raw JSON.
semantic_scholar_get_authorB

Get author profile with optional publications list.

semantic_scholar_recommendationsA

Get paper recommendations based on a seed paper.

Provide one paper you already know (e.g. paper_id='ARXIV:1706.03762') and
receive up to `limit` similar papers. from_pool picks the candidate pool:
'recent' (default, recently published papers from all fields) or 'all-cs'
(computer-science papers of any age). When steering with several positive
or negative examples, use semantic_scholar_multi_recommend instead. An
unknown seed ID raises a not-found error. Client-side requests use a
1.0-second unkeyed interval and a conservative 1.1-second authenticated
default; explicitly higher S2-assigned quotas can be configured. 429/502/503
responses retry automatically with backoff. Returns Markdown by default,
response_format='json' for raw JSON.
semantic_scholar_bulk_papersA

Retrieve multiple papers in a single request (max 500).

semantic_scholar_bulk_searchA

Search papers with sorting and cursor-based pagination for large result sets.

Unlike regular search, supports sorting (e.g., by citation count), boolean
query syntax, and returns a continuation token for paging through all
results. The observed endpoint ignores ``limit`` and may return up to 1000
papers per page; the full page is returned so no row is skipped.
semantic_scholar_export_citationA

Export a citation for a paper in BibTeX format.

Use once you have a paper ID (from semantic_scholar_search_papers or
semantic_scholar_match_paper), e.g. paper_id='DOI:10.18653/v1/N18-3011'.
Returns the BibTeX entry as plain text - there is no response_format
option. Raises an error for an unknown ID, a paper without citation data,
or any format other than 'bibtex'.
semantic_scholar_match_paperA

Find the closest title match; preserve S2's unscaled numeric matchScore.

semantic_scholar_paper_authorsA

Get full author profiles for a paper's authors.

Unlike the abbreviated author list embedded in semantic_scholar_get_paper
results, this returns each author's complete profile - affiliations,
h-index, paper and citation counts - plus author IDs usable with
semantic_scholar_get_author. Example: paper_id='DOI:10.18653/v1/N18-3011'.
Authors are returned in listed order (limit 1-1000, default 100). Returns
Markdown by default, response_format='json' for raw JSON.
semantic_scholar_author_batchA

Retrieve multiple authors in a single request (max 1000).

semantic_scholar_multi_recommendA

Get recommendations using multiple positive and negative example papers.

Use instead of semantic_scholar_recommendations when steering with more
than one example: results resemble positive_paper_ids and are pushed away
from negative_paper_ids. Example:
positive_paper_ids=['ARXIV:1706.03762', 'DOI:10.18653/v1/N19-1423'],
negative_paper_ids=['ARXIV:1409.0473']. Accepts 1-100 positive and up to
100 negative IDs in any supported paper-ID format; malformed IDs raise an
error before any request is made. Returns up to `limit` (1-500, default
10) papers, Markdown by default or response_format='json' for raw JSON.
semantic_scholar_snippet_searchA

Search within paper full text. Returns text snippets with context.

Note: This endpoint is heavily rate-limited without an API key.
semantic_scholar_statusA

Check server health, API connectivity, and key status.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.8/5.0

Scored across 14 tools

Disambiguation4/5

Search-related tools (search_papers, bulk_search, snippet_search, match_paper) overlap in broad purpose, but descriptions explicitly cross-reference and delineate use cases; author and recommendation variants are also clearly separated. Minor potential confusion remains between search_papers and bulk_search, so not perfect.

Naming Consistency3/5

All names use the semantic_scholar_ prefix and snake_case, but suffix conventions mix verb_noun forms (search_papers, get_author) with noun phrases (recommendations, bulk_papers, paper_authors, author_batch, status). Word order is also inconsistent between bulk_search and search_papers, though names remain readable.

Tool Count5/5

Fourteen tools is well within a reasonable range for a broad academic-paper API, and each tool maps to a distinct operation or useful batch variant. The set does not feel bloated; core search, retrieval, author, recommendation, and export workflows each earn their place.

Completeness4/5

The surface covers core read-only Semantic Scholar workflows: relevance search, bulk search, snippet search, title matching, paper detail and bulk retrieval, author search/profile/batch/paper authors, recommendations, citation export, and health status. Minor gaps include BibTeX-only citation export and no standalone citation/reference graph tool, though get_paper can include those lists.

Maintenance

ActivityActive
ResponsivenessResponsive