A document pack,例如董事会材料、投标材料或结案文件夹,可以通过 AI 代理在固定顺序下从同一条常驻提示中组装,文件在本机本地合并。顺序来源于文件名,代理分轮执行合并,您在发送前验证结果:

将我的 documents 文件夹中的所有 PDF 按文件名顺序合并成一个包。每次合并四个文件,将每个结果链入下一次调用,并告诉我最终文件名。

带有配置和故障排除的逐步版本请参见文档:How to assemble a document pack with an AI agent

为什么文档包会出错?

每个包的形态始终相同:固定顺序、超过四个部分、以及截止日期。错误也总是相同。缺少某个部分、两个部分位置互换,或最终文件是由某个章节的旧版本组装而成。

如果只告诉代理“把文件放在一起”,它必须根据您句子的措辞猜测顺序。若给出可检查的排序规则,则无需猜测。这里的自动化是消除猜测,而不是消除人工。

工作流程是什么,逐步说明?

  1. 为文件命名,使顺序一目了然。 使用数字前缀。
  2. 先检查许可证。 向代理询问许可证状态。
  3. 分轮运行组装。 merge 工具每次最多合并四个文档。
  4. 核对页数。 将结果页数与各部分页数之和进行比较。
  5. 在独立步骤中进行转换、标记和清理。 其他 MCP 服务器负责这些操作。

步骤 1:为文件命名,使顺序一目了然

D:/Storage/Documents/
  00-cover.pdf
  01-summary.pdf
  02-body.pdf
  03-appendix-a.pdf
  04-appendix-b.pdf
  05-annexes.pdf

数字前缀消除了您和代理对顺序的歧义。这是强制机制:规则写在文件夹中,提示可以月复一月保持不变。重复运行前,将 GROUPDOCS_MCP_OUTPUT_PATH 设置为单独的文件夹。默认情况下,输出会保存在 storage 文件夹中,因此上个月的包和每轮的中间结果都会被 “每个 PDF 在我的 documents 文件夹中” 这条指令捕获。

步骤 2:在正式运行前检查许可证

Merger 服务器的许可证状态是什么?

代理调用 get_license_status,该方法不接受参数,也不修改任何内容。在评估模式下,每次合并的结果仅保留前 3 页,并在每页加上试用徽章,且输出中不会说明这一点。

步骤 3:分轮运行组装

使用顶部展示的常驻提示。对于上述六个文件,代理会调用 merge 两次:文件 00‑03 生成中间结果,该结果再与文件 04、05 合并生成最终包。更多部分只意味着更多轮。顺序遵循槽位顺序(file1 先,file4 后),因此链式轮次会把前一次的结果放入第一个槽位。

步骤 4:核对页数

最终包有多少页?

get_document_info 会返回结果的 pageCount。缺失的部分会导致页数偏低。若包的各部分页数总和很多,却只报告 3 页,则说明是未授权的合并。

步骤 5:在独立步骤中进行转换、标记和清理

并非所有部分都是 PDF,且包通常需要除组装之外的处理。merge 每次只接受同一格式族的文件,因此先使用 GroupDocs.Conversion.Mcp 将 Word 部分转换为 PDF。随后可使用同族的其他服务器为包加水印(GroupDocs.Watermark)、签名(GroupDocs.Signature)或剥离元数据(GroupDocs.Metadata)。每个功能都是独立的服务器,安装方式相同。如果包需要数字签名,请最后进行:任何后续更改(包括加水印或剥离元数据)都会使签名失效。

代理决定什么,引擎执行什么?

步骤 代理 引擎
选取文件 列出文件夹并读取数字前缀 在 storage 文件夹中解析每个名称
规划轮次 每次四个文件分组 无
合并 按槽位顺序调用 merge 合并文档并保存结果
链接 将前一次结果传入下一次调用 与后续文件合并
验证 调用 get_document_info 并比较页数 返回页数

引擎从不决定顺序;它只遵循提供的槽位。这就是命名规则重要的原因。

示例会话(节选)

基于文档化工具行为的示例,而非实际截图。

You:   Merge every PDF in my documents folder into one pack, in
       file-name order. Merge four at a time, chaining each result
       into the next call, and tell me the final file name.

Agent: Found 6 PDFs, 00-cover.pdf to 05-annexes.pdf.
       [calls merge: 00-cover, 01-summary, 02-body, 03-appendix-a]
       [calls merge: previous result, 04-appendix-b, 05-annexes]
       The final pack is saved in your output folder. I can check its
       page count against the six parts if you like.

真实限制

  • 评估模式会将包裁剪至 3 页。 结果仅保留前 3 页,并在每页加上试用徽章。未授权的多部分包会返回三页且看似完成。请先检查 get_license_status,随后对比页数。
  • 每次调用最多四个文档。 通过分轮可以绕过此限制;需要让代理进行链式调用。
  • 每次合并只能使用一种格式族。 先将混合格式的部分转换后再合并。
  • 排序规则是一种约定,而非锁定。 文件命名错误会导致包顺序错误。页数检查能发现缺失的部分,却无法捕捉顺序互换的情况。

常见问答

如何按指定顺序将多个文档合并为一个 PDF? 在文件名上加数字前缀,并让代理按文件名顺序、每次四个文件合并。merge 工具会遵循 file1‑file4 输入的顺序。

AI 代理能每月自动创建董事会材料吗? 能。保持相同的命名约定并复用同一提示,将 GROUPDOCS_MCP_OUTPUT_PATH 指向单独的文件夹(或清空上一次的输出),这样旧的包不会再次被合并。每次完成后核对页数即可。

如果某些部分是 Word 文件怎么办? 先使用 GroupDocs.Conversion.Mcp 将它们转换为 PDF,然后再合并。只要两个服务器都已注册,就可以在同一次对话中完成。

深入了解