Skip to main content
Glama
SMABoundless

semantic-scholar-mcp-server

by SMABoundless

Semantic Scholar MCP Server

An MCP (Model Context Protocol) server for the Semantic Scholar Academic Graph API — 200M+ papers with citation networks, author profiles, and full-text snippet search.

Built with the MCP TypeScript SDK and Zod.

Tools (16 total)

Papers (9 tools)

Tool

Description

paper_search

Search papers by keyword with filtering (year, venue, field, open access, citations, type)

paper_search_bulk

Bulk search with cursor pagination for large result sets (up to 10M)

paper_match

Find the single best match for a known paper title

paper_autocomplete

Autocomplete partial paper titles (up to 10 suggestions)

paper_get

Get full details for a paper by ID (S2 ID, DOI, ArXiv, PMID, etc.)

paper_batch

Retrieve up to 500 papers in a single request

paper_citations

Get papers that cite a given paper (forward citations)

paper_references

Get a paper's reference list (bibliography)

paper_authors

Get author details for a specific paper

Authors (4 tools)

Tool

Description

author_get

Get full author profile (h-index, affiliations, stats)

author_batch

Retrieve up to 1000 author profiles in one request

author_search

Search for authors by name

author_papers

Get all papers by a specific author

Recommendations (2 tools)

Tool

Description

recommendations_for_paper

Get ML-powered paper recommendations for a given paper

recommendations_from_lists

Get recommendations from positive/negative example papers

Snippets (1 tool)

Tool

Description

snippet_search

Search within paper bodies for specific text passages

Related MCP server: Semantic Scholar MCP Server

Setup

Get a free key at semanticscholar.org/product/api. Without a key, requests are heavily rate-limited.

2. Install and build

cd semanticscholar-mcp-server
npm install
npm run build

3. Add to Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "semantic-scholar": {
      "command": "node",
      "args": ["/path/to/semanticscholar-mcp-server/dist/index.js"],
      "env": {
        "SEMANTICSCHOLAR_API_KEY": "your-api-key"
      }
    }
  }
}

Or if using Claude Code CLI:

claude mcp add semantic-scholar \
  node \
  /path/to/semanticscholar-mcp-server/dist/index.js \
  -e SEMANTICSCHOLAR_API_KEY=your-api-key

Features

  • Multiple ID formats: Accepts S2 Paper IDs, DOIs, ArXiv IDs, PMIDs, PMCIDs, CorpusIds

  • Markdown or JSON output: Every tool supports response_format: "json" for structured data

  • Custom field selection: Override default fields with the fields parameter

  • Built-in rate limiting: Token bucket limiter prevents API throttling

  • Batch operations: Retrieve up to 500 papers or 1000 authors in a single call

Usage examples

  • "Search Semantic Scholar for papers on transformer architectures from 2023"

  • "Get recommendations for papers similar to this one"

  • "Find the citation network for DOI 10.1038/nature14539"

  • "Search for text snippets mentioning 'chain of thought prompting'"

  • "Look up author profile for researcher 1741101"

License

MIT

Available Tools

16 tools
author_batchA

Retrieve profiles for multiple authors in a single request (up to 1000). More efficient than calling author_get repeatedly.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
author_idsYesList of Semantic Scholar Author IDs to retrieve (1-1000).
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It correctly implies read-only behavior ('Retrieve') and mentions the batch size limit, but does not disclose error handling, side effects, or what happens with missing IDs. Adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with core purpose, no wasted words. Efficient and structurally sound.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (3 params, 100% coverage, no output schema), the description is fairly complete. It covers purpose and efficiency advantage, but could mention output structure or error recovery. Still, it suffices for common usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond what the schema already provides for parameters. No extra context on fields or response_format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves profiles for multiple authors, specifies the batch limit (1000), and distinguishes from sibling author_get by highlighting efficiency. The verb 'Retrieve' and resource 'multiple authors' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use: when you need multiple author profiles more efficiently than calling author_get repeatedly. It implies author_get for single authors but lacks explicit when-not or alternatives. Still clear and helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

author_getC

Retrieve full profile for a Semantic Scholar author. Returns name, affiliations, homepage, h-index, paper count, and citation count.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
author_idYesSemantic Scholar Author ID (numeric string, e.g. '1741101')
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It lists return fields but does not disclose behavioral traits such as read-only nature, rate limits, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with key information upfront. It efficiently conveys the purpose without wordiness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters and no output schema, the description adequately states what is returned but lacks information on error handling, pagination, or the full scope of the 'fields' parameter usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all parameters. The description adds a summary of returned fields but no additional semantic meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a full author profile from Semantic Scholar and lists specific fields. However, it does not differentiate from the sibling tool 'author_batch' which also retrieves author profiles.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like 'author_search' or 'author_papers'. The description does not mention prerequisites or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

author_papersA

Get all papers published by a specific author, paginated. Returns the author's publication list with title, year, venue, and citation counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results to return (1-100, default: 10)
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
offsetNoOffset for pagination (default: 0)
author_idYesSemantic Scholar Author ID (numeric string, e.g. '1741101')
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions pagination and return fields (title, year, venue, citation counts), but does not disclose ordering, rate limits, authentication needs, or error behavior. The description is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise at two sentences, front-loading the purpose and key output details. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and moderate complexity (5 parameters, pagination), the description partially addresses return values (listing some fields) but lacks details on pagination behavior (e.g., total count, order). It is adequate but leaves some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema coverage is 100%, so the baseline is 3. The description adds marginal value by hinting at default fields ('title, year, venue, and citation counts'), but this is already implied by the parameter defaults. The description does not significantly augment parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get all papers'), the resource ('published by a specific author'), and pagination support. It provides a specific verb and resource, effectively distinguishing it from sibling tools like author_get (which retrieves author details) and paper_search (which searches across papers).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when needing an author's publication list, but it does not provide explicit when-to-use or when-not-to-use guidance, nor does it mention alternative tools among the many siblings. The context is implied but not explicitly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_authorsA

Get the list of authors for a specific paper with author-level details (affiliations, h-index, paper count, citation count).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results to return (1-100, default: 10)
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
offsetNoOffset for pagination (default: 0)
paper_idYesPaper identifier. Accepts: bare S2 Paper ID (40-char hash), DOI:10.xxxx/xxxx, ARXIV:xxxx.xxxx, PMID:nnnnn, PMCID:PMCnnnnn, MAG:nnnnn, ACL:xxx, CorpusId:nnnnn
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose all behavioral traits. It states the output (list of authors with details) but does not mention pagination behavior, rate limits, authentication requirements, or any side effects. The description is adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that conveys the essential purpose without any redundancy. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 5 parameters and no output schema or annotations, the description is minimal. It covers the core functionality but omits details on pagination, response format implications, and edge cases. It is barely adequate for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with all parameters described in the schema. The description adds no additional meaning beyond the schema. It lists the output fields but does not relate them to parameters or provide usage context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('list of authors for a specific paper') with explicit details (affiliations, h-index, etc.). It clearly distinguishes from sibling tools like 'paper_get' (which gets paper metadata) and 'author_search' (which searches for authors).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage is implied: use when you need author details for a known paper. However, no explicit when-to-use or when-not-to-use guidance is provided, and no alternatives are mentioned, despite many sibling tools being available.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_autocompleteA

Autocomplete a partial paper title, returning up to 10 suggestions. Use for title disambiguation or quick lookup of papers by partial title.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesPartial paper title to autocomplete (max 100 characters).
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries the burden. It mentions returning up to 10 suggestions but lacks details on ordering, case sensitivity, or behavior when no matches are found. Adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences pack essential information: what the tool does and its use cases. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity of the tool (2 params, no output schema), the description covers the key aspects: action, limit, use cases. Could mention the source of suggestions but sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage with descriptions for both parameters. The description adds minimal extra meaning beyond the schema, so baseline score applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool action: autocomplete a partial paper title, returning up to 10 suggestions. It also specifies use cases for disambiguation and quick lookup, distinguishing it from sibling tools like paper_search or paper_get.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit guidance provided: 'Use for title disambiguation or quick lookup of papers by partial title.' This implies when to use it, though it doesn't explicitly state when not to use or list alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_batchA

Retrieve details for multiple papers in a single request (up to 500). More efficient than calling paper_get repeatedly. Pass a list of paper IDs in any supported format.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
paper_idsYesList of paper IDs to retrieve (1-500). Supports all ID formats.
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description reveals batch limit (500) and ID format flexibility, but lacks details on error handling, ordering, or return structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with action, no fluff. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple batch retrieval tool, the description covers key aspects (limit, efficiency, ID format). Missing mention of fields parameter behavior, but schema covers it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and description only reiterates ID format support, adding no new meaning beyond the schema's parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves details for multiple papers, distinguishes itself from paper_get by emphasizing efficiency and batch nature.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly contrasts with paper_get for repeated calls, indicating when to use. Does not list when not to use or other alternatives like search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_citationsA

Get papers that cite a given paper (forward citations / 'cited by'). Shows which papers reference this work, with influential citation annotations and citation context snippets.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results to return (1-100, default: 10)
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
offsetNoOffset for pagination (default: 0)
paper_idYesPaper identifier. Accepts: bare S2 Paper ID (40-char hash), DOI:10.xxxx/xxxx, ARXIV:xxxx.xxxx, PMID:nnnnn, PMCID:PMCnnnnn, MAG:nnnnn, ACL:xxx, CorpusId:nnnnn
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Mentions 'influential citation annotations and citation context snippets' which adds value. However, does not disclose rate limits, auth needs, or behavior on invalid inputs. Adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with key action, no unnecessary words. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema provided. Description mentions what is returned (influential citations, context snippets) but lacks details on output structure, pagination, or total count. Incomplete for a tool without an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. Description adds no extra meaning beyond the schema's detailed parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb 'Get' and the resource 'papers that cite a given paper'. Explicitly distinguishes from siblings by using terms 'forward citations / cited by' and contrasts with paper_references.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implicitly distinguishes from paper_references via 'forward citations', but does not provide explicit when-to-use or when-not-to-use guidance. No mention of alternatives or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_getB

Retrieve full details for a single paper by its identifier. Returns title, abstract, authors, venue, year, citation counts, external IDs, open access PDF link, and more.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
paper_idYesPaper identifier. Accepts: bare S2 Paper ID (40-char hash), DOI:10.xxxx/xxxx, ARXIV:xxxx.xxxx, PMID:nnnnn, PMCID:PMCnnnnn, MAG:nnnnn, ACL:xxx, CorpusId:nnnnn
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. It lists returned fields but omits critical behavioral details such as read-only nature, error handling, rate limits, or response format behavior (beyond listing fields).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single clear sentence listing returned information. It is concise and front-loaded, but could be slightly more structured (e.g., mentioning default output format).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-paper retrieval tool with well-documented parameters, the description conveys core purpose and return content. However, it lacks output schema details and does not indicate response format (covered in schema) or possible errors, leaving some gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with detailed descriptions for all three parameters. The tool description adds minimal extra value beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verb 'retrieve' and resource 'full details for a single paper by its identifier', clearly distinguishing it from sibling tools that search or batch-retrieve papers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for single paper lookup but does not explicitly state when to use this tool versus alternatives like paper_batch or paper_search. No guidance on when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_matchA

Find the single best paper matching a given title string. Useful for resolving a known paper title to its Semantic Scholar ID and metadata. More precise than keyword search when you know the exact title.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe paper title to match.
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only states that the tool finds the 'single best' match, but does not disclose behavior on no match, multiple near-matches, or any other edge cases. No mention of authentication, rate limits, or potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose, followed by usage context. Every word contributes value. No redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 3 parameters, no output schema, and no annotations, the description covers purpose and usage guidance adequately but lacks details on return behavior (e.g., null on no match) and matching algorithm specifics. It's minimally acceptable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description does not add additional meaning to the parameters beyond what the schema already provides. No examples or clarifications beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description explicitly states the tool finds the single best paper matching a given title string. It specifies the verb 'find' and resource 'paper', and clearly distinguishes from sibling tools like 'paper_search' (keyword search) by emphasizing exact title matching.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance: 'Useful for resolving a known paper title to its Semantic Scholar ID and metadata. More precise than keyword search when you know the exact title.' This tells when to use it and contrasts with an alternative (keyword search). However, it doesn't explicitly state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_referencesA

Get papers cited by a given paper (its bibliography / reference list). Shows what this paper references, with influential citation annotations.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of results to return (1-100, default: 10)
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
offsetNoOffset for pagination (default: 0)
paper_idYesPaper identifier. Accepts: bare S2 Paper ID (40-char hash), DOI:10.xxxx/xxxx, ARXIV:xxxx.xxxx, PMID:nnnnn, PMCID:PMCnnnnn, MAG:nnnnn, ACL:xxx, CorpusId:nnnnn
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It states the tool returns references with influential citation annotations, implying a read operation. However, it does not explicitly state read-only, authorization needs, or any behavioral caveats. Adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with main action. Every sentence adds value. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, description adequately conveys purpose and key feature (influential citation annotations). Could explain output format or annotation details, but basic completeness is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. Description does not add any information beyond the schema; it only restates the tool's purpose. No additional parameter insights provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states verb 'Get' and resource 'papers cited by a given paper', explicitly differentiating from sibling tool paper_citations (incoming citations). The phrase 'bibliography / reference list' further clarifies the purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies usage for obtaining references of a paper. While it doesn't explicitly state when not to use or name alternatives, the context of siblings (e.g., paper_citations) makes it clear enough. Lacks explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

paper_search_bulkA

Bulk-search papers with cursor-based pagination for retrieving large result sets (up to 10M results). Returns a continuation token to fetch subsequent pages. Use for systematic literature collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortNoSort order: 'citationCount' (desc), 'publicationDate' (desc), or 'paperId' (asc). Default: relevance.
yearNoYear filter, e.g. '2020' or '2018-2023'.
limitNoResults per page (1-1000, default: 100).
queryYesSearch query string.
tokenNoContinuation token from a previous bulk search response to get next page.
venueNoVenue filter, comma-separated.
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
fieldsOfStudyNoFields of study, comma-separated.
openAccessPdfNoOnly open access papers.
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown
minCitationCountNoMinimum citation count.
publicationTypesNoPublication types, comma-separated.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose all behavioral traits. It mentions cursor-based pagination and a continuation token, and sets an upper limit of 10M results. However, it lacks details on rate limits, authentication, cost, or what happens if the result set exceeds 10M. The basic pagination behavior is covered, but further transparency is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences: first states purpose and key feature, second adds pagination details, third gives usage context. Each sentence is concise and valuable, with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (12 parameters, many siblings, no output schema), the description is adequate but incomplete. It explains pagination and token usage but does not describe the response format beyond the token, nor guide on using filters. A more complete description would include a brief response structure or usage step.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for all 12 parameters, so the baseline is 3. The description does not add new meaning beyond the schema; it reiterates the token parameter's purpose but does not enhance understanding of other parameters. No additional semantics provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Bulk-search papers with cursor-based pagination for retrieving large result sets (up to 10M results)'. It uses specific verbs and resources, and distinguishes the tool from its sibling (e.g., paper_search) by emphasizing large-scale retrieval and systematic literature collection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context by stating 'Use for systematic literature collection'. It implies usage for large result sets, though it does not explicitly mention when not to use it or name alternative tools. A score of 4 is given for clear guidance without exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommendations_for_paperA

Get papers recommended as similar or related to a given paper, using Semantic Scholar's machine learning recommendation engine. Choose 'recent' pool for latest papers or 'all-cs' for all Computer Science papers.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoRecommendation pool: 'recent' for recently added papers (default), 'all-cs' for all Computer Science papers.recent
limitNoNumber of recommendations to return (1-500, default: 10).
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
paper_idYesPaper identifier. Accepts: bare S2 Paper ID (40-char hash), DOI:10.xxxx/xxxx, ARXIV:xxxx.xxxx, PMID:nnnnn, PMCID:PMCnnnnn, MAG:nnnnn, ACL:xxx, CorpusId:nnnnn
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavior. It mentions the ML recommendation engine, hinting at non-deterministic results, but does not explain result variability, potential delays, or that recommendations may change over time. It provides the pool options but lacks detail on what 'recent' means. No contradiction with annotations (none provided).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, front-loaded with the purpose, and includes a key usage hint about pools. Every sentence contributes meaning without redundancy or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (ML recommendation, 5 parameters, no output schema), the description covers the core functionality and pool options. However, it lacks details on output format (though response_format param exists), potential rate limits, or that it operates on a single paper per call. Still, it is sufficient for an agent to understand usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are already described in the schema. The tool description adds value by explaining the two pool options and the general recommendation purpose, going beyond what the schema alone provides (e.g., schema says 'recent' is default, description explains it's for 'latest papers'). This compensates for the lack of annotation context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get papers recommended as similar or related to a given paper, using Semantic Scholar's machine learning recommendation engine.' It distinguishes from siblings like paper_references (references) and paper_search (query-based) by specifying it's a recommendation engine. The two pool options further clarify scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for discovering related papers but does not explicitly state when to prefer this over alternatives like paper_references or paper_search. It mentions pool choices but lacks guidance on when to use 'recent' vs 'all-cs' or when not to use the tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommendations_from_listsA

Get paper recommendations based on a list of positive example papers (papers you like) and optional negative examples (papers to avoid). Useful for discovering papers in a specific research niche or building a reading list.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of recommendations to return (1-500, default: 10).
fieldsNoComma-separated fields to return, overriding defaults. Paper fields: paperId, title, abstract, authors, year, citationCount, referenceCount, influentialCitationCount, isOpenAccess, openAccessPdf, fieldsOfStudy, externalIds, url, venue, publicationVenue, publicationTypes, publicationDate, journal, citations, references. Author fields: authorId, name, affiliations, homepage, paperCount, citationCount, hIndex.
response_formatNoOutput format: 'markdown' for human-readable text (default), 'json' for raw structured datamarkdown
negative_paper_idsNoOptional list of paper IDs to steer away from (0-100). These are used as negative examples.
positive_paper_idsYesList of paper IDs the user finds relevant/interesting (1-100). These are used as positive examples for the recommendation engine.

TDQS

A3.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full responsibility for behavioral disclosure. It only states 'Get paper recommendations' without indicating read-only status, authentication needs, rate limits, or error behavior (e.g., for bad IDs). While the core function is clear, significant behavioral traits are missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences: first defines the action, second suggests use cases. No redundant phrases. Every sentence adds value; the description is as short as possible while conveying essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 parameters (all described in schema), no output schema, and no annotations, the description covers the core purpose but omits details like return format, default output fields, and algorithmic behavior. It is adequate but leaves gaps for an agent to fully interpret invocation results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3. The description adds meaning: 'positive example papers (papers you like)' and 'negative examples (papers to avoid)', which enriches the schema descriptions. This helps agents understand the semantic role of parameters beyond technical definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get paper recommendations based on a list of positive example papers... and optional negative examples.' It uniquely identifies the resource (paper recommendations) and method (list-based positives/negatives), distinguishing it from siblings like recommendations_for_paper (single seed) and paper_search (query-based).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides usage context: 'Useful for discovering papers in a specific research niche or building a reading list.' This implies when to use it but lacks explicit exclusions or comparisons to alternatives like recommendations_for_paper or paper_search. Clear context, no exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 16 tool updatesv1.0.0
    • First observedauthor_batch
    • First observedauthor_get
    • First observedauthor_papers
    • First observedauthor_search
    • First observedpaper_authors
    • First observedpaper_autocomplete
    • First observedpaper_batch
    • First observedpaper_citations
    • First observedpaper_get
    • First observedpaper_match
    • First observedpaper_references
    • First observedpaper_search
    • First observedpaper_search_bulk
    • First observedrecommendations_for_paper
    • First observedrecommendations_from_lists
    • First observedsnippet_search

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a clear, distinct purpose. Author tools (batch, get, papers, search) and paper tools (authors, autocomplete, batch, citations, get, match, references, search, bulk search, recommendations, snippet) are cleanly separated with no overlapping functionality.

Naming Consistency5/5

All tool names follow a consistent pattern: resource prefix (author_ or paper_) followed by a descriptive verb (e.g., get, search, batch). Exceptions like recommendations_for_paper and snippet_search still fit the overall style with underscores.

Tool Count5/5

16 tools is well-scoped for the academic paper and author domain. The set covers search, retrieval, batch operations, recommendations, and advanced features like snippet search without unnecessary bloat.

Completeness5/5

The tool set provides comprehensive coverage for the intended use case: author and paper retrieval, search (including bulk), recommendations, and citation exploration. Missing create/update/delete is appropriate for a read-only API, and no obvious gaps exist.

Maintenance

ActivityStale
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/SMABoundless/semanticscholar-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server