Token导航 LogoToken导航

MCP Server · 文档知识

Pdf MCP

一个基于Model Context Protocol的PDF解析服务,支持AI代理读取、搜索和提取PDF文件内容。

stdio官方级别未说明来源级核验工具 8
PDF处理PythonClaude文本提取Claude DesktopVS Code

快速开始

作者 / 组织
jztan
提供方
jztan
运行时
Python

工具数量

8

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

35

仓库热度

收录来源

2 个

MCP World

选型结论

Pdf MCP 属于文档知识类 MCP Server,公开资料标注 8 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、VS Code,有可以直接复制的安装命令;接入前先确认权限范围。

分类

文档知识

传输方式

stdio

认证方式

无需认证

部署方式

公开资料未说明

安装与配置

安装命令

pip install pdf-mcp

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Python,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 8 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

pdf mcp

A. 模型上下文协议 (MCP)服务器,使AI代理能够读取、搜索和提取PDF文件中的内容。使用Python和PyMuPDF构建,具有基于SQLite的缓存,可在服务器重启时保持持久性。

mcp名称:io.github.jztan/pdf-mcp

在浏览器中尝试

查看您的AI代理所看到的内容→

浏览三个主要工具(pdf_info, pdf_search, pdf_read_pages)任何PDF。100%客户端,无需安装。

[](https://pdf-mcp.jztan.com/)

特性

为您的代理提供PDF的外科手术访问权限,而不是用原始文本淹没上下文。

  • 混合搜索 --查找有问题的相关页面,而不是页面范围。通过互序融合将BM25关键字和语义搜索相结合
  • 分页阅读 --只获取代理需要的页面;大型文档不会破坏您的上下文窗口
  • 光学字符识别 --通过Tesseract,扫描和基于图像的PDF是完全可读和可搜索的
  • 结构化提取 --表、嵌入式图像和目录作为结构化数据返回,而不是文本汤
  • 持久缓存 --SQLite支持;重新读取是即时的,并且在服务器重启后仍然有效
  • 安全URL获取 --仅支持HTTPS和SSRF保护;本地网络范围被阻止

安装

pip install pdf-mcp

用于语义搜索(添加 fastembed 和 numpy,首次使用时下载约67 MB型号):

pip install 'pdf-mcp[semantic]'

对于扫描的PDF的OCR(需要Tesseract系统):

# macOS
brew install tesseract

# Ubuntu/Debian
apt install tesseract-ocr

# Windows — download the installer from:
# https://github.com/UB-Mannheim/tesseract/wiki
# Then add the install directory to your PATH.

快速开始

从下面选择您的MCP客户端开始:

Claude Code

claude mcp add pdf-mcp -- pdf-mcp

或添加到 ~/.claude.json:

{
  "mcpServers": {
    "pdf-mcp": {
      "command": "pdf-mcp"
    }
  }
}

Claude Desktop

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "pdf-mcp": {
      "command": "pdf-mcp"
    }
  }
}

配置文件位置:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json

更新配置后重新启动Claude Desktop。

Visual Studio Code

需要使用GitHub Copilot的VS代码1.101+。

CLI:

code --add-mcp '{"name":"pdf-mcp","command":"pdf-mcp"}'

命令选项板:

  1. 打开命令选项板(Cmd/Ctrl+Shift+P)
  2. 跑 MCP: Open User Configuration (全球)或 MCP: Open Workspace Folder Configuration (项目特定)
  3. 添加配置:
   {
     "servers": {
       "pdf-mcp": {
         "command": "pdf-mcp"
       }
     }
   }
  1. 保存。VS Code将自动加载服务器。

手册: 创建 .vscode/mcp.json 在您的工作空间中:

{
  "servers": {
    "pdf-mcp": {
      "command": "pdf-mcp"
    }
  }
}

Codex CLI

codex mcp add pdf-mcp -- pdf-mcp

或在中手动配置 ~/.codex/config.toml:

[mcp_servers.pdf-mcp]
command = "pdf-mcp"

Kiro

创建或编辑 .kiro/settings/mcp.json 在您的工作空间中:

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

保存并重新启动Kiro。

Other MCP Clients

大多数MCP客户端使用标准配置格式:

{
  "mcpServers": {
    "pdf-mcp": {
      "command": "pdf-mcp"
    }
  }
}

随着 uvx (适用于隔离环境):

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

验证安装

pdf-mcp --help

工具

八个专门的工具涵盖了文档自检、内容读取、搜索和缓存管理。典型模式:呼叫 pdf_info 先计划,然后 pdf_search 定位,然后 pdf_read_pages 或 pdf_read_all 消费。

工具它做什么
pdf_info页面计数、元数据、TOC摘要、扫描页面检测。 先打电话。
pdf_get_toc包含50个以上书签的文档的完整目录
pdf_read_pages阅读特定的页面或范围;按需OCR;嵌入式图像+表格
pdf_read_all在一次调用中读取整个文档(为安全起见,以字节为上限)
pdf_render_pages将页面渲染为视觉模型的PNG格式——图表、手写、扫描
pdf_search混合RRF搜索(关键字+语义),页面或部分粒度
pdf_cache_stats每个文档缓存细分+总大小
pdf_cache_clear清除过期或所有缓存条目

示例提示:

"Read the PDF at /path/to/document.pdf"
"Which pages discuss supply chain risks?"
"Find sections about the training process"
"Show me what page 5 looks like"
"OCR pages 3-5 of the scanned PDF"

看 docs/tool-reference.md 完整的参考——每个参数、响应形状、安全契约和示例。关于语义搜索模型的选择,请参见 docs/embedding-models.md.

工作流示例

对于大型文件(例如,200页的年度报告):

User: "Summarize the risk factors in this annual report"

Agent workflow:
1. pdf_info("report.pdf")
   → 200 pages, TOC shows "Risk Factors" on page 89

2. pdf_search("report.pdf", "risk factors")
   → Relevant pages: 89-110

3. pdf_read_pages("report.pdf", "89-100")
   → First batch

4. pdf_read_pages("report.pdf", "101-110")
   → Second batch

5. Synthesize answer from chunks

缓存

服务器使用SQLite进行持久缓存。这是必要的,因为使用STDIO传输的MCP服务器是作为每个会话的新进程生成的。

缓存位置: ~/.cache/pdf-mcp/cache.db

缓存的内容:

数据好处
元数据+文本覆盖率避免重新解析文档信息
页面文本跳过重新提取
图像跳过重新编码
表跳过重新检测
TOC跳过重新解析
FTS5索引O(log N)搜索,首次查询后BM25排名
嵌入首次索引运行后的即时语义搜索
渲染的PNG跳过重新渲染;共享之间 pdf_render_pages 和 pdf_read_pages(render_dpi=…)

缓存无效:

  • 文件修改时间更改时自动
  • 手册通过 pdf_cache_clear 工具
  • TTL:24小时(可配置)

配置

访问控制(可选)

创建 ~/.config/pdf-mcp/config.toml 以限制服务器将访问哪些本地路径和URL主机。该文件是可选的——如果不存在,服务器在内置的SSRF地板内是允许的(仅HTTPS,被阻止的私有IP范围)。

[paths]
allow = ["~/Documents/**", "/data/pdfs/**"]
deny  = ["~/.ssh/**", "~/.aws/**"]

[urls]
allow = ["*.internal.example.com"]
deny  = ["untrusted.example.com"]

[limits]
max_response_bytes = 200000

这 [limits] 块将文本有效负载字节大小限制在 pdf_read_all 以及分段粒度 pdf_search --看 docs/response-limits.md规则使用shell glob模式(* 跨路径分隔符匹配)。 deny 当双方比赛时获胜。路径匹配在符号链接扩展后对解析的路径进行操作。格式错误的配置文件会阻止服务器启动——它永远不会悄无声息地回到许可状态。

环境变量

# Cache directory (default: ~/.cache/pdf-mcp)
PDF_MCP_CACHE_DIR=/path/to/cache

# Cache TTL in hours (default: 24)
PDF_MCP_CACHE_TTL=48

发展

git clone https://github.com/jztan/pdf-mcp.git
cd pdf-mcp

# Install with dev dependencies
pip install -e ".[dev]"

# One-time: install pre-commit hooks (auto-runs black/flake8/mypy on commit)
pre-commit install

# Run tests
pytest tests/ -v

# Type checking
mypy src/

# Linting
flake8 src/ tests/

# Formatting
black src/ tests/

为什么选择pdf mcp?

没有pdf mcp有pdf mcp
大型PDF文档上下文溢出阅读受阻
代币预算猜测和溢出阅读前估计的代币
查找内容加载所有内容混合搜索——BM25关键字(FTS5)+语义嵌入的RRF融合;永远不会错过任何一个人都会错过的东西
表格原始文本中丢失每页提取和内联
图像忽略提取为PNG文件
重复访问每次重新解析SQLite缓存
扫描PDF未提取文本通过Tesseract进行OCR(pdf_read_pages(ocr=True))
视觉内容必须用文字描述将页面渲染为图像(pdf_render_pages)
刀具设计单片刀具8个专用刀具

路线图

看 ROADMAP.md 了解计划功能和发布历史。

贡献

欢迎捐款。请提交一个pull请求。

安全

发现漏洞?看 安全.md 威胁模型、报告渠道和预期响应时间线。请不要为未打补丁的安全报告打开公共GitHub问题。

许可证

麻省理工学院——见 许可证.

链接

工具与能力

工具数量

8

资源数量

0

提示词数量

0

能力标签

PDF解析Python本地部署AI代理文档处理文本提取OCRPDF处理

支持客户端

Claude DesktopClaudeVS Code

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

读长文档提问

把 PDF、Markdown 和笔记交给模型,按章节追问细节。

整理知识库

把零散资料归档、打标签,检索时更容易命中。

批量出摘要

提取要点,输出能直接引用的段落。

选择建议

值得选的地方

  • 只提供 8 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、VS Code,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Python,换机器要重新装一遍。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在文档知识场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Pdf MCP

MCP World · 本页

8stdio有2 个2026-05-17
Cherry Studio

MCP World

0未说明未标注1 个2026-05-17
Pdf Math Translate

MCP World

0stdio有1 个2026-05-17
report generation

MCP World

0stdio有1 个2026-05-17
Anything To Notebooklm

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Pdf MCP 怎么安装?

公开资料给出的安装命令是 pip install pdf-mcp,运行环境为 Python。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Pdf MCP 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Python;保存后完全退出客户端再打开,配置才会生效。

Pdf MCP 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Pdf MCP 需要 API Key 吗?

公开资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

Pdf MCP 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、VS Code;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP