开源 MCP 扩展通过本地混合 RAG 压缩 PDF token 消耗,为 Claude 用户大幅降低成本同时保证数据隐私。对 Claude 重度用户有直接经济价值。
Artificial Intelligence
Vision Language Model
AI 开发者、研究人员和专业人士在使用 LLM 分析大型文档时经常遇到一个令人沮丧的问题:context window 的隐性累积成本。将一份 200 页的 PDF 粘贴到聊天中不是一次性收费。因为每次对话时都会重新发送对话历史到模型,那份巨大的文档会随着每个后续问题再次被计费。
Marktechpost AI 团队刚刚发布了 Token Saver,一个 Claude Desktop 的开源 Model Context Protocol (MCP) 扩展(MIT 许可,目前版本 v1.0)。它由 Marktechpost AI Media Inc 的 Arnav Rai(罗切斯特理工学院计算机科学学生)在 Marktechpost 实习期间开发,由 Jean-marc Mommessin 和 Asif Razzaq 指导。Token Saver 从根本上改变了 Claude 与本地文档的交互方式。通过在本地实现混合 RAG 系统,它允许你对庞大的 PDF 提问,而无需将实际文件上传到模型。
Token 消耗减少了 92% 到 99%,隐私得到保证,设置不需要任何 Python 环境或终端配置。

大多数用户假设将 PDF 拖入 Claude 时,它只是提取文本。实际上,Claude 的默认行为是将每一页转换为图像以保留图表和布局,同时单独提取文本。甚至在计算单个图像 token 之前,仅文本就可能每页消耗 1,500 到 3,000 个 token。
虽然 Prompt Caching 和 Claude Projects 有助于减轻这一负担,但它们无法解决根本问题:整个文档仍然会被传送到供应商的服务器。此外,如果你只需要 1,000 页教科书中的两个相关段落,强制 LLM 自己搜索整个 1,000 页既低效又容易产生幻觉。
Marktechpost 的 Token Saver 作用为本地 MCP 服务器:在你的机器上运行的轻量级后台程序,Claude 可以将其作为工具调用。PDF 永远不会离开你的硬盘。
当你提出问题时,Token Saver 利用本地混合 RAG 来寻找答案。混合 RAG 是文档检索的黄金标准,因为它结合了两种强大的搜索方法:
关键词匹配(BM25):在 SQLite 的内置 FTS5 搜索之上运行(权重为 0.4),以找到精确的术语。
语义搜索(余弦相似度):使用本地 all-MiniLM-L6-v2 embedding 模型(权重为 0.6)来理解你问题的含义,而不仅仅是匹配精确词汇。
通过在本地融合这两种方法,服务器搜索文件并只向 Claude 传递高度相关的段落。Claude 然后综合答案,引用精确的页码并提供你刚节省的 token 的实时统计。
Token Saver 完全在单个长时间运行的本地进程内运行。在任何文本到达 Claude 之前,本地混合 RAG 流程执行八个快速步骤:
Extract:使用 pypdfium2(以 pypdf 作为备选方案)来提取文本。
Chunk:将文本分成 180 词的段落,重叠 40 词,以确保上下文永远不会被盲目切割。
Score(混合 RAG):使用融合的 BM25 和本地 embedding 模型评估块。
Gate:实施质量阈值。不包含精确关键词的段落必须通过 0.25 的语义相似度下限才能被选中。
Deduplicate:删除近乎相同的段落。
Trim:将段落严格缩小到回答用户提示的句子。
Budget:将发送给 Claude 的总有效载荷上限设为 8,000 字符。
Envelope:将检索到的文本包装在包含源文件和精确页码的文档块元素中。

(注意:embedding 模型是可选的但推荐使用。如果加载失败,系统优雅地回退到仅关键词匹配。)
由于混合 RAG 流程限制了返回的文本片段,token 节省随着文档大小呈指数增长。以下是 Token Saver 在基准测试中的表现(通过 tiktoken 测量,假设每个文档一个问题):
| 文档 | 页数 | 全部文档 Token | 返回的 Token | 节省的 Token |
|---|---|---|---|---|
| FDA 药物标签 | 33 | 23,959 | 1,021 | 95.7% |
| GDPR (EU 2016/679) | 88 | 70,260 | 998 | 98.6% |
| SFFA v. Harvard | 233 | 133,349 | 740 | 99.4% |
免责声明:Token 计数使用 cl100k_base 作为代替,基线假设整个文档在每次搜索时都被计费。
对于重复使用法庭意见、技术标准、财务报告或密集教科书的专业人士,Token Saver 消除了重复的 token 税。
对于企业用户和法律专业人士,数据隐私是不可协商的。Token Saver 的安全模型建立在三个支柱上:
零上传:文档永远不会离开你的机器。
文件夹白名单:你为 Token Saver 配置特定的文件夹。服务器会主动拒绝读取此指定目录外的文件。
网络隔离:服务器仅通过标准 I/O (stdio) 与 Claude Desktop 通信。没有监听网络端口,大大减少了攻击面。
Marktechpost 的 Token Saver 在所有三个 Claude 3.5 层级上都能工作,但测试显示了不同的行为:
Claude 3.5 Sonnet(推荐):明智的默认选择。它完美处理松散的文件引用,如果两个文件名相似会提出澄清问题,并正确应用检索到的页码。
Claude 3 Opus:擅长处理有多个声音的复杂文档(例如,有多数意见和反对意见的法律裁决)。Opus 足够聪明,能够标记何时基于上下文而非显式文本进行推断。
与许多需要复杂 Python 环境和 JSON 配置的开源 AI 工具不同,Token Saver 被打包为单个 .mcpb 包。
从项目的 GitHub Releases 页面下载 token-saver-ccr.mcpb。
打开 Claude Desktop → Settings → Extensions → Install extension。
启用扩展,点击 Configure,并选择一个专用文件夹来存放你的参考 PDF。
在第一个提示处,选择 Always allow。
扩展不会运行直到选择文件夹,因为那个单一的选择同时服务三个目的。

那个文件夹值得花一点时间思考。它设置了可以读取的内容的边界,它允许你按名称而不是输入路径来请求文件,它是服务器在对话开始时向 Claude 显示的列表。一个只包含你打算提问内容的小文件夹比指向所有文档工作得好得多。
成本大幅降低:通过使用本地混合 RAG 只向 LLM 传递相关段落,token 成本最多可降低 99%。聊天时间越长,节省越多。
可验证的准确性:因为 Token Saver 为每个检索到的块附加精确页码,你可以通过打开本地 PDF 立即验证 Claude 的声明。
绝对隐私:边界在你的本地机器。你的专有数据永远不会上传到 AI 提供商的服务器。
无摩擦设置:不需要 Python。简单的 .mcpb 文件安装可让你立即在 Claude Desktop 中运行。
查看 GitHub 仓库。
参考资源:MCP Bundle format | all-MiniLM-L6-v2 | pdfkb-mcp | wesleygriffin/pdfrag | 语料库:Dobbs v. Jackson Women's Health Organization; Berkshire Hathaway 2023 Annual Report
Arnav 目前是罗切斯特理工学院学生,攻读计算机科学学士学位并辅修经济学,具有实践后端开发经验,是 Marktechpost 的贡献者,在那里撰写关于 AI/ML 研究的文章。
Jean-marc 是一位成功的 AI 业务执行官。他领导和加速 AI 驱动解决方案的增长,并在 2006 年创办了一家计算机视觉公司。他是 AI 会议上公认的演讲者,拥有斯坦福大学 MBA 学位。
Asif Razzaq 是 Marktechpost Media Inc 的首席执行官。作为一位有远见的企业家和工程师,Asif 致力于利用人工智能的潜力造福社会。他最近的努力是推出人工智能媒体平台 Marktechpost,该平台以其深入的机器学习和深度学习新闻报道而脱颖而出,既在技术上严谨又易于广大受众理解。该平台拥有超过 200 万的月度浏览量,说明其在受众中的受欢迎程度。