A side-by-side look at the Find Research Papers and Semantic Scholar MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Find Research Papers for research work as a local process; choose Semantic Scholar MCP for research as a local process. You can also run both side by side in one mcpServers block.
search_papers, get_paper, get_research_method.semantic_scholar_search_papers, semantic_scholar_get_paper, semantic_scholar_search_authors.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Research | Research |
| Quality signal | 63/100 · Good | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | No auth required |
| Pricing | Not declared | Free |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 6 | 23 |
| Directory activity | 2 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 7 | 14 |
| Full listing | View Find Research Papers | View Semantic Scholar MCP |
search_papersSearch scholarly literature across multiple sources (arXiv, OpenAlex, Crossref, Semantic Scholar, PubMed)get_paperResolve one paper by identifier and return its metadata plus references (papers it cites) and citations (papers citing it) — works even for paywalled papersget_research_methodHouse method for using this server: tiers, rules, source quirks, and verification stepslist_sourcesList every scholarly source the server can search, with coverage, key requirements, and rate limitsskills_listList this server's skills (playbooks): guidance for interpreting results and recovering from errors. Fetch one with skill_readskill_readFetch the full content of one skill by name (see skills_list). Read 'interpreting-errors' whenever a tool returns an error or skipped sourcescheck_for_updatesCheck PyPI for newer versions of find-research-papers-mcp and get upgrade instructions.semantic_scholar_search_papersSearch for academic papers.
Relevance-ranked keyword search over 200M+ papers; supports boolean
operators (AND, OR, NOT) and quoted phrases, plus year, field-of-study,
publication-type, open-access, and citation-count filters. 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_paperGet 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 each). Results are cached
in memory for 5 minutes; an unknown ID raises a not-found error. Unkeyed
requests are throttled to 1 req/s (10 req/s with SEMANTIC_SCHOLAR_API_KEY)
and 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_authorsSearch 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_authorGet author profile with optional publications list.semantic_scholar_recommendationsGet 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; unkeyed requests are throttled
to 1 req/s (10 req/s with SEMANTIC_SCHOLAR_API_KEY) and 429/502/503
responses retry automatically with backoff. Returns Markdown by default,
response_format='json' for raw JSON.
semantic_scholar_bulk_papersRetrieve multiple papers in a single request (max 500).semantic_scholar_bulk_searchSearch papers with sorting and cursor-based pagination for large result sets.
Unlike regular search, supports sorting (e.g., by citation count) and
returns a continuation token for paging through all results.
semantic_scholar_export_citationExport 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_paperFind the single best paper matching a title string. Returns match score.semantic_scholar_paper_authorsGet 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_batchRetrieve multiple authors in a single request (max 1000).semantic_scholar_multi_recommendGet 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.
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"find-research-papers": {
"command": "uvx",
"args": [
"find-research-papers-mcp"
]
}
}
}
{
"mcpServers": {
"smaniches-semantic-scholar-mcp": {
"command": "uvx",
"args": [
"s2-mcp-server"
]
}
}
}