
knowledge-work-plugins 的 pdf-viewer 插件在实时预览中交互式填写 PDF 表单【免费下载链接】knowledge-work-pluginsOpen source repository of plugins primarily intended for knowledge workers to use in Claude Cowork项目地址: https://gitcode.com/GitHub_Trending/kn/knowledge-work-plugins本篇指南以 pdf-viewer/commands/fill-form.md 为骨架讲解如何在 Claude Cowork 的 pdf-viewer 插件中通过实时可视化预览完成 PDF 表单填写。你将掌握「用户驱动」与「AI 辅助」两条填充路径、如何应对Text1/Field_7这类无名字段、fill_form的字段值规范以及如何与签名、标注工作流无缝衔接最终得到一份可下载的已填写 PDF。一、先搞清楚什么是可视化表单填充/pdf-viewer:fill-form命令帮助用户在实时查看器live viewer中完成可填写 PDF 表单。它与程序化表单工具的根本区别在于每填充一个字段用户都能在页面上直接看到值落进正确的输入框而不是只收到一条填充成功的消息。这一点来自 fill-form.md 开篇的定义——它强调的交互本质是「live visual feedback」实时视觉反馈与「easy undo/edit」随时撤销与编辑。用户在查看器中可以自由拖动、编辑任何字段也可以随时要求重新调用fill_form填入新值。二、为什么用它而不是程序化表单工具原文档 fill-form.md 给出了三个核心理由视觉确认Visual confirmation用户看到每个值落在正确的方框里而不是只看一条成功消息。这对合同、税务表格等需要谨慎确认的文档尤其重要。无名字段Unnamed/unlabeled fields许多真实世界 PDF 的字段元数据里只有机器名如Text1、Field_7甚至完全没有名字。而真正的标签Date of Birth、SSN是打印在渲染页面上、紧邻字段旁边的不在字段元数据中。此时需要用get_screenshot看清每个字段实际是什么再按名字填充。易于更正Easy correction用户可以直接在查看器中编辑或清空任何字段或要求重新调用fill_form提交新值。从 pdf-viewer/skills/view-pdf/SKILL.md 可以看到插件设计者将表单填充明确定位为 visual, not programmatic可视化而非程序化的工作流专门处理「字段名晦涩、标签印在页面上而非元数据中」的真实表单。三、底层环境与工具链先了解才能动手该插件不依赖远程连接器而是使用一个本地 MCP 服务器。据 pdf-viewer/CONNECTORS.md 说明类别服务器运行方式PDF 查看与标注modelcontextprotocol/server-pdf通过npx本地 stdio 运行自动安装环境要求Node.js 18如需打开远程 PDFarXiv、bioRxiv 等需要联网无需任何 API Key 或认证服务器会在插件加载时自动启动见 README.md。填充表单会用到以下 MCP 工具详见 SKILL.md工具作用关键参数 / 返回值list_pdfs列出可用本地 PDF 与允许访问的目录无参数display_pdf在交互式查看器中打开 PDF每个文档只调用一次url本地路径或 HTTPS 链接、page初始页默认 1、elicit_form_inputs为true时先提示用户填表再显示返回viewUUID与formFieldsinteractdisplay_pdf之后的全部后续动作传入viewUUID 一个或多个命令可通过commands数组批量提交命令按顺序执行fill_form按名字填充字段fields: [{name, value}, ...]get_screenshot将页面捕获为图片用于验证填充结果pageget_text提取页面文本单次最多 20 页用于阅读内容不适合做摘要formFields 返回结构display_pdf返回的formFields包含每个可填写字段的name名字、type类型、page页码、bounding box包围盒坐标见 SKILL.md。这些坐标同样可用于签名定位。坐标系统影响截图与定位所有坐标使用PDF 点1/72 英寸原点在左上角Y 轴向下递增US Letter 页面为 612×792pt见 SKILL.md。理解这一点才能把截图中的视觉标签与formFields的包围盒对应起来。四、路径一用户驱动填充简单、标签清晰的表单对于字段标签清晰、用户自己就能看懂的表单采用最简单的做法调用display_pdf并传入elicit_form_inputs: true服务器检测到表单字段后会在查看器打开之前提示用户输入各字段的值输入完成后已填充的 PDF 直接展示给用户。这条路径适合字段少、名字直观、用户知道自己该填什么的场景几乎不需要 AI 介入见 fill-form.md。SKILL.md同样确认对简单且标签清晰的表单用elicit_form_inputs: true让用户预先输入即可SKILL.md。五、路径二AI 辅助填充复杂表单、无名字段、已有上下文当字段名晦涩如Text1、Field_7、字段无名字、或者你手头已有用户上下文时走完整的 AI 辅助流程fill-form.md打开并检查调用display_pdf不带 elicit检查返回的formFields——记录每个字段的 name、type、page、bounding box截图匹配视觉标签若字段名晦涩通过interact→get_screenshot逐页截图观察每个包围盒旁边的视觉标签搞清每个字段实际含义确定值对每个字段二选一——从对话上下文中推断姓名、日期、邮箱等向用户提问并用视觉标签描述字段例如第 1 页的 Date of Birth 方框而非用机器名提问填充interact→fill_form载荷为fields: [{name, value}, ...]验证interact→get_screenshot逐页截取填充后的页面确认把截图展示给用户请其确认或直接在查看器中修改。fill_form的命令载荷结构为{ action: fill_form, fields: [ { name: f1_1, value: 张三 }, { name: f1_2, value: Acme 科技有限公司 } ] }配合 SKILL.md 的批量建议可以在一次interact调用中用commands数组串联多个动作——例如把fill_form和get_screenshot放进同一批命令命令按顺序执行结尾的截图即用于验证本次填充。六、完整实战W-9 表单填写全流程原文档 fill-form.md 给出了一个非常完整的对话示例这里展开讲解每一步背后的逻辑用户Help me fill out this W-9第一步识别晦涩字段名。你调用display_pdf返回的formFields是f1_1、f1_2、f1_3、c1_1……——典型的加密机器名用户根本无法分辨。第二步截图定位视觉标签。你调用interact→get_screenshot截取第 1 页对照包围盒发现f1_1紧邻 Namef1_2是 Business namec1_1是 Individual 复选框。这一步正是本插件相对程序化表单工具的核心优势——标签印在页面上用截图去看而不是猜元数据。第三步用视觉标签与用户确认缺失信息。你对用户说我能看到 Name、Business name、Address、TIN 和税务分类复选框。我会先填入已知的姓名和日期——你的 TIN 和营业地址是什么这里的原则是描述字段时永远用用户看得懂的视觉标签而不是f1_1这种机器名。第四步批量填充并验证。拿到答案后interact→fill_form提交所有字段值紧接着get_screenshot截取填充后的页面展示给用户。第五步处理剩余部分。你补充道这是填充后的表单 [截图]。签名行还是空的——需要我用/pdf-viewer:sign帮你加签名吗这个示例完整覆盖了「识别 → 定位 → 询问 → 填充 → 验证 → 移交」的闭环是 AI 辅助路径的教科书式应用。七、字段值规范复选框、单选按钮与文本框填充时需要注意字段类型的取值约定fill-form.md复选框 / 单选按钮Checkbox/radio值为true/false或该选项的字符串例如税表里的 Individual。文本框Text直接传要填写的字符串即可。例如填写 W-9 中的税务分类复选框{ action: fill_form, fields: [ { name: c1_1, value: true }, { name: c1_2, value: false } ] }八、与签名工作流联动先填文本再签图像原文档 fill-form.md 特别提醒签名区域通常是独立字段先填充文本字段再把图像签名交给/pdf-viewer:sign。/pdf-viewer:sign的工作流详见 pdf-viewer/commands/sign.md获取签名图像路径PNG/JPG本地文件或 HTTPS 链接不支持 data: URIdisplay_pdf打开 PDF检查formFields中是否有签名类型字段含页码与包围盒坐标有签名域就用其坐标定位否则询问第几页、页面什么位置interact→add_annotations放置 image 类型标注{ action: add_annotations, annotations: [ { id: sig1, type: image, page: 3, imageUrl: /path/to/signature.png, x: 400, y: 700, width: 150 } ] }宽度/高度省略时会根据图像自动检测坐标原点为左上角US Letter 页面上签名通常放在x: 400, y: 700附近。放置后用get_screenshot验证位置不对可用update_annotations调整。免责声明来自 sign.md 与 README.md这放置的是签名的视觉图像不是经过认证的加密数字签名需要法律效力的电子签名请使用专用签名服务。九、注意事项与最佳实践综合 fill-form.md、SKILL.md 与 open.md 的说明viewUUID 只认一次display_pdf每次调用都会创建独立的查看器携带旧 UUID 的interact调用无法触达用户正在看的那个查看器务必复用首次返回的viewUUIDSKILL.md。用户可直接编辑任何时刻用户都能在查看器中拖动、编辑字段或要求重新调用fill_form——这是可视化方案相比程序化填充的兜底能力。完成后的导出填充或标注完成后提醒用户可从查看器工具栏下载标注后的 PDF 副本README.md。不要用查看器做纯内容提取如果用户只是要摘要或文本提取应直接用 Claude 的原生 Read 工具读取 PDF 路径不要打开查看器open.md、SKILL.md。批量提交命令把相关动作放进同一次interact的commands数组并在每批末尾追加get_screenshot让用户看到每步变化SKILL.md。支持的表单来源本地文件路径、arXiv/abs/链接自动转换为 PDF URL、任意直接 HTTPS PDF 链接bioRxiv、Zenodo、OSF 等注意用 PDF 直链而非落地页。十、相关命令与文档索引命令 / 文件说明pdf-viewer/commands/fill-form.md本文主体交互式表单填充的完整规范pdf-viewer/commands/open.md打开 PDFdisplay_pdf/list_pdfs与支持来源pdf-viewer/commands/sign.md放置签名 / 首字母图像标注pdf-viewer/commands/annotate.md协作式标注高亮、备注、图章等pdf-viewer/skills/view-pdf/SKILL.md插件技能主文档全部工具、标注类型与工作流pdf-viewer/CONNECTORS.md本地 MCP 服务器配置与运行方式pdf-viewer/README.md插件总览、命令表与使用边界掌握以上内容后你就能在 Claude Cowork 中完成从「打开 PDF」到「识别晦涩字段 → 视觉确认 → 交互式填充 → 签名收尾 → 下载成果」的完整表单处理闭环。【免费下载链接】knowledge-work-pluginsOpen source repository of plugins primarily intended for knowledge workers to use in Claude Cowork项目地址: https://gitcode.com/GitHub_Trending/kn/knowledge-work-plugins创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考