能造这台猫粮机的服务,不够 Agent native;够 Agent native 的那一家,造不了这台猫粮机。
“Agent native”不是“有 API”,也不是“有 MCP”。要看两件事:必须由人承担的那一步(付款、法律声明、质量签字),有没有被写成协议里的状态;除此之外的每一步,一个没有人类界面的调用方能不能自己走完。我在一条真实订单链上用这把尺子量了十来家制造服务,只有 Slant 3D 的公共 MCP 够到最高一级。国内两家,一家能力对口但接口只盖住订单的一半,一家接口完整但能卖的东西对不上。
high 推理档 5/5 通过 KiCad DRC。卡住的全在有对手方、有钱、有责任的地方。POST 就扣款。够 Agent native 的那家,不做电路板和贴片,外壳也只有从美国发货的 FDM。实物还没到,所以本文评的是下单这条链,不是交付。
这篇写在货到之前。截至 10 月 19 日夜里,一块 66×60 毫米的猫粮机控制板在嘉立创付了款,带贴片的那一单还在等我确认器件极性;外壳没有打印过,固件没有烧录过,猫还没吃到一粒粮。所以下面评的不是“一台由 Agent 造出来的猫粮机”,而是它路上的那条订单链:Agent 自己能走到哪,哪一步必须有人替它按。
任务是这样定的:让一支 Agent 团队为一只猫做一台自动喂食机,外壳、电路板、固件、App 全包,人只在花钱的几个闸门上确认。团队的三路 Agent(电路、外壳、固件加 App)跑在 Z.ai 开源的 ZCode 上,模型是 GLM-5.3。下了单的那块板是 rev A,出自我自己的流水线:脚本把规格生成 KiCad 板,自动布线,过 DRC;ZCode 团队第一轮从同一份参考规格重建了它,第二轮做出 rev B(加了电机电流检测),rev B 因为零件的 LCSC 料号没核完,没有下单。设计和文件在公开仓库 fxp/cat-feeder里(仓库只放设计与文件,不记录付款与生产)。软件那头进展不错,§02 给数字。真正耗时间的,是把设计变成钱、变成快递单的那一段。
那一段我量了一遍。尺子是动手前写下的,§01 交代。
“Agent native”这个词谁都在用,先交代本文怎么用。
先看几个已有的说法。Netlify 的 Mathias Biilmann 提出的 AX(Agent Experience)拆成三个动作:agent 能不能发现服务能做什么,能不能可靠地调用,出了问题能不能恢复。Anthropic 的工程博客讲怎么给 agent 写工具:做少量面向工作流的工具而不是包一层 CRUD,错误信息要告诉 agent 下一步怎么办。MCP 规范在工具一节里写明,执行出错要用 isError 给出能让模型自我纠正的反馈,同时“应该始终有一个能拒绝调用的人在环里”。这三处说的是同一类东西:机器可读的合同、能指路的错误、明确的人工节点。它们都没有给出一份认证清单,Netlify 那套还是卖方的口径。
我自己的尺子来得更土。动手之前,我在方案里写过一份履约接口,厂商要接进来,得实现六个动词:能力查询、校验、报价、下单(带付款凭证)、跟踪、取消。那是为了写适配器,没想过它会变成尺子。后来订单一张张下出去,又补了两条从订单里学到的:入口(钥匙怎么拿,有没有测试环境,条款允不允许机器来用)和人在哪一步(付款、法律声明、质量签字)。
于是本文的工作定义是:
一个服务是 Agent native 的,当它的每个状态迁移,都能被一个没有人类界面的调用方,凭公开的、机器可读的约定走完;而必须由人承担的迁移——付款、法律承诺、质量签字——被写成协议里的状态(一个待批准的订单、一个结账链接),而不是藏在界面里的某个勾选框。
它比“有 API”严,也比“能被浏览器自动化”严。拆成一把五级的梯子:
| 级别 | 长什么样 | 本文里的例子 |
|---|---|---|
| L0 | 只有网页,没有给机器的入口 | — |
| L1 | 网页能被浏览器 Agent 驱动:能走通,但每一步都在猜界面 | 嘉立创的 SMT 下单 |
| L2 | 有 API,但钥匙靠审批或线下发放,或者生命周期缺一块(文件进、校验、取消) | 嘉立创开放平台、造好物、PCBWay 等 |
| L3 | 自助拿钥匙,合同机器可读,从报价到取消的生命周期完整 | Slant 3D 的 REST API |
| L4 | 专门给 Agent 做的入口:类型化的工具、只读与破坏性的标注、结构化的校验输出、待批准的对象 | Slant 3D 的公共 MCP |
这是我的分级,不是行业标准。L4 那一行是照着我读到的最好的做法写的,所以 Slant 排第一有一点循环;它是不是“最好”,要看表二里的逐项事实,不能只看这个级别。六个动词加两条,是后面每张表的列。
先交代对照组,因为后面所有“卡”都要放在它旁边看。
团队是三路真 Agent(电路、外壳、固件加 App),跑在 ZCode 上,经一条团队总线和一份版本化的共享契约对话。两轮实跑的数字:
| 第一轮 | 第二轮 | |
|---|---|---|
| 本轮新增总线消息 | 25 | 21(累计 46) |
| 契约版本 | 到 v14 | 到 v24(累计) |
| 工具调用 | 192 | 226 |
| 调用失败 | 0 | 0 |
| 三路同时活跃 | 350 秒 | 460 秒 |
第一轮墙钟 1,749 秒;第二轮 2,754 秒,输入 19.2 M token、输出 0.26 M。同一个 PCB 任务单独重复了五次:GLM-5.3 在 reasoningLevel=high 下 5/5 次布线成功、KiCad DRC 0 错误 0 未连接;默认的 max 档只有 3/5,两次失败都是推理太久,一次撞上 1,500 秒上限,一次上游在第一个请求 653 秒后断流。
“0 次调用失败”只算调用本身,不含领域错误:那五次里有 141 个 MCP 调用,约 10% 返回了领域错误(规格不合法、DRC 不过),模型都读懂并修掉了,没有一次是管线的问题。
产出事后用独立的命令复核过,没有采信 Agent 自己的汇报:kicad-cli pcb drc 对导出的板子 0 错误 0 未连接;固件主机测试 21 项 517 个断言通过,pio run 编译成功;App 对模拟器 33/33。从未烧录,从未上真手机;外壳的装配检查用的是方盒估算,32 个零件里 30 个的尺寸是估的。 DRC 全过也不等于电路对:一个本地小模型第一次把 LED 接反了,DRC 一条没报。
这些数字只想说一件事:当对手方是 kicad-cli、Blender 无头、PlatformIO 这类本地工具时,Agent 几乎不卡。它们的共同点是文件进、文件出、退出码说话,没有账号,没有钱,没有法律后果。KiCad 官方给自动化的入口也是这个路数:kicad-cli 以读取和导出为主;IPC API 在 KiCad 9 和 10 里只能连一个正在运行的图形界面,只有 PCB 编辑器能装插件。我们一直走命令行;有一次在真机上用按钮打开 KiCad 图形界面,反被 macOS 的隔离属性拦住了。
连 Agent 自己的“脑子”也有一步只能人做:第一次跑 spike 时 BigModel 账户余额耗尽(错误码 1113),充值之后才补跑。
所以后面说“卡住”,指的都是这一类:有对手方的、有钱的、有责任的。
嘉立创是这次真正花了钱的地方。三张订单,合计 ¥361.99:一张 v1 板(没有 MARK 点),一张 v2 板(有 MARK 点,准备贴片),再加挂在 v2 上的贴片单。v1 其实是重复下单:没有 MARK 点的板子,平台不会把它转成贴片,这条规则是下单之后才试出来的。
我先对着开放平台把每个环节核了一遍。接口覆盖是这样的:
| 订单环节 | 开放平台 | 实际怎么做的 |
|---|---|---|
| 计价 | 接口,用真账号实测可用 | 接口 |
| 文件进 | 只收一个公网 URL,让嘉立创自己去下载;没有上传接口 | 网页上传 |
| 创建 PCB 订单 | 接口有(没实际调用,每次成功都是真订单) | 网页 |
| 创建 SMT 订单 | 没有;SMT 的接口只有查询 BOM 器件、订单、进度和寄料 | 网页,七步 |
| 校验(DFM) | 没有 | 网页上传时检查;付款后约 4 小时,人到订单列表里确认器件极性 |
| 付款 | 创建订单时 isAdvancePayment=false,接口不会扣预付款 | 人在网页付:先充值,再合并支付 |
| 跟踪 | 接口有(没实际调用) | 网页订单列表 |
| 取消 | 14 个 PCB 接口里没有 | 网页;付款后取消要交工程费,排产后不接受更改 |
入口这一头也有几处,单看每一处都说得过去:
403 请求IP来源不合法,家庭网络的出口 IP 一变就失效,开代理也失效。于是真正的订单是通过一个被 Agent 驱动的浏览器,在我已登录的账号里下的。这条路能走通,也让我看清了“L1”是什么滋味:
<div> 和 <span>,不是按钮;弹窗和新手引导会吞掉点击;页面一刷新,表单重置;最让我在意的,是两处“本该机器开口、却没人开口”的地方。
第一处,元件方向。嘉立创元件库里的 SOT-23(三脚)和 SOT-223,0° 与 KiCad 的差 180°,只有在贴片预览里才看得出来,DRC 查不到,接口里也没有这一项。预览里发现 Q1 和 U2 反了,在网页编辑器里各转 180° 存档,生成器里才补上这两种封装的偏移。其他封装有没有同样的偏移,我没验证,每次下单都得人眼看预览。
第二处,“这个设计能不能贴片”。这是个再明确不过的校验问题,答案是一条写在帮助页里的规则,却没有对应的接口。我为此付了一张重复订单的钱。
公平地说,嘉立创并不缺 Agent 意识。它的 EDA 团队在 GitHub 上放了一整排面向 Agent 的东西:easyeda-client-cli(客户端自带的命令行,可以当 MCP 服务器跑)、easyeda-api-skill、一个 WebSocket 网关扩展,还有一个本地跑嘉立创 DFM 规则的“下单检查”扩展。PCB 工艺方面的校验,嘉立创做了一部分,放在 EDA 客户端的扩展里,没放进开放平台的接口;贴片规则(MARK 点、元件方向)有没有覆盖,我没查。
JLCPCB 自己的两篇 AI 设计博文(9 月 18 日、10 月 14 日)讲的都是怎么让 Agent 操作编辑器;讲到下单的地方,是导出 Gerber、BOM 和坐标,设计验证完再上传到 JLCPCB 拿即时报价。两篇里都没有出现下单接口。它把 Agent 接到了画板,没有接到收银台。
嘉立创开放平台本身也不简陋:签名与官方示例逐字节一致,每个响应带 J-Trace-ID,业务错误码清楚。它像是给另一类调用方设计的:知道自己要下什么、愿意去网页补最后几步的人。Agent 要的是反过来:不知道结果之前,每一步都有个机器能读的回答。
造好物(我这边叫它 Hi3D;两个名字是同一个平台,这一点只靠对接方确认,hi3d.ai 的公开页面上没出现“造好物”)是另一种 L2。
先说一句公平话:它卖的是手办,不是制造能力。我拿它来量,是因为任务需要一个高精度外壳的打印出口,而它是我手里唯一带测试环境的国内入口。
它的优点很具体。有一套独立的测试环境(api-test.zaohaowu.com),而且整条路径都能走:Basic 认证换 24 小时的 Token;图生图提交后约 20 秒从 PROCESSING 到 SUCCESS;order/create 带 requestId 做幂等;order/fulfillment/batch 查履约,订单状态 0 到 7、履约状态各有枚举;order/cancel 之后订单读作“已关闭”、履约单读作“已取消”。创建、查询、取消,三个动词在真实接口上都走通了。出错时它也肯说话:伪造的图片地址被 1003 图片URL不合法,请先上传图片 拒绝,不是人像的照片被 5003 请上传人像照片 拒绝,都带着能读的原因。
缺口也很具体:
order/create 里的 price 是透传的,不校验;价格来自厂商线下给的商品目录。Agent 拿不到一个“这次要花多少钱”的、可以绑定的数字。imageUrl 必须是厂商自己认可的图;物体照片、渲染图都进不去。猫粮机外壳它接不了。modelId、productId、skuId 都是。测试密钥打到生产域名返回 40001,生产那一套我至今没拿到。1000 系统异常,不是“未找到”。我为此写了一份六项需求清单(自传模型的打印商品、提交模型的方式、报价、生产密钥、付款方式、尺寸与审核限制),到现在还没发出去。在它回复并真实下过单之前,我不会说“Agent 通过 Hi3D 的 API 下了单”。能说的只有一句:在测试环境里,创建、查询、取消走通了。
两家国内服务摆在一起,是一对有意思的互补:嘉立创的能力对口、接口不全;造好物的接口完整、能力不对口。
Slant 3D 是美国爱达荷州 Boise 的 FDM 打印农场,FAQ 写明在美国打印、从美国发货。我原来的方案里把它记作“唯一能自助拿 key 的”,按 OpenAPI 写了适配器,但没有用真钥匙调用过,后来也没放进这条链路:它不做电路板,外壳是美国发货的 FDM。这次回头读,才发现它早已多了第二道门。
门一,REST API。 OpenAPI 3.0.3 的 spec(约四十个操作)的描述里有一句:“This spec is for automated tools and AI Agents.” 里面带一个 x-agent-hints 块,把订单流程压成一行:上传文件 → 草稿单 → 处理单 → 履约 → webhook。草稿单的说明是“先估价再处理”,处理单是“开始生产并扣款”,取消限于“还没开工”。文档站还写了 webhook 带 HMAC-SHA256 签名,失败会每分钟重试,最多十次。在我读过的制造类 API 里,这是生命周期最完整的一批之一。
它的另一面也很直白。钥匙只能由人在网页会话里生成(POST /apiKey 不认 Bearer);人在账户页绑一张卡之后,POST /orders/{id} 一次就从这张卡扣款。spec 里没有幂等键,也没有沙箱。这是把闸门留给了调用方:Slant 保证草稿不扣钱,扣不扣由你的程序决定。
门二,公共 MCP。 这是本文最想说的一段。https://www.slant3d.com/mcp 不要钥匙,不要登录。llms.txt 里写着“AI agents can quote and order real 3D-printed parts in two ways”,FAQ 里专有一问:“Can an AI agent order a 3D print?” 答案是 Yes。
我让 Agent 对它做了一次只读加报价的测试(10 月 20 日,没有下单,没有填任何地址或邮箱):
initialize 和 tools/list 正常。10 个工具,每个都带标注:quote_raw_pricing 是只读;quote_set_quantity 标了不碰外部世界;list_* 标了幂等。quote_upload_part:上传一个自己生成的 20 毫米立方体(base64)。一次调用返回:quote_id、包围盒、体积,以及 1、100、1000 件各自的单价、小计、设置费和交期(一件 3–5 个工作日,一百件 5–7,一千件 2–3 周),以及 print_feedback——跑了九项检查(网格、平放、倒角、底部文字、壁厚、细柱、蜘蛛状、支撑、支撑面积),给出一条 severity: warning 的“底部加 1 毫米倒角”建议,并写明“可以按原样下单”。响应同时有文本和 structuredContent,还带一句 next_steps 告诉 Agent 下一步该调哪个工具。quote_set_quantity:改成 5 件,拿回新的单价与交期。quote_id 返回 isError: true,只有一句 “Unknown quote_id.”;一份 18 字节的垃圾 STL 在入参校验层被拒,原样抛出一个校验数组。我没调用 quote_shipping_options(要姓名、地址、邮箱,我不愿往公共服务里写个人信息)和 quote_checkout(要邮箱,生成 Stripe 结账链接)。按它的工具描述:运费保存在报价上;结账链接付款后,订单自动进入打印农场,客户收到确认邮件。所以运费和结账是读了描述,没有试过。
它做对了四件事:
quote_id 把上传、改数量、运费、结账串成一条线,正是 Anthropic 那篇文章讲的“做面向工作流的工具”。quote_checkout 返回的是一个付款链接,由人去付。Agent 知道自己什么时候该停,该把什么交给谁。没做到的也有:MCP 里没有跟踪和取消,那两个动词只在 REST 里;错误信息太省,Unknown quote_id. 之后不告诉 Agent 怎么办;同一份响应里零件价 1.37 美元、一件的单价 2.77 美元并存,字段含义没有解释(我没弄清差在哪);取消与退款的规则散在 spec、文档站和用户协议三处,口径不完全一致:spec 说开工前可取消,文档站说取消会连带退款,用户协议说开工之后费用不可退。
还有它的边界:用户协议是 2023 年的短文,没提 API、自动化或 AI;材料是 PLA、PETG、碳纤维 PETG 和 OPM;打印和发货在美国,国际运费我没验证。
到这里,两个问题合成了一个:人在哪一步,以什么形式出现。
我在自己这一侧做了一个闸门:模型没有“下单”这个工具,只能报价和备订单卡;下单只能走一个由后端签发确认令牌的接口,令牌绑定的东西有订单意图、报价、厂商、价格、文件的 sha256、收货地址和用户;确认还要过一次新的 WebAuthn(设计上是 Touch ID,真机的 Touch ID 还没验证)。这是我这边的设计。它需要对面递给我一个能被绑定的东西:一个有编号、有价格、有有效期的报价,或者一张待付款的订单。
对面递过来的东西,是这样的:
| 服务 | 待批准的东西 | 谁来批准、怎么批准 | 公开资料说它绑定了什么 |
|---|---|---|---|
| Slant 3D · MCP | quote_id | 人打开 Stripe 结账链接付款 | 报价总价;文件哈希与地址是否绑定,没写 |
| Slant 3D · REST | DRAFT 订单 | 没有第三方:Process 直接扣账户里的卡 | 闸门在调用方 |
| 嘉立创 | 待付款订单(SMT 单库存占用 7 天) | 人在网页收银台付款 | 没写 |
| PCBWay | 购物车里的订单、待付款包 | 合作伙伴账户余额或信用,或跳转支付页由人付 | 没写 |
| OSH Park | checkout 之后的待付款订单 | 人收到邮件后付款;API 不收信用卡 | 没写 |
| 造好物 | 订单(测试环境里下单即“已支付”) | 文档没写 | price 透传,不绑定 |
| 我自己的闸门 | 订单意图 | 人在界面确认,过一次 WebAuthn | 报价、文件 sha256、地址、用户 |
右边这一列,厂商的公开资料里几乎都没有回答。
2026 年的支付协议其实已经把这个词汇铺好了。UCP 的结账状态里有 requires_escalation,此时商家必须给出 continue_url,并至少带一条严重级别为 requires_buyer_input 或 requires_buyer_review 的消息:什么时候该停下来、把链接交给买家,是状态字段说的,不靠猜。ACP 的会话里有 pending_approval,还有 quote_id、purchase_order_number、账期。Stripe 给 agent 的钱包要求把花钱的理由写成人能读的文字,在 Link 里等人批准,30 分钟不批就过期,重试用幂等键,另有一个永不扣款的测试模式。MCP 规范也说,应该始终有一个能拒绝调用的人在环里。相关背景,之前几篇里有:UCP、Agent 持证上岗(身份与支付)、线下 Agentic Commerce(实体经营)。
但它们瞄的都是目录里的商品:一个购物车,一个最终价格。现成的流程里,我没有找到一个“先传文件、再得价、再批准”的定制件示例;ACP 的 schema 里有 quote_id,UCP 允许在“生成报价、管理购物车”时省略 payment,两边都是留了钩子,没有例子。我读过的这批制造服务的文档里,也没有看到哪家提到自己实现了这些协议里的任何一个。在我读过的服务里,Slant 从 quote_id 到结账链接,是唯一一个公开、免钥匙、现在就能调用,并且用在定制件上的。
法律声明是同一个问题的另一半。 嘉立创把它做成界面里的勾选框,打开又关上就自动勾上,等于让“读过”变成“同意”,Agent 在循环里读一遍就把它签了。Shapeways 走了另一个极端:上传模型的接口里有两个必填的布尔字段,hasRightsToModel 和 acceptTermsAndConditions,由调用方声明自己有权使用模型、接受条款。写成字段,机器是看得见了,可一行代码就替人做了承诺,这正是我要禁止的事。UCP 的做法值得抄:把“需要买家复核”做成状态,状态没解除之前流程不往下走。
再多一个维度:越方便,往往越松。 把付款方式摆在一起看,有三种:
第三种对 Agent 最方便,也是委托人收得最松的一种。物理世界的 API 里,默认值经常比接口更说明问题:Printful 的 v2 让订单先是草稿,要再调一次确认才扣款;Printify 新店的默认设置是订单 24 小时后自动批准,不用调 API 就进生产;Mouser 的下单接口有个 SubmitOrder=false,只返回摘要不提交。Agent 运行时这一侧也一样:ZCode 的 spike 里,-p 模式默认等同 yolo,在一台一次性的 mock 服务上,Agent 一行 curl 就确认了订单;用户级钩子能被四种方式绕过,Agent 还能改自己的钩子;只有操作系统沙箱把所有尝试都拦住了。所以闸门要放在 Agent 够不着的进程里,不能指望服务方替你放,也不能指望运行时替你放。
目录型的物理服务里,已经有把整条 Agent 路径摆出来的:Shippo 的托管 MCP 用 OAuth,不用复制钥匙;每页文档都带一个给 Agent 的说明块;文档里写明买运单会扣账户的钱,写操作执行前会要求确认。但一张运单不是一个定制件,没有“传几何、得价”这一步。
下面两张表把读到的和测到的放在一起。★ 是我自己实测或实操的,其余都来自 2026 年 10 月 20 日读的公开资料;登录后才能看的文档我没看,写成“未见”或“未知”,不等于不存在。
表一 · 入口与合同
| 服务 | 级别 | 钥匙怎么拿 | 测试环境 | 合同 | 给 Agent 的入口 |
|---|---|---|---|---|---|
| Slant 3D · MCP ★ | L4 | 公共,无需钥匙 | — | 工具 schema,带只读/幂等/破坏性标注 | 本身就是 |
| Slant 3D · REST | L3 | 自助注册,钥匙只能在网页会话里生成,每账户 3 把 | 未见 | OpenAPI 3.0.3,自述 “for automated tools and AI Agents” | spec 里有 x-agent-hints |
| 造好物 ★(测试环境) | L2 | AK/SK 线下发放 | 有,整条路径可走 | 飞书文档,流程图空白 | 无 |
| 嘉立创 开放平台 ★ | L2 | 个人可注册;密钥只显示一次;出口 IP 白名单 | 无 | 控制台里的 PDF 文档 | 无;llms.txt 指向网页表单 |
| PCBWay | L2 | 发邮件审批,面向有自己网站的合作伙伴 | 含糊(示例里叫 sandbox) | 自动生成的帮助页,加一份 2018 年的 PDF | 无官方(有第三方 MCP 包装) |
| JLCPCB 国际 / JLC3DP | L2 | 申请加审批,面向企业与分销商;3D 下单档有未公布的月订单量门槛 | 未见 | 无 OpenAPI,只有 Java SDK | 无官方 |
| OSH Park | L2 | 联系客服开通 | 未见 | Ruby gem;文档页返回 404 | 无 |
| Craftcloud | L2 | 没找到入口 | 订单体里有 isTestOrder 标志 | Swagger 2.0,无认证声明,无上传 | 无 |
| Shapeways | L2 | 自助,OAuth2,API 免费 | 未见 | 人读的文档,无 OpenAPI | 无 |
| Xometry | — | 只有供应商侧 API,发邮件申请 | 未见 | 供应商 API 有 OpenAPI 和 llms.txt | 文档面向 Agent,但服务的是供应商;买家侧没找到公开 API |
| Protolabs / Hubs / Fictiv | — | 没找到公开 API(Fictiv 只有 cXML Punchout) | — | — | 无 |
表二 · 订单生命周期
| 服务 | 校验 | 报价 | 文件进 | 待批准态 | 谁付钱 | 跟踪 | 取消 |
|---|---|---|---|---|---|---|---|
| Slant 3D · MCP ★ | 有:九项检查,分级,带建议 | 有,quote_id,三档数量与交期 | base64 或 https URL | quote_id | 人,Stripe 链接 | 无 | 无 |
| Slant 3D · REST | 部分:文件指标;开工前有人工审核 | 估价接口;草稿单含运费 | 预签名上传加确认 | DRAFT 到 Process | 人先绑卡,之后调用即扣 | 轮询加签名 webhook | 有,开工前 |
| 造好物 ★ | 部分:审核标志,错误码带原因 | 无,price 透传 | 只收厂商认可的图 | 文档未写 | 文档未写 | 有 ★ | 有 ★ |
| 嘉立创 ★ | 无(装配规则在网页里) | 有 ★ | 公网 URL,无上传 | 待付款订单 | 人,网页收银台 | 轮询(未调用) | 清单里没有 |
| PCBWay | 下单后人工审核 | 有,无 id、无有效期 | URL 或 base64 | 购物车到待付款包 | 合作伙伴信用,或跳转页由人付 | 轮询 | 有,主要在付款前 |
| JLCPCB 国际 / JLC3DP | 部分:Gerber 预解析;3D 文件解析含“不可用原因” | 有,形状未公开 | 上传 | 未知 | 预付款余额(推断) | 轮询 | 清单里没有 |
| OSH Park | 渲染预览,批准(给人或视觉模型看) | 有 | 上传或 URL | checkout 后等邮件付款 | API 不收信用卡,人付 | 轮询 | 有,限早期状态 |
| Craftcloud | 无 | 有,priceId、quoteId,购物车带 expiresAt | spec 里没有 | 有 | 跳转结账(人);发票 Net30 | 轮询 | 客户侧没有 |
| Shapeways | 部分:printable 字段 | 无报价接口;模型信息里有各材料的价 | 字节上传,加两个布尔声明 | 无,一次调用下单 | 卡在档,调用即扣 | 轮询 | 无 |
读这两张表有几点:
给服务商(每条都有一个上面出现过的反例):
quote_id;Craftcloud 有 quoteId 与购物车有效期;造好物没有)print_feedback;嘉立创的规则在帮助页和预览里)requires_escalation;反例是嘉立创的自动勾选和 Shapeways 的布尔字段)Unknown quote_id. 和 1000 系统异常 都不合格)给搭 Agent 的人:
curl。闸门是验证者,验证者比生成者稀缺,这是《AI Native 时代的研发》的主线,这里是又一个实例。有一件事我想盯着看:把“人”写进协议的那几份规范,什么时候第一次出现一个定制件的例子。
llms.txt 与 MCP 的只读探测(10 月 20 日)。公开部分在 fxp/cat-feeder,其余在私有仓库。首次发布 2026-10-20