anyformat Skill 技能
AI 文档结构化提取工作流(Claude Code Skill)
anyformat 是一个 AI 文档处理与结构化提取平台,通过 MCP 服务器或 HTTP API 提供文档解析与数据抽取能力。用户以 typed graph 方式定义抽取工作流(指定要提取的字段及其描述),提交文档后即可获得带置信度和证据的结构化结果。平台支持发票、合同、表单等多种文档类型,适用于需要对大量非结构化文档进行自动化数据提取的业务场景。
技能简介
anyformat 技能由官方以 npm 包形式分发,安装后即可在 Claude Code 中直接调用。技能内置了 anyformat MCP 服务器的工具说明(list_workflows、create_workflow、stage_files、run_document_packet、get_run、parse_document 等),AI 代理无需查阅外部文档即可正确调用接口、构建工作流并读取抽取结果。该设计将 API 的复杂性封装在技能层,让 AI 代理专注于业务逻辑而非接口细节。
核心能力
- MCP 工具封装:直接在 Claude Code 中使用 anyformat 全部 MCP 工具,包括 list_workflows、create_workflow、stage_files、run_document_packet、get_run、parse_document、ask_knowledge 等,无需记忆 API 调用约定
- Typed Graph 工作流设计:以图结构定义抽取流程,支持 parse(解析)、extract(提取)、classify(分类)、splitter(分页)等多种节点类型,支持边的连接以构建复杂多步抽取逻辑
- 本地文件处理:通过 stage_files 工具将本地文件上传并接入工作流,弥合了 MCP 工具无法直接传文件的能力缺口
- Smart Lookup 智能补全:当文档中无法直接提取某个字段时,可配置基于参考文件(CSV/目录表)的智能查找,在文档内容之外补充外部数据源
- 结构化结果输出:每个抽取字段返回 value(字符串值)、confidence(置信度)以及 evidence(证据信息),便于下游系统做可信判断
- 分页文档支持:通过 splitter 节点将一个 PDF 中的多个页面或多个文档拆分为独立抽取单元,适用于多页合同、多张发票等场景
- Webhook 实时回调:生产环境推荐使用 Webhook 而非轮询,降低延迟并节省接口调用配额
安装配置
前置要求
- Node.js 环境
- Claude Code 已安装并可正常运行
- anyformat 账号(从 app.anyformat.ai → Settings → API keys 生成 API Key)
全局安装(所有项目共享)
打开终端,运行以下命令:
npx @anyformat/skill
这会将技能安装到 ~/.claude/skills/anyformat/ 目录,所有 Claude Code 会话均可使用。安装完成后重启 Claude Code 使其加载新技能。
项目级安装(仅当前项目)
npx @anyformat/skill --project
这会将技能安装到当前项目 ./.claude/skills/anyformat/ 目录,适用于团队项目中希望所有成员使用相同技能版本的场景。
配置 API Key
安装技能后,需要将 API Key 配置为环境变量:
export ANYFORMAT_API_KEY=af_your_key_here
API Key 从 app.anyformat.ai 的 Settings → API keys 页面获取。如果未设置该环境变量,技能会提示用户手动提供,但不会硬编码或生成任何凭证。
使用步骤
第一步:确认 MCP 工具可用
在 Claude Code 会话中输入包含文档处理意图的描述(如帮我从这个 PDF 里提取供应商名称和总金额),技能触发后会检查 anyformat MCP 服务器的工具列表是否可用。若 MCP 服务器已配置,AI 将直接使用 MCP 工具;若不可用,则降级为原始 HTTP 调用方式。
第二步:创建工作流(定义抽取字段)
通过 create_workflow 工具定义工作流,指定解析节点和抽取字段。每个字段需提供 name(字段名)、description(字段描述,建议描述值的含义而非标签文字)和 data_type(数据类型,支持 string、float、integer、date、datetime 等)。
第三步:上传文档并运行抽取
使用 stage_files 将本地文件上传获取 object_id,然后通过 run_document_packet 将文件接入工作流并触发抽取任务。若只需快速解析(无需自定义字段),可直接使用 parse_document 工具。
第四步:读取抽取结果
通过 get_run 工具轮询任务状态,然后从返回结果中读取各字段的 value 和 confidence。对于分页文档,每个独立文档对应 extractions 数组中的一个条目,需根据 split_name 和 partition 判断属于哪个子文档。
第五步(可选):配置 Webhook 实时回调
对于高频抽取场景,建议在创建工作流时配置 Webhook URL,anyformat 会在任务完成后主动推送结果,避免轮询消耗配额。
适用场景
- 财务对账:从大量发票 PDF 中自动提取供应商名称、金额、日期等信息,导入财务系统进行对账或审计,无需人工逐张录入
- 合同审查:将纸质或扫描版合同上传,提取合同双方、标的金额、履约期限等关键条款,辅助法务人员快速定位风险条款
- 表单数据录入:将政府机关、金融机构的标准表单数字化,提取结构化数据后写入数据库,替代人工录入
- 多页文档拆分处理:对于包含多张独立单据的 PDF(如一本报销单),通过 splitter 节点将每页作为独立文档分别抽取,保证数据不串页
- AI 代理文档处理管道:在 AI 代理的工作流中集成 anyformat 技能,使 AI 能够处理用户上传的文档类附件并基于抽取结果执行后续任务
适用人群
- 开发者:需要在应用中集成文档解析能力的软件工程师,尤其在使用 Claude Code 等 AI 编程工具时
- 财务与运营人员:日常需要处理大量发票、合同、表单等文档,期望自动化数据提取减少重复劳动
- AI Agent 开发者:构建 AI 工作流自动化系统,需要让 AI 代理能够处理用户上传的文档并提取结构化数据
- 文档数字化项目团队:将历史纸质文档数字化并录入系统的项目组,需要批量处理能力
工作原理
anyformat 的核心技术是 typed graph 工作流。用户通过 API 或 MCP 工具定义一个有向图,图中有且仅有一个 parse 节点(负责将 PDF/图片解析为结构化文本),可选的 extract 节点(负责从解析结果中提取目标字段),以及连接节点的 edges。提交文档后,平台按拓扑顺序执行图中各节点,最终将结果聚合返回。
在 MCP 模式下,Claude Code 可以直接调用平台提供的工具,技能文件(SKILL.md)中已包含所有工具的参数说明和调用示例,AI 代理无需额外学习即可正确使用。这种设计将 API 的复杂性封装在技能层,降低了 AI 代理集成文档处理能力的门槛。
官方链接
- 官网:https://anyformat.ai
- 文档中心:https://docs.anyformat.ai
- API 管理(Key 生成):https://app.anyformat.ai
- MCP 服务器端点:https://api.anyformat.ai/mcp
- npm 包:https://www.npmjs.com/package/@anyformat/skill
评论与建议
登录 后参与评论或提建议