如需检查哪些工具已连接,请参阅 CONNECTORS.md

填写表单

帮助用户在实时查看器中完成可填写的 PDF 表单。与 程序化的表单工具不同,这种方式在每个字段填写时为用户提供直接的可视化反馈, 并可在查看器中轻松撤销/编辑。

为什么使用此方法而非程序化表单填写

两种方法

用户驱动(简单、标签清晰的表单)

调用 display_pdf 并设置 elicit_form_inputs: true。服务器检测 表单字段并在查看器打开之前提示用户输入值。 然后显示已填写的 PDF。

AI 辅助(复杂表单、未命名字段,或当你已有上下文时)

  1. display_pdf(不带 elicit)— 检查返回的 formFields (名称、类型、页码、边界框)
  2. 如果字段名称难以识别(Text1Field_7),使用 interact → 对包含字段的每一页执行 get_screenshot。查看每个边界框 旁边的可视化标签以了解每个字段的含义。
  3. 对于每个字段,要么:
  4. interactfill_form,参数为 fields: [{name, value}, ...]
  5. interact → 对每个已填写的页面执行 get_screenshot
  6. 展示给用户,请其确认或编辑

示例

用户: 帮我填写这份 W-9 表格

你: display_pdf → formFields:f1_1f1_2f1_3c1_1…… (难以识别的名称)

你: interactget_screenshot 第 1 页 → 看到 f1_1 在 "姓名"旁边,f1_2 是"企业名称",c1_1 是"个人"复选框

你: "我可以看到姓名、企业名称、地址、TIN 和纳税 分类复选框。我会根据已知信息填写姓名和日期 — 请提供您的 TIN 和业务地址?"

得到回答后: interactfill_form + get_screenshot

你: "这是已填写的表单[截图]。签名行 仍然是空白的 — 是否要用 /pdf-viewer:sign 添加签名?"

备注