MCP Pandoc Server 使用说明

项目简介

MCP Pandoc Server 是一个基于 Model Context Protocol (MCP) 的服务器,它利用 Pandoc 这一强大的文档转换工具,为大型语言模型 (LLM) 客户端提供文档格式转换功能。用户可以通过简单的指令,将文本内容或文件在各种文档格式之间进行转换,例如 Markdown、HTML、PDF、DOCX 等。

主要功能点

  • 文档格式转换: 支持多种文档格式之间的相互转换,包括 Markdown, HTML, PDF, DOCX, RST, LaTeX, EPUB, TXT。
  • 内容转换: 可以直接转换文本内容,无需指定输入文件。
  • 文件转换: 支持指定输入文件路径进行转换。
  • 输出文件: 对于高级格式(如 PDF, DOCX 等),支持指定输出文件路径,方便用户保存转换后的文件。
  • 工具集成: 通过 MCP 协议的工具 (Tool) 机制,将 Pandoc 的文档转换能力集成到 LLM 应用中。

安装步骤

本 MCP 服务器可以通过两种方式安装:手动配置 'claude_desktop_config.json' 文件或使用 Smithery 自动安装。

方法一:手动配置 'claude_desktop_config.json' 文件

  1. 找到配置文件: 根据您的操作系统,打开 'claude_desktop_config.json' 文件:

    • MacOS: 'open ~/Library/Application\ Support/Claude/claude_desktop_config.json'
    • Windows: '%APPDATA%/Claude/claude_desktop_config.json'
  2. 编辑配置文件: 在 'claude_desktop_config.json' 文件中的 'mcpServers' 字段下添加 'mcp-pandoc' 的配置信息。

    如果您想使用已发布的版本,添加以下配置:

    {
      "mcpServers": {
        "mcp-pandoc": {
          "command": "uvx",
          "args": ["mcp-pandoc"]
        }
      }
    }

    如果您想使用本地开发版本 (需要您先克隆仓库到本地,并替换 '<DIRECTORY>' 为您的本地仓库路径),添加以下配置:

    {
      "mcpServers": {
        "mcp-pandoc": {
          "command": "uv",
          "args": [
            "--directory",
            "<DIRECTORY>/mcp-pandoc",
            "run",
            "mcp-pandoc"
          ]
        }
      }
    }

方法二:使用 Smithery 自动安装 (仅限已发布版本)

如果您希望更便捷地安装已发布的版本,可以使用 Smithery 命令行工具自动安装。

  1. 安装 Smithery CLI: 如果尚未安装,请先安装 Smithery CLI。

    npm install -g @smithery/cli
  2. 运行安装命令: 运行以下命令,Smithery 将自动为您配置 'claude_desktop_config.json' 文件。

    npx -y @smithery/cli install mcp-pandoc --client claude

服务器配置

MCP 客户端需要配置 MCP 服务器的启动命令及其参数才能建立连接。以下是 'mcp-pandoc' 服务器的配置信息,通常配置在 MCP 客户端的配置文件中(例如 'claude_desktop_config.json')。

{
  "mcpServers": {
    "mcp-pandoc": {
      "serverName": "mcp-pandoc", // 服务器名称,用于在客户端中标识和调用
      "command": "uvx", // 启动服务器的命令,这里使用 uvx (uv + execute),表示执行已发布的 Python 包
      "args": ["mcp-pandoc"] // 命令参数,这里指定要执行的包名称为 mcp-pandoc
    }
  }
}

注意:

  • 如果您选择手动配置 'claude_desktop_config.json' 文件,请确保 JSON 格式正确。
  • 使用 Smithery 自动安装更快捷方便,但仅适用于已发布的版本。
  • 如果您需要使用本地开发版本,请参考手动配置中“开发/未发布服务器配置”部分。

基本使用方法

配置完成后,您可以在支持 MCP 协议的 LLM 客户端中使用 'mcp-pandoc' 服务器提供的文档转换工具。

工具名称: 'convert-contents'

功能描述: 将内容在不同格式之间进行转换。

使用示例:

  1. 转换文本内容为 HTML: 在 LLM 客户端中,您可以发送类似这样的指令:

    将这段 Markdown 文本转换为 HTML:
    
    # 标题
    这是一段 **加粗** 的文本。

    服务器会将提供的 Markdown 文本转换为 HTML 格式并返回。

  2. 将文本内容保存为 PDF 文件: 如果您想将文本内容保存为 PDF 文件,需要提供输出文件路径。

    将这段文本保存为 PDF 文件,文件路径为 /path/to/output.pdf:
    
    这是一段需要保存为 PDF 的文本。

    请注意:

    • 必须提供完整的文件路径,包括文件名和扩展名(例如 '.pdf')。
    • PDF 转换需要预先安装 TeX Live。请根据您的操作系统安装 TeX Live (macOS: 'brew install texlive', Ubuntu/Debian: 'sudo apt-get install texlive-xetex', Windows: 安装 MiKTeX 或 TeX Live)。
  3. 转换 Markdown 文件为 DOCX 文件: 您可以指定输入文件路径和输出文件路径进行文件转换。

    将 Markdown 文件 /path/to/input.md 转换为 DOCX 文件,并保存到 /path/to/output.docx

    同样,必须提供完整的文件路径,包括文件名和扩展名。

支持的格式:

  • 基本格式: 'txt', 'html', 'markdown' (转换结果会直接显示在聊天中,无需指定输出文件路径)
  • 高级格式: 'pdf', 'docx', 'rst', 'latex', 'epub' (必须指定输出文件路径)

重要提示:

  • 对于高级格式的转换,务必提供完整有效的输出文件路径。
  • 进行 PDF 转换前,请确保已安装 TeX Live。
  • 如果转换失败,请检查错误信息,并确保您已正确安装 TeX Live(如果需要 PDF 转换),并提供了完整的文件路径(如果需要输出到文件)。

信息

分类

开发者工具