Skip to main content
Glama
X Literature MCP

X Literature MCP

by JiahongXu88

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
X_LIT_PYTHONNoPython executable with PyMuPDF. Default: python (Windows) / python3.
X_LIT_PDF_ROOTYesAbsolute path of the PDF folder (scanned recursively; symlinks skipped).
X_LIT_CACHE_DIRNoAbsolute path for the derived cache. Default: <OS temp>/x-literature-mcp-cache. Must not be inside the PDF folder.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_papersA

List PDFs in the configured literature folder (de-duplicated by SHA-256). Returns paper_id, file name, title candidate, page count, parse status. Never returns full text. Indexes not-yet-parsed PDFs on first call.

get_paper_structureA

Page count, native PDF bookmarks (if any), inferred section headings with pages, per-page text coverage and quality flags, References location. Inferred items are marked inferred and may be wrong.

read_paper_pagesA

Text of a page range (1-based, max 10 pages per call), each page kept separate with its real page number. Output is bounded by max_chars; when truncated, 'next' tells you exactly where to continue (start_page + char_offset). PDF text layer only: verify formulas/tables with render_paper_page.

render_paper_pageA

Render ONE page as a PNG image (for checking formulas, tables, figures, two-column reading order). scale 0.5–3 (default 1.5); longest edge capped at 2400 px.

get_paper_referencesC

Reference-list entries as printed (raw_text) with PDF page numbers, plus candidate fields (number/authors/year/title/venue/DOI) parsed by deterministic rules. Fields are unverified candidates (fields.year only when quality.year=verified_by_pattern; otherwise see candidates/issues); text left out as another article's (continuation-marker evidence) is listed in 'excluded' with its page. A citation says nothing about inheritance or experimental comparison.

search_papersA

Keyword search over page text (Chinese/English substring, whitespace- and width-insensitive; multiple space-separated terms must all occur on the same page). Returns paper_id + page + snippet; re-read hits with read_paper_pages. Query ≤ 200 chars.

refresh_indexA

Rescan the PDF folder and (re)build the local derived cache. Never modifies PDFs. force=true re-parses every paper; otherwise only new/changed files are parsed. One failing file does not stop the others.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 7 tools

Disambiguation5/5

Each tool has a clearly distinct role, from listing and searching to reading, rendering, structural inspection, reference extraction, and index maintenance. The potentially overlapping read and render tools are explicitly differentiated as text extraction versus visual verification.

Naming Consistency5/5

All seven tools use consistent lowercase snake_case with a predictable verb_noun pattern. Singular and plural resource names appropriately reflect whether each operation handles one page, multiple pages, or multiple papers.

Tool Count5/5

Seven tools are well scoped for a local PDF literature server. Each earns its place without fragmenting simple operations or introducing redundant convenience tools.

Completeness5/5

The set covers the complete read-only literature workflow: corpus discovery, indexing, keyword search, paginated reading, visual inspection, document structure, and reference extraction. There are no obvious dead ends for its apparent purpose, and filesystem-based collection changes are handled through refresh_index.

Maintenance

ActivityMaintained
ResponsivenessNo issues