MCP.Market

PDF Reader MCP server

by Xvvln·io.github.Xvvln/pdf-reader-mcp·v0.2.1·1 stars

MCP server for extracting text, images, tables, links, annotations, and metadata from PDF files.

B82/100grade B
What users say
No reviews yet
Be the first
Safety scan
B82/100

full report

Adoption
New

1 stars24 downloads/wk

Reviews

Write one

Nobody has reviewed PDF Reader yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

PDF Reader tools (12)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • compare_pdf_pages

    比较PDF中两个页面的文本差异。

  • extract_pdf_images

    提取PDF中嵌入的图片。

  • extract_pdf_links

    提取PDF中的所有链接(URL和内部跳转)。

  • extract_pdf_tables

    提取PDF中的表格数据。

  • get_pdf_annotations

    获取PDF中的注释(批注、高亮、下划线等)。

  • get_pdf_info

    获取PDF文件的基本信息。

  • get_pdf_outline

    获取PDF的书签/目录结构(大纲)。

  • get_pdf_page_info

    获取PDF指定页面的详细信息。

  • get_pdf_text_stats

    获取PDF文本的统计信息(字数、字符数、段落数等)。

  • read_pdf_as_images

    将PDF页面转换为图片(base64编码)返回。适合需要保留原始排版、图表、公式的场景。

  • read_pdf_as_text

    提取PDF的文本内容。适合纯文本PDF,速度快,消耗token少。

  • search_pdf_text

    在PDF中搜索文本,返回匹配位置和上下文。

Public scan report

scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it

no findings
  • Code scan5 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitylocal package, no credentials required12/15
  • Maintenancelast push 108 days ago8/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 82/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How PDF Reader compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
82/100
higher than 63% of 48,255 servers
Tools
12
the typical server has 7
Tools that change things
0%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
1
more than 65% of 28,688 servers
Downloads a week
24
more than 10% of 12,191 servers with a package

What its tools let an agent do: 12 read

Install PDF Reader in Claude Code, Cursor or VS Code

claude mcp add pdf-reader-mcp -- uvx pdf-insight-mcp
Add to Cursor

What the publisher says

From the PDF Reader repository's README, as published. We do not edit it. Read it on GitHub

pdf-reader-mcp

一个用于读取和分析 PDF 文件的 MCP 服务器。它可以为支持 MCP(Model Context Protocol)的客户端提供 PDF 文本、页面图片、表格、链接、批注、目录、元数据和基础文本统计。

A PDF-focused MCP server for extracting text, rendered pages, tables, links, annotations, outlines, metadata, and text statistics from PDF files.

<!-- mcp-name: io.github.Xvvln/pdf-reader-mcp -->

Package name

  • GitHub repository: pdf-reader-mcp
  • MCP Registry name: io.github.Xvvln/pdf-reader-mcp
  • PyPI package: pdf-insight-mcp
  • CLI commands: pdf-reader-mcp and pdf-insight-mcp

pdf-reader-mcp is the project name. The PyPI package is published as pdf-insight-mcp because the pdf-reader-mcp package name is not available on PyPI.

Features

Quick start

Install uv if you do not already have it:

curl -LsSf https://astral.sh/uv/install.sh | sh

Run the server directly from PyPI:

uvx pdf-insight-mcp

Or install it first:

python -m pip install pdf-insight-mcp
pdf-reader-mcp

MCP client configuration

Use the published PyPI package:

{
  "mcpServers": {
    "pdf-reader": {
      "command": "uvx",
      "args": ["pdf-insight-mcp"]
    }
  }
}

Use a local checkout for development:

{
  "mcpServers": {
    "pdf-reader": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/pdf-reader-mcp",
        "run",
        "pdf-reader-mcp"
      ]
    }
  }
}

Replace /absolute/path/to/pdf-reader-mcp with the absolute path to this repository on your machine.

Common usage

Ask your MCP client to call tools with an absolute PDF path. Example requests:

Read /Users/me/Documents/report.pdf as text.
Search /Users/me/Documents/report.pdf for "baseline characteristics".
Render pages 1-3 of /Users/me/Documents/report.pdf as images.
Extract links and annotations from /Users/me/Documents/review.pdf.

For large PDFs, prefer small page ranges first. For scanned or layout-sensitive PDFs, use readpdfas_images with a small pages range and moderate dpi.

Limits and behavior

  • readpdfas_text defaults to at most 50 pages and 200000 returned characters.
  • readpdfas_images rejects requests above 20 pages.
  • readpdfas_images defaults to an overall image payload cap of about 20 MB.
  • extractpdfimages returns at most 20 embedded images but reports the actual detected total.
  • Encrypted PDFs are rejected unless they are already accessible without a password.
  • Scanned PDFs may have little or no extractable text. Use image rendering or OCR outside this server when needed.

Development

Install dependencies:

uv sync --extra dev

Run tests:

uv run pytest -q

Build the package:

uv build
uvx twine check dist/*

Run the local server:

uv run pdf-reader-mcp

Release

Releases are published through GitHub Actions.

Before the first release, configure PyPI Trusted Publishing with:

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

PDF Reader: common questions

Is PDF Reader MCP server safe?
Mostly: it is graded B (82/100). Read the PDF Reader safety report
How do I install PDF Reader?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does PDF Reader need an API key?
Not as far as the registry entry and our scan can tell: no credentials are declared or required.
Is PDF Reader maintained?
The last commit was 146 days ago (2026-06-11). The latest release is v0.2.1.
How does PDF Reader compare with other MCP servers?
safety score 82/100 (higher than 63% of 48,255 servers); tools 12 (the typical server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.