semantic-scholar-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_RECEIPT_DIR | No | Directory where query receipts are stored as JSONL files. When set, receipt logging is enabled. | |
| MCP_RECEIPT_LOG | No | Legacy path to a single JSONL receipt file. Ignored when MCP_RECEIPT_DIR is set. | |
| MCP_RECEIPT_STRICT | No | If set to '1', receipt logging failures raise an error instead of being silently ignored. | |
| MCP_RECEIPT_SESSION | No | Session slug used for organizing receipts. | |
| SEMANTIC_SCHOLAR_API_KEY | No | Your Semantic Scholar API key. Optional but recommended to avoid rate limits. |
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
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| s2_search_papersA | Search Semantic Scholar for papers by keyword, with year, field-of-study, citation-count and open-access filters. Returns the unified envelope. Matching is relevance-ranked over title, abstract and venue (matching_mode relevance_ranked); result.total is the API's estimate. Titles are typed by script: kana or Hangul decide ja or ko, Latin goes to en, and a han-only title stays untyped in extra.title. Coverage of non-English humanities work is thin — a ZERO_RESULTS here is weak evidence; consult the CiNii, J-STAGE, NDL and KCI servers. |
| s2_get_paperA | Look up one paper by S2 ID, DOI, ArXiv ID, or URL. Returns the unified envelope with a single item, or NOT_FOUND. |
| s2_batch_papersA | Look up up to 500 papers at once by ID. Returns the unified envelope; identifiers the API could not resolve are counted in a PARTIAL_NOT_FOUND diagnostic and listed in coverage_note. |
| s2_citationsA | Papers citing a given paper (citations) or cited by it (references). Returns the unified envelope. The API reports no total for this endpoint, so result.total is the returned count (TOTAL_NOT_REPORTED). |
| s2_search_authorsA | Search for authors by name. Returns the unified envelope; each item is an author record (record_type author) with affiliations, paper count, citation count and h-index in extra. |
| s2_get_authorA | Look up one author by Semantic Scholar Author ID. Returns the unified envelope with a single author item, or NOT_FOUND. |
| s2_author_papersA | Papers by one author, paginated. Returns the unified envelope; result.total is the returned count (TOTAL_NOT_REPORTED). |
| s2_recommend_singleA | Papers similar to one seed paper, by Semantic Scholar's recommender. Returns the unified envelope (matching_mode similarity_ranked). |
| s2_recommend_multiA | Papers similar to a set of positive seed papers and unlike optional negative ones. Returns the unified envelope (matching_mode similarity_ranked); the seed IDs are in query.params so the receipt fixes them. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Most tools target clearly distinct operations: paper lookup, author lookup, search, citations, and recommendations. The main overlap is s2_recommend_single vs s2_recommend_multi, where the single-seed version is effectively a special case of the multi-seed one, which could cause misselection.
All tools use a consistent s2_ prefix and snake_case, with mostly verb_noun naming (s2_get_author, s2_search_papers, s2_batch_papers). A few are noun-only or noun_noun (s2_citations, s2_author_papers, s2_recommend_single vs _multi), but the convention remains readable and predictable.
Nine tools is well within the ideal range and each maps to a meaningful Semantic Scholar capability. No bloat or padding; the only questionable one is the redundant recommend_single, which is minor.
The surface covers the core read-only scholarly workflows: paper search/get/batch, author search/get/papers, citation graph traversal, and recommendations. Minor gaps exist (e.g., separate references vs citations listing, venue/field enumeration, batch author lookup), but agents can work around them for most tasks.