mcpbeat

Paper MCP Server

io.github.MCPServings/paper-mcp
answering

Paper MCP is answering right now. Last checked 2 min ago. It exposes 41 tools. Last commit 24 Jul 2026.

Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.

Uptime history 40 hours of history
40 hours agonow
100.0%
Uptime 24h
92 of 92 checks
41
Tools
read from the server
640 ms
Response time
average over 24h
0
Stars
last commit 24 Jul 2026

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 2 min ago.

run in your terminal
claude mcp add paper-mcp --transport http https://latex-tools.online/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "paper-mcp": {
      "url": "https://latex-tools.online/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.paper-mcp]
url = "https://latex-tools.online/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "paper-mcp": {
      "url": "https://latex-tools.online/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "paper-mcp": {
      "url": "https://latex-tools.online/mcp"
    }
  }
}

Available tools 41

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

openalex
get_openalex_citations
OpenAlex: papers that CITE this work (forward citation graph), most-cited first.
get_openalex_references
OpenAlex: the works this one REFERENCES (its bibliography).
get_openalex_trends
OpenAlex: publication-trend analytics for a query — counts grouped by year (default), or by 'institutions.id', 'authorships.author.id', 'open_access.is_oa', 'type', 'language'. Returns aggregate counts only (cheap, no rows).
get_openalex_work
OpenAlex: fetch one work's full record (316M-work, all-field corpus). id accepts OpenAlex Wxxxx, a DOI, or an arXiv id.
list_openalex_topics
OpenAlex: search the topic taxonomy (~4500 topics) to find the right subject term for filtering or recent-work queries.
search_openalex_authors
OpenAlex: search authors; returns profiles with h-index, i10-index, works/citation counts and institutions.
search_openalex_institutions
OpenAlex: search institutions (universities, labs) with ROR id, country, works/citation counts.
search_openalex_works
OpenAlex: advanced filtered work search. Filters: from_year, to_year, is_oa (open access only), min_citations, institution_id. sort_by: relevance|newest|cited.
paper
get_paper
Fetch one paper by id, with full abstract and PDF link.
get_paper_authors
Semantic Scholar: the authors of a paper (with h-index, paper/citation counts).
get_paper_citations
Semantic Scholar: papers that CITE this one (forward citation graph). id accepts S2 id / DOI: / ARXIV: / CorpusId:.
get_paper_references
Semantic Scholar: papers this one REFERENCES (its bibliography). id accepts S2 id / DOI: / ARXIV: / CorpusId:.
list_paper_sources
List available paper corpora.
read_paper
Read a paper's full text. format='markdown' (default, body with formulas as $LaTeX$), 'html' (raw LaTeXML HTML), or 'latex' (the original LaTeX manuscript from the e-print source). arXiv only; id like 2401.01234.
dataset
get_dataset_diffs
Semantic Scholar Datasets: incremental diff (added/updated/deleted) for a dataset between two releases. Needs the key.
get_dataset_download_links
Semantic Scholar Datasets: get download links (presigned URLs) for one dataset in a release. Needs the API key.
get_dataset_release
Semantic Scholar Datasets: which datasets a release contains (papers, abstracts, citations, embeddings, s2orc, tldrs…). release_id defaults to 'latest'.
list_dataset_releases
Semantic Scholar Datasets: list all available release ids (dated snapshots of the full corpus).
author
get_author
Semantic Scholar: a single author's profile by id.
get_author_papers
Semantic Scholar: all papers by a given author id, newest first.
search_by_author
Find papers by a specific author, newest first.
papers
get_papers_batch
Semantic Scholar: fetch many papers at once by id (S2/DOI:/ARXIV:/CorpusId:), up to ~500 per call.
search_papers
Search academic papers. Returns normalized hits with a short abstract preview; call get_paper for the full record.
search_papers_bulk
Semantic Scholar: bulk paper search (up to 1000 hits, sortable e.g. 'citationCount:desc' or 'publicationDate:desc', with a continuation token). Filters: fields_of_study, year (e.g. '2020-2024'), venue, publication_types, open_access_pdf.
authors
get_authors_batch
Semantic Scholar: fetch many authors at once by id.
search_authors
Semantic Scholar: search for authors by name; returns profiles with h-index and paper/citation counts.
extract
extract_pdf
Extract a PDF to clean Markdown/LaTeX text via MinerU (great for papers behind no open-access full text — give the user's PDF and get readable text back). Provide pdf_url (downloaded server-side, SSRF-guarded) OR pdf_base64. formula/table toggle math/table reconstruction. Returns {task_id, status, cached, content, chars}: a recently-seen (cached) or small PDF comes back with `content` in one call; a fresh PDF (MinerU is GPU-heavy, minutes) returns status='running' + a task_id — then call extract_pdf_result(task_id) to fetch the text.
extract_pdf_result
Fetch the result of an extract_pdf job by task_id. Returns {task_id, status, content, chars}: `content` is the extracted text once status='done'; while still 'running' content is null — call again shortly. Results expire server-side, so fetch reasonably soon.
recognize
recognize_formula
Recognize a math formula from an image and return LaTeX. Provide image_url (downloaded server-side) OR image_base64. model: deepseek-ocr (default), paddleocr-vl, or texify. Returns {latex, model, elapsed_ms}.
recognize_table
Recognize a table from an image and return LaTeX tabular code. Provide image_url OR image_base64. model: deepseek-ocr (default), paddleocr-vl, or texify. Returns {latex, model, elapsed_ms}.
recommend
recommend_papers_for_paper
Semantic Scholar: recommend papers similar to one paper. pool='recent' (last open corpus) or 'all-cs' (all of CS). If the 'recent' pool yields nothing (common for older papers), it automatically retries the 'all-cs' pool.
recommend_papers_from_examples
Semantic Scholar: recommend papers from positive (and optional negative) example paper ids.
all
search_all
Aggregated search across arXiv, Semantic Scholar and OpenAlex at once. Fans out concurrently, de-duplicates the same work across corpora (by DOI or title) and re-ranks with Reciprocal Rank Fusion, so papers found by several sources rank highest. Each hit lists which `sources` found it and an `ids` map ({source: id}) you can pass to get_paper / read_paper / the citation tools. Prefer this over search_papers for a broad lookup.
autocomplete
autocomplete_papers
Semantic Scholar: autocomplete paper titles for a partial query (fast type-ahead).
categories
list_categories
List common subject category codes for filtering/recent.
lint
lint_latex
Lint a LaTeX snippet: report errors and return an auto-fixed version. Input `code` (the LaTeX source). Returns {errors, fixed_code, summary_en, summary_zh, elapsed_ms}.
match
match_paper_title
Semantic Scholar: find the single paper whose title best matches the given text (exact-match lookup).
medical
search_medical
Evidence-graded MEDICAL literature search (PubMed + Europe PMC). Unlike search_all (generic, ranks high-cited reviews/guidelines above trials), this filters by research type via PubMed Publication-Type tags and re-ranks by the evidence pyramid (meta-analysis / systematic review > RCT > cohort > ...), so the actual clinical trials surface first. Open-access full text is pulled from Europe PMC by PMID. `query` should be English keyword/boolean text (PubMed maps it); do natural-language/multilingual understanding upstream. Returns hits with pmid/doi/study_type/evidence_level/citations/abstract and, when open-access, fulltext.
ocr
list_ocr_models
List the OCR models available for recognize_formula / recognize_table.
recent
list_recent
List the latest papers in a subject category, newest first.
snippets
search_snippets
Semantic Scholar: search INSIDE paper full text and return matching text snippets (not just titles/abstracts).

Endpoints

URLTransportStateLatencyChecked
https://latex-tools.online/mcp streamable-http answering 716 ms 2 min ago

Paper MCP — questions

Answers built from our own checks of this server.

What can Paper MCP do?
It exposes 41 tools, read directly from the server on our last check. Among them: autocomplete_papers, extract_pdf, extract_pdf_result, get_author, get_author_papers, get_authors_batch and 35 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Paper MCP mostly used for?
Its tools cluster around openalex, paper and dataset. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Paper MCP working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 640 ms. The bar chart above shows every period we have measured.
How do I connect Paper MCP?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Paper MCP need an API key?
No. Paper MCP completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 41 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Paper MCP?
It answers our handshake in 640 ms on average, which is faster than 14% of all working MCP servers we measure. That is on the slow side — worth knowing if the tool sits inside an interactive loop. The comparison comes from our own checks across the whole registry, every 15 minutes.
Is Paper MCP open source?
Yes — it is published under the MIT licence, written in Python, 0 stars on GitHub and 1 open issue. The source link is on this page, so you can read exactly what it does with your data before you connect it.