Server data from the Official MCP Registry
Unified search over arXiv, Semantic Scholar & OpenAlex, plus arXiv full-text & citation graphs.
Unified search over arXiv, Semantic Scholar & OpenAlex, plus arXiv full-text & citation graphs.
Remote endpoints: streamable-http: https://latex-tools.online/mcp
Valid MCP server (1 strong, 4 medium validity signals). 3 known CVEs in dependencies (0 critical, 1 high severity) Imported from the Official MCP Registry.
Endpoint verified · Open access · 3 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Remote Plugin
No local installation needed. Your AI client connects to the remote endpoint directly.
Add this to your MCP configuration to connect:
{
"mcpServers": {
"io-github-mcpservings-paper-mcp": {
"url": "https://latex-tools.online/mcp"
}
}
}From the project's GitHub README.
Remotely-callable MCP server for academic paper search & full-text retrieval, served at https://latex-tools.online/mcp.
Three corpora behind one normalized interface:
arxiv (default) — search, metadata, and full-text (HTML / markdown / LaTeX source)semanticscholar (alias s2) — the full S2 API surface: citation graph, authors, recommendations, full-text snippets, bulk datasetsopenalex (alias oa) — 316M all-field works: citation graph, authors with h-index, institutions, topics, influence metrics| Tool | Purpose |
|---|---|
search_papers(query, source='arxiv', max_results=10, sort_by='relevance') | Search. arXiv query accepts plain text or field syntax (ti: au: cat:cs.CL abs: + AND/OR). |
get_paper(paper_id, source='arxiv') | One paper's full record. S2 id accepts S2 id / DOI: / ARXIV: / CorpusId:. |
search_by_author(author, source='arxiv') | Papers by author, newest first. |
list_recent(category, source='arxiv') | Latest in a category (arXiv code or S2 field of study). |
list_categories(source='arxiv') | Common category codes. |
read_paper(paper_id, format='markdown') | FULL text (arXiv). markdown = body with formulas as $LaTeX$; html = raw LaTeXML page; latex = original manuscript .tex source. |
list_paper_sources() | Available corpora. |
read_paper fetch chain: arxiv.org/html/{id} → ar5iv fallback (markdown/html), or arxiv.org/e-print/{id} tarball main .tex (latex). Formulas are recovered from the LaTeXML alttext invariant.
get_paper_citations · get_paper_references · get_paper_authorsmatch_paper_title · autocomplete_paperssearch_papers_bulk (≤1000, sortable, token paging) · get_papers_batchsearch_authors · get_author · get_author_papers · get_authors_batchsearch_snippets (search inside paper body)recommend_papers_for_paper · recommend_papers_from_exampleslist_dataset_releases · get_dataset_release · get_dataset_download_links · get_dataset_diffspaper_mcp/
server.py FastMCP server (tool registrations + instructions)
models.py normalized Paper model
sources/
base.py source registry (get_source / list_sources)
arxiv.py arXiv Atom API + read_paper (HTML/markdown/latex)
semanticscholar.py Semantic Scholar full API surface
pyproject.toml
cd paper-mcp
python -m venv .venv && . .venv/bin/activate
pip install -e .
PAPER_MCP_PORT=9400 python -m paper_mcp.server
# MCP endpoint at http://127.0.0.1:9400/mcp (JSON-RPC; a plain GET returns 406)
| Var | Default | Notes |
|---|---|---|
PAPER_MCP_HOST | 127.0.0.1 | |
PAPER_MCP_PORT | 9400 | |
PAPER_MCP_PATH | /mcp | |
SEMANTIC_SCHOLAR_API_KEY | — | optional; raises S2 rate limit. Set via /etc/paper-mcp.env in prod. |
paper-mcp.service on the latex-tools server, WorkingDirectory /opt/paper-mcp, port 9400.https://latex-tools.online/mcp → 127.0.0.1:9400/mcp./etc/paper-mcp.env (SEMANTIC_SCHOLAR_API_KEY).../deploy/ in this repo.This repo is the source of truth. The server runs an independent copy under /opt/paper-mcp (not auto-synced):
# edit here → push → deploy
scp -r paper_mcp/* latex-tools:/opt/paper-mcp/paper_mcp/
ssh latex-tools 'systemctl restart paper-mcp'
ssh latex-tools 'curl -s -o /dev/null -w "%{http_code}\n" http://127.0.0.1:9400/mcp' # 406 = healthy (needs JSON-RPC handshake)
_USER_AGENT, backoff).read_paper covers ~80%+ of papers via official HTML; older scan-only papers may have no full text.docs repo on 2026-06-07; that copy is gone.Be the first to review this server!
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
by Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption