E-Book MCP Server with PDF Conversion

E-Book MCP Server with PDF Conversion

site icon
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

安装教程

  1. 克隆仓库
  2. 安装所需的Python包: pip install fastapi python-docx pdfkit reportlab pydantic uvicorn pillow
  3. 安装wkhtmltopdf (可选):
  4. Windows: 从 wkhtmltopdf.org 下载并安装
  5. Linux: sudo apt-get install wkhtmltopdf
  6. 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"
})

许可证

该项目遵循 MIT 开源许可条款。