Token导航 LogoToken导航TokenDH.com
Nutrient Pdf MCP Server logo
文档知识stdio官方级别未说明来源级核验

Nutrient Pdf MCP Server

MCP Server

一个用于低级别PDF对象树检查和调试的模型上下文协议服务器,支持懒加载和选择性解析,适用于LLM驱动的PDF文档结构探索。

工具数

2

提示词数

0

GitHub Stars

4

资源数

0
PythonClaude文档处理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

PSPDFKit

提供方

PSPDFKit

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m pip install --user pipx

详细介绍

营养PDF MCP服务器

用于LLM驱动的PDF文档分析和探索的强大模型上下文协议服务器

我应该使用哪个MCP服务器?

服务器最适合部署核心功能
营养DWS MCP服务器云文档工作流Nutrient-hosted API(API密钥)转换、OCR、密文、签名、提取、水印、自动化
营养文档引擎MCP服务器自托管文档工作流本地/私有云具有部署控制和数据驻留的文档处理
营养PDF MCP服务器低级PDF检查/调试本地Python运行时对象树探索、间接对象解析、结构分析

你在 PDF MCP服务器 回购。当您需要低级PDF对象树检查/调试而不是端到端工作流自动化时,请选择此选项。

A. 模型上下文协议(MCP) 用于研究具有延迟加载支持的PDF对象树的服务器。该工具允许LLM有效地探索PDF文档结构,而不会受到压倒性的令牌限制。

特性

  • 懒加载:在不加载整个对象树的情况下探索PDF结构
  • 路径导航:使用点符号浏览PDF对象(例如。, Pages.Kids.0)
  • 选择性分辨率:按需解决特定的间接对象
  • 代币高效:与全树转储相比,响应大小大幅减少
  • 类型安全:全面的类型提示和错误处理

安装

可选的 asdf 设置

你需要 pythonnodejs 安装在您的机器上。您可以选择使用 asdf.

最后安装所需的工具,包括:

git clone https://github.com/PSPDFKit/nutrient-pdf-mcp-server.git
cd nutrient-pdf-mcp-server
asdf install

# Install pipx for Python
python -m pip install --user pipx

之后继续进行其余的安装。

快速开始

git clone https://github.com/PSPDFKit/nutrient-pdf-mcp-server.git
cd nutrient-pdf-mcp-server
make install-dev  # Sets up development environment

适用于Claude Code CLI

推荐:构建和安装

pip install build
make build
pipx install dist/nutrient_pdf_mcp-1.0.0-py3-none-any.whl
claude mcp add nutrient-pdf-mcp nutrient-pdf-mcp

如果使用 asdf,您可能需要配置 pipx 运行前请执行以下操作:

export PIPX_DEFAULT_PYTHON=$(asdf which python)
pipx install dist/nutrient_pdf_mcp-1.0.0-py3-none-any.whl

发展模式

make install-dev
claude mcp add nutrient-pdf-mcp "$(pwd)/venv/bin/python" -m pdf_mcp.server

手动配置

{
  "mcpServers": {
    "nutrient-pdf-mcp": {
      "command": "python",
      "args": ["-m", "pdf_mcp.server"]
    }
  }
}

可用工具

get_pdf_object_tree

Nutrition PDF MCP服务器-通过延迟加载获取PDF对象树的JSON表示。

参数:

  • pdf_path (必填):PDF文件的路径
  • object_id (可选):要检索的特定对象ID(例如,“1 0”)
  • path (可选):要导航的对象路径(例如,“Pages.Kids.0”)
  • mode (可选):解析模式-“懒惰”(默认)或“完全”

示例:

{
  "pdf_path": "document.pdf",
  "mode": "lazy"
}
{
  "pdf_path": "document.pdf",
  "path": "Pages.Kids.0",
  "mode": "lazy"
}

resolve_indirect_object

Nutrition PDF MCP服务器-通过对象和生成编号解析特定的间接对象。

参数:

  • pdf_path (必填):PDF文件的路径
  • objnum (必填):PDF对象编号(例如3)
  • gennum (可选):PDF生成编号(默认为0)
  • depth (可选):分辨率深度-“浅”(默认)或“深”

示例:

{
  "pdf_path": "document.pdf",
  "objnum": 3,
  "gennum": 0,
  "depth": "shallow"
}

命令行用法

# Run the server
make serve

# Or run with debug logging
make serve-debug

建筑

核心组件

  • parser.py:支持延迟加载的主要PDF解析逻辑
  • server.py:MCP服务器实现
  • types.py:PDF对象和响应的类型定义
  • exceptions.py:自定义异常类

响应类型

所有PDF对象都序列化为一致的JSON格式:

{
  "type": "dict",
  "value": {
    "/Type": { "type": "name", "value": "/Pages" },
    "/Kids": {
      "type": "array",
      "value": [{ "type": "indirect_ref", "objnum": 2, "gennum": 0 }]
    }
  }
}

代币效率

延迟加载系统提供了大量的代币节省:

  • 懒惰模式:~5-50行(最小标记)
  • 浅分辨率:~50-100行(合理标记)
  • 深度分辨率:500+行(谨慎使用)

例子

探索PDF结构

  1. 获取概述: get_pdf_object_tree(path="document.pdf", mode="lazy")
  2. 导航到页面: get_pdf_object_tree(path="document.pdf", path="Pages", mode="lazy")
  3. 解析特定页面: resolve_indirect_object(objnum=3, gennum=0, depth="shallow")
  4. 需要时深潜: resolve_indirect_object(objnum=3, gennum=0, depth="deep")

路径导航示例

  • "Pages" -导航到Pages对象
  • "Pages.Kids" -从页面获取儿童数组
  • "Pages.Kids.0" -获取第一页
  • "Pages.Kids.0.MediaBox.2" -从MediaBox数组获取宽度

发展

快速开始

# Set up development environment
make install-dev

# Run all quality checks (format, lint, typecheck, test)
make quality

# Or run individual commands
make test          # Run tests
make format        # Format code
make lint          # Run linter
make typecheck     # Type checking

项目结构

nutrient-pdf-mcp-server/
├── pdf_mcp/
│   ├── __init__.py
│   ├── server.py          # MCP server
│   ├── parser.py          # PDF parsing logic
│   ├── types.py           # Type definitions
│   └── exceptions.py      # Custom exceptions
├── tests/                 # Test suite
├── res/                   # Sample PDFs
├── pyproject.toml         # Project configuration
└── README.md

发布到PyPI

# Build the package
make build

# Upload to test PyPI first
twine upload --repository testpypi dist/*

# Upload to production PyPI
twine upload dist/*

发布后,用户可以安装:

pipx install nutrient-pdf-mcp
# or
pip install --user nutrient-pdf-mcp

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 通过测试进行更改
  4. 确保代码质量检查通过
  5. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

相关项目

目录标签

目录标签

PythonClaude文档处理PDF分析本地部署对象树解析懒加载LLM工具文档结构探索

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

来源信息

继续浏览同类 MCP