← Back to directory
P

PaperGraph MCP

Community
Read math papers with evidence, not guesses.
GitHub source repository ↗
★ 196 Stars Category · Other Very popular
55FMRS · C

PaperGraph MCP is an evidence-first reading server for math papers, published from a personal repository under the MIT license and speaking MCP over stdio. Its core value is tying results, proofs, and citations to source spans that can be sliced back out of the original paper, while explicitly framing empty results as extraction limits rather than mathematical facts. It suits readers who insist on reviewing evidence, and does not suit those expecting proof verification, semantic equivalence judgments, or automatic crawling of the citation chain.

Reliability
8/20
Security and permissions
12/20
Maintenance
10/20
Documentation
14/20
Setup experience
11/20
Read the FMRS scoring method →

PaperGraph MCP is a local, evidence-first reading workflow server for AI agents working with math papers. It turns arXiv papers, local LaTeX projects, and born-digital PDFs into a theorem-centered local workspace so a researcher can inspect where every claim came from: extract results, trace proof evidence, plan reading order, review external dependencies, and keep reading state locally. It communicates over stdio, stores workspaces as ordinary local SQLite files, and adds a Scholarly Reference Resolver in v1.1.3 for metadata search of blocked references across Crossref, OpenAlex, and arXiv.

Tools

open_workspace
Open a local SQLite workspace
workspace_add_local_paper
Add a local LaTeX paper to the workspace
workspace_add_arxiv_paper
Add a paper by arXiv ID to the workspace
workspace_add_pdf_paper
Add a PDF paper to the workspace
workspace_list_papers
List papers in the workspace
workspace_get_paper
Get details for one paper
workspace_search_theorems
Search theorem-like results in the workspace
workspace_get_dependencies
Get dependencies of a result
workspace_get_dependency_diagnostics
Get diagnostics for dependency extraction
workspace_get_citations
Get citation relations, optionally including unresolved ones
workspace_get_paper_map
Build a Paper Map: main-result candidates, structure, and external reading risks
workspace_export_paper_reading_report
Export a single-paper Markdown reading report
workspace_export_cross_paper_reading_plan
Export a cross-paper Markdown reading plan
workspace_plan_starter_project
Plan a starter project producing START_HERE.md and a starter manifest
workspace_bootstrap_reading_project
Bootstrap reading-project artifacts from explicit paper inputs
workspace_list_results
List extracted theorem-like results
workspace_get_result
Get one extracted result
workspace_get_result_proof
Get the proof evidence for a result
workspace_get_proof_dependencies
Get dependency evidence inside proofs
workspace_get_external_result_mentions
Get mentions of external results
workspace_get_evidence
Get evidence with source spans
workspace_export_reading_bundle
Export a reading bundle of evidence
workspace_export_result_reading_context
Export the reading context for a result
workspace_get_source_slice
Slice the corresponding text back out of the original paper
workspace_get_result_reading_path
Get the reading path for a result
workspace_create_reading_session
Create a reading session
workspace_list_reading_sessions
List reading sessions
workspace_get_reading_session
Get a reading session
workspace_record_reading_checkpoint
Record a reading checkpoint
workspace_add_reading_note
Add a note to a reading session
workspace_export_reading_session_summary
Export a reading session summary
workspace_create_reading_queue
Generate a reading queue from local proof evidence
workspace_list_reading_queues
List reading queues
workspace_get_reading_queue
Get a reading queue
workspace_apply_reading_queue_to_session
Apply a reading queue to a reading session
workspace_plan_external_imports_for_result
Plan external imports for a result
workspace_plan_external_imports_for_queue
Plan external imports for a reading queue
workspace_plan_external_imports_for_paper
Plan external imports for a paper
workspace_search_external_reference
Search Crossref, OpenAlex, and arXiv metadata for a blocked reference
workspace_list_external_reference_searches
List external reference searches
workspace_resolve_external_reference_candidate
Apply a chosen search candidate through the reference closure workflow
workspace_resolve_external_reference
Resolve a blocked reference via DOI, URL, published metadata, or local PDF
workspace_list_external_reference_resolutions
List external reference resolutions
get_environment_diagnostics
Return environment diagnostics
validate_arxiv_request
Validate arXiv input and report the decision without loading
load_arxiv_request
High-level entry point that validates and loads an arXiv paper
validate_arxiv_input
Validate arXiv input
load_paper
Load a local paper
load_arxiv_paper
Load a paper by an already-disambiguated arXiv ID
list_theorems
List theorem-like results in a paper
get_theorem
Get a single theorem
get_dependencies
Get theorem dependencies
get_dependency_diagnostics
Get dependency diagnostics
where_used
Find where a result is used

Setup

  1. Install uv (see the uv installation docs).
  2. Verify the pinned release without cloning: uvx --from git+https://github.com/lotchuazzz-crypto/[email protected] papergraph-mcp --version and ... papergraph-mcp doctor.
  3. Add a mcpServers.papergraph entry to an MCP client that accepts JSON-style stdio configuration (command uvx, args pinned to the v1.1.3 tag).
  4. Restart the MCP client after changing its configuration.
  5. The server uses stdio, so running it without --help or --version waits quietly for an MCP client connection.
  6. If you already have a clone, run git fetch --tags origin first so the checkout is not stuck on an old local origin/main.
claude_desktop_config.json
{
  "mcpServers": {
    "papergraph": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/lotchuazzz-crypto/[email protected]", "papergraph-mcp"]
    }
  }
}

Fit and risk

Best for

  • Math-paper readers who need a strict separation between evidence and guesses
  • Researchers who want an AI agent to help map theorems and dependencies inside a local workspace
  • People who want reading artifacts as Markdown they can keep in Git or notes
  • Users who want to review external references before importing them

Not for

  • People expecting the tool to prove or verify mathematical correctness
  • Anyone wanting automatic infinite crawling of the citation chain (A cites B, B cites C)
  • Users needing semantic theorem matching or equivalence judgments for similarly worded results
  • Users with scanned or OCR-heavy PDFs where extraction may be sparse
  • Users who expect a full TeX engine for complex projects

Required permissions

  • Read and write SQLite workspace files at user-chosen local paths
  • Read user-supplied local LaTeX projects and local PDF files
  • Download e-prints from arXiv's fixed e-print endpoint
  • Query public metadata services (Crossref, OpenAlex, arXiv) when the user runs a reference search
  • Write generated Markdown reports and manifest files into a user-specified artifact directory

Risks and side effects

  • The workspace stores text, source spans, and proof evidence extracted from papers, so committing databases or private manuscripts can leak content
  • The Scholarly Reference Resolver only searches public metadata and stops with explicit boundaries for ambiguous, old, paywalled, or metadata-only literature, requiring manual sourcing
  • An empty dependency result only means no resolvable theorem-label references were found under the current rule; it is not evidence that the theorem has no mathematical dependencies
  • Scanned PDFs may yield sparse text and missing evidence
  • The parser is not a full TeX engine, so complex projects may need an explicit main_file

Troubleshooting

  1. Run papergraph-mcp doctor or get_environment_diagnostics to check the environment
  2. Confirm you pinned the v1.1.3 tag so installations stay reproducible
  3. No output when running the command directly is expected: the server uses stdio and waits for an MCP client connection
  4. Restart the MCP client after editing its configuration
  5. For an existing checkout, run git fetch --tags origin before treating it as current
  6. If validate_arxiv_request returns action: ask_user_to_choose, ask the user to choose rather than continuing
  7. When extraction looks sparse, check workspace_get_dependency_diagnostics and Evidence Triage to see why

Use cases

Load an arXiv paper, a local LaTeX project, or a born-digital PDF and produce a Paper Map
Inspect theorem statements, proof evidence, source slices, and dependency diagnostics
Generate a reading queue from local proof evidence and keep reading sessions and checkpoints
Export a deterministic Markdown Reading Report as a durable reading handoff
Export a Cross-Paper Reading Plan for a few explicitly given related papers
Search public metadata for blocked references and close the loop only on a user-chosen candidate

Supported clients

MCP clients accepting JSON-style stdio configurationFull support