Skip to main content
Glama
xiongxingzhe

mcp-pdf-tokensaver

by xiongxingzhe

mcp-pdf-tokensaver

mcp-pdf-tokensaver MCP server mcp-pdf-tokensaver score

A layout-aware MCP server that analyzes PDF structures to save up to 90% context tokens for LLMs.

Stop wasting LLM tokens on PDFs. This MCP server provides layout-aware, two-pass chunking and formula protection for Cursor, Claude Desktop, and other AI editors.

License: MIT Node.js MCP npm

Why mcp-pdf-tokensaver?

Reading dense, multi-column technical papers, API documentation, or corporate PDFs inside AI editors often leads to two major frustrations:

  1. The Token Tax: Multi-column text gets scrambled, forcing you to upload full documents and waste tens of thousands of context tokens.

  2. Formula Corruption: LaTeX equations frequently get broken or mistranslated during full-text ingestion.

mcp-pdf-tokensaver provides a 100% local solution to shield your token window.

Related MCP server: pdf-agent-mcp

Features

  • Layout-Aware Inspection: Parse PDF structures (multi-columns, tables, headings) without uploading full text immediately.

  • Two-Pass Token Saving: LLMs first inspect the document outline via a condensed JSON schema, then selectively fetch exact text chunks based on blockId.

  • 100% Client-Side & Secure: All parsing happens locally. Your sensitive data never leaves your machine.

  • Scanned PDF Support: OCR integration for scanned documents (English).

How It Works

Instead of feeding raw PDF streams into the LLM, this server empowers your AI model with a Two-Pass Precise Retrieval Strategy:

  1. inspect_pdf_structure: The LLM scans a super-condensed layout skeleton of your PDF, mapping pages, columns, and headings in milliseconds.

  2. fetch_pdf_chunks: The LLM target-fetches only the exact text rows or equations it needs based on specific blockIds.

Token Savings Comparison

Solution

Working Principle

Token Impact

Traditional Full-Text

Dumps entire PDF as Markdown into context

🔴 Catastrophic: 40-page doc can burn 30K+ tokens per turn

Vector RAG

Local embedding search, returns top-3 chunks

🟡 Medium: No global document awareness

mcp-pdf-tokensaver

Structure-aware agentic retrieval

🟢 Minimal: Saves 90%+ tokens

Installation

npm install -g mcp-pdf-tokensaver

Option 2: Install from source

git clone https://github.com/anthropics/mcp-pdf-tokensaver.git
cd mcp-pdf-tokensaver
npm install
npm run build

Configuration

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "pdf-tokensaver": {
      "command": "mcp-pdf-tokensaver",
      "args": []
    }
  }
}

Cursor / Windsurf

Add to your MCP settings:

{
  "mcpServers": {
    "pdf-tokensaver": {
      "command": "mcp-pdf-tokensaver",
      "args": []
    }
  }
}

Custom Configuration

You can configure limits via environment variables:

{
  "mcpServers": {
    "pdf-tokensaver": {
      "command": "mcp-pdf-tokensaver",
      "args": [],
      "env": {
        "MCP_PDF_MAX_SIZE_MB": "100",
        "MCP_PDF_MAX_PAGES": "500",
        "MCP_OCR_TIMEOUT_MS": "30000"
      }
    }
  }
}

Usage

Once configured, simply ask your AI editor to analyze a PDF:

"Help me analyze the structure of paper.pdf on my desktop. Where are the core formulas?"

The LLM will automatically call inspect_pdf_structure to get a condensed layout skeleton, then use fetch_pdf_chunks to retrieve only the relevant sections.

Tools

inspect_pdf_structure

Analyzes the layout and structural skeleton of a local PDF file.

Input:

{
  "filePath": "/path/to/your/document.pdf"
}

Output:

{
  "status": "success",
  "documentMeta": {
    "path": "/path/to/your/document.pdf",
    "totalPages": 24,
    "isEncrypted": false,
    "hasScannedPages": [],
    "estimatedFullTextTokens": 84000
  },
  "structureSkeleton": [
    {
      "blockId": "page_1_para_1",
      "type": "heading",
      "pageIndex": 0,
      "level": 1,
      "summary": "1. Introduction",
      "tokenEstimate": 8
    },
    {
      "blockId": "page_2_para_3",
      "type": "text",
      "pageIndex": 1,
      "layoutType": "double-column",
      "summary": "Discusses client-side WebAssembly...",
      "tokenEstimate": 45
    }
  ]
}

fetch_pdf_chunks

Selectively fetch specific text paragraphs or equations based on their blockId.

Input:

{
  "filePath": "/path/to/your/document.pdf",
  "blockIds": ["page_2_para_3", "page_4_para_1"]
}

Output:

{
  "status": "success",
  "fetchedChunks": {
    "page_2_para_3": {
      "type": "text",
      "content": "We implement a pure client-side PDF parsing pipeline...",
      "pageContext": "Page 2"
    },
    "page_4_para_1": {
      "type": "equation",
      "content": "$$\\Theta(N) = \\sum_{i=1}^{N} \\alpha_i$$",
      "pageContext": "Page 4"
    }
  }
}

Limitations

  • Encrypted PDFs are not supported

  • Scanned PDF OCR is limited to English

  • Maximum file size: 100MB (configurable)

  • Maximum pages: 500 (configurable)

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments


Optimized by the core layout engine of GoLocalPDF — the leading privacy-first client-side PDF utility.

If you need a seamless browser-based PDF reading experience with dual-pane translation, visit golocalpdf.com.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    A local-first MCP server that enables semantic search over PDF and DOCX documents using structure-aware parsing and vector storage. It allows users to query their local knowledge base through Claude Code without cloud dependencies or GPU requirements.
  • F
    license
    -
    quality
    D
    maintenance
    A local MCP server that extracts text-layer content from PDF files, enabling AI agents to inspect, extract text, outlines, and page content.
  • A
    license
    A
    quality
    D
    maintenance
    Self-hosted MCP server for Claude Code that implements PageIndex vectorless RAG locally, enabling indexing, navigation, and content extraction of PDF documents without LLM calls during search.
    5
    115
    1
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    A local-first MCP server that ingests PDFs, extracts structure, and provides semantic search and sequential navigation tools for AI clients to query and learn from documents.
    10
    MIT

View all related MCP servers

Related MCP Connectors

  • Generate PDFs from templates via AI chat. Works with Claude, ChatGPT, Cursor, and any MCP client.

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • User-owned memory for AI agents, Copilot, Claude, IDEs, CLIs, and chat apps over remote MCP.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/xiongxingzhe/mcp-pdf-tokensaver'

If you have feedback or need assistance with the MCP directory API, please join our Discord server