Spire是什么。PDF MCP服务器?
它提供了广泛的PDF操作功能,包括 合并、分裂、, 文本替换, 表单操作、水印和格式转换。
主要特点
- 从头开始创建PDF文档
- 修改现有的PDF文件(替换文本、添加水印、压缩等)
- 合并 分割PDF文件
- 加密和解密PDF文档
- 平铺表单字段 并提取表单值
- 删除或展开PDF书签
- 从PDF文件中删除附件
快速开始
先决条件
- Python 3.10或更高版本
安装
- 克隆存储库:
git clone https://github.com/eiceblue/spire-pdf-mcp-server.git
cd spire-pdf-mcp-server- 使用紫外线进行安装:
uv pip install -e .运行服务器
启动服务器(默认端口8000):
uv run spire-pdf-mcp-server自定义端口(例如8080):
# Bash/Linux/macOS
export FASTMCP_PORT=8080 && uv run spire-pdf-mcp-server
# Windows PowerShell
$env:FASTMCP_PORT = "8080"; uv run spire-pdf-mcp-server与AI工具集成
光标IDE
- 将此配置添加到游标:
{
"mcpServers": {
"pdf": {
"url": "http://localhost:8000/sse",
"env": {
"PDF_FILES_PATH": "/path/to/pdf/files"
}
}
}
}- PDF工具将通过您的AI助手提供。
远程托管和协议
此服务器使用 服务器发送事件(SSE) 传输协议。 对于其他环境:
- 克劳德桌面(需要stdio):使用 超级网关 将SSE转换为stdio。
- 远程托管:遵循 远程MCP服务器指南.
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
FASTMCP_PORT | 服务器端口 | 8000 |
PDF_FILES_PATH | PDF文件目录 | ./pdf_files |
可用工具
服务器提供 15+工具 分为5类:
文档操作(10个工具)
- create_pdf 文档:创建新的PDF文档
- convert_pdf文档:将PDF转换为其他格式(Word、Excel、HTML、图像、PDF/A等)
- 提取文本:从PDF页面提取文本
- 合并dfs:将多个PDF合并为一个
- add_text_watermark:在PDF中插入文本水印
- 压缩文档:减小PDF文件大小
- split_document:将PDF拆分为多个文件
- 加密文档:对PDF应用密码保护
- 解密_文档:删除密码保护
- replace_all_text:替换PDF中的所有匹配文本
书签操作(2个工具)
- 删除所有书签:从PDF中删除所有书签
- expand_bookmarks:展开书签树
表单操作(2个工具)
- flatn_formfield:扁平化PDF中的表单字段
- get_forms_values:从PDF表单中提取值
附件操作(1个工具)
- 删除所有附件:从PDF中删除所有附件
支持的转换格式
- DOC/DOCX:微软Word
- XLS/XLSX:Microsoft Excel
- PPTX 文件:Microsoft PowerPoint
- 超文本标记语言:超文本标记语言
- 可缩放矢量图形:可缩放矢量图形
- 图像格式:PNG、JPG、BMP等。
- \*\*PDF/A(1a、1b、2a、2b、3a、3b)\*\*:存档PDF
- PDF/X-1a:2001:印刷行业标准
- XPS、PCL、Markdown、灰色PDF、线性化PDF
发展
项目结构
spire-pdf-mcp-server/
├── src/spire_pdf_mcp/
│ ├── api/ # API layer (tools)
│ │ ├── document_tools.py
│ │ ├── bookmarks_tools.py
│ │ ├── forms_tools.py
│ │ ├── attachments_tools.py
│ ├── core/ # Core business logic
│ │ ├── document.py
│ │ ├── bookmarks.py
│ │ ├── forms.py
│ │ ├── attachments.py
│ │ └── base.py
│ ├── utils/ # Utilities and constants
│ │ ├── exceptions.py
│ │ └── constants.py
│ ├── server.py # MCP server implementation
│ └── __main__.py # Entry point
├── pyproject.toml # Project configuration
├── README.md # This file
└── TOOLS.md # Detailed tool documentation运行测试
uv run pytest代码质量
- 完全键入Python类型提示
- 全面的错误处理
- 模块化架构
- 一致的代码格式
- 详细的内联文档
文档
- TOOLS.md:完整的工具文档和使用示例
- 错误处理:常见错误和故障排除
🤝 贡献
- 分叉存储库
- 创建要素分支
- 提交您的更改
- 在适用的情况下添加测试
- 提交拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
版本历史记录
- v1.0.0:带有工具的初始稳定版本
- 完整的pdf文档操作功能
- 全面的错误处理
- 完全格式转换支持
