
E-Book MCP Server with PDF Conversion

2025.03.14
0
PythonPDF转换HTML处理电子书生成内容生成
MCP-server-PDF--Conversion 是一个用于从HTML内容创建电子书和PDF文档的服务器,特别擅长处理嵌入的图像。该项目提供了强大的功能,可以将HTML文件转换为PDF,同时正确处理嵌入的图像。
View on GitHub
Overview
基本能力
产品定位
MCP-server-PDF--Conversion 是一个专注于将HTML内容转换为PDF文档的服务,特别适用于需要处理嵌入图像的场景。
核心功能
- 将HTML文件转换为PDF文档,并正确处理嵌入的图像
- 支持 pdfkit (wkhtmltopdf) 和 reportlab 两种PDF生成引擎
- 强大的错误处理和日志记录功能
- 临时文件管理,自动清理
- 转换过程中提供详细的诊断信息
适用场景
- 需要将HTML内容转换为PDF文档的场景
- 需要处理嵌入图像的PDF生成
- 需要高质量PDF输出的项目
工具列表
handle_call_tool
: 核心功能函数,用于处理HTML到PDF的转换- 能力:接受HTML文件和嵌入图像,生成PDF文档
常见问题解答
- 如果pdfkit不可用,服务会自动回退到reportlab
- 需要安装wkhtmltopdf以获得更好的PDF质量
使用教程
使用依赖
- Python 3.9+
- wkhtmltopdf (可选,但推荐安装以获得更好的PDF质量)
- Python包:
- fastapi
- python-docx
- pdfkit
- reportlab
- pydantic
- uvicorn
- pillow
安装教程
- 克隆仓库
- 安装所需的Python包:
pip install fastapi python-docx pdfkit reportlab pydantic uvicorn pillow
- 安装wkhtmltopdf (可选):
- Windows: 从 wkhtmltopdf.org 下载并安装
- Linux:
sudo apt-get install wkhtmltopdf
- macOS:
brew install wkhtmltopdf
调试方式
使用handle_call_tool
函数进行转换,示例:
result = await handle_call_tool("CREATE_DOC", {
"text_file": "document.html",
"images": {
"header.png": "images/header.png",
"footer.jpg": "images/footer.jpg"
},
"output_pdf": "output/document.pdf"
})