dev.to | 📄 原文链接 | 2026-10-28 收录

纯 Dart 的人机协同代理:把审批闸门放在花钱的工具前

来源:dev.to — 2026-10-27

📋 概述

作者用一个虚构的外勤服务公司做派工助手:调度员输入「WO-1043 现在什么状态」或「给 WO-1044 订一个 3 kW 加热元件」,代理就去查工单、排班或者订零件。区别在于订零件要花钱,不能由模型自己决定。整套四个部件全部用 Dart 写:把后台系统包成 MCP 服务器,Genkit flow 当代理并从 MCP 取工具,用 genkit_middleware 的 toolApproval 给花钱的工具加审批闸门,最后用 genkit_shelf 只暴露一个 POST /dispatchAgent 加健康检查。作者说,后台系统明明在同一个进程里却还要包一层 MCP,是因为边界本身就是目的:哪天工单搬到真实系统,只需要换 MCP 服务器,代理、提示词和测试都不用动。

🔑 核心要点

💡 金句

“Why MCP for a back office that lives in the same process? Because the boundary is the point.”
译:后台系统明明就在同一个进程里,为什么还要套一层 MCP?因为那道边界本身就是目的。
← 返回 dev.to 首页