某精密制造企业,日常运营需要在 CRM、ERP、库存、物流等 6 套系统之间频繁切换。像「把 A 仓 100 件货调拨到 B 仓并同步财务」这样一个操作,要在四个系统里分别操作一遍,平均要花 5 分钟,跨系统数据容易出错,而且操作日志散落在各系统里,无法审计追溯。
随着业务量增长,人工操作的时间成本和错误率都在上升。企业希望让 AI 承担这类跨系统的重复操作,同时保留完整的操作审计能力——出了差错要能查清是谁、在哪一步、做了什么。
点击空白处退出提示
某精密制造企业,日常运营需要在 CRM、ERP、库存、物流等 6 套系统之间频繁切换。像「把 A 仓 100 件货调拨到 B 仓并同步财务」这样一个操作,要在四个系统里分别操作一遍,平均要花 5 分钟,跨系统数据容易出错,而且操作日志散落在各系统里,无法审计追溯。
随着业务量增长,人工操作的时间成本和错误率都在上升。企业希望让 AI 承担这类跨系统的重复操作,同时保留完整的操作审计能力——出了差错要能查清是谁、在哪一步、做了什么。
系统基于 MCP(Model Context Protocol)协议规范构建,共四个核心模块:
一、MCP 协议网关
把订单管理、库存调拨、物流追踪、财务对账等 20+ 业务接口封装为标准化 MCP Tools,统一每个工具的输入/输出 Schema。使上层 Agent 与下层异构系统彻底解耦——新增一套业务系统只需实现一个 MCP 适配器,不需要改动任何 Agent 逻辑。
二、Supervisor 智能任务编排
接收自然语言指令(例如「将 A 仓 100 件货调拨至 B 仓并同步财务」),自动分解为 查询库存 → 创建调拨单 → 物流预约 → 财务记账 的调用序列,并实现无依赖工具并行调用、有依赖工具串行执行的混合编排。
三、全链路操作审计与补偿回滚
记录每一次工具调用的完整链路日志;针对关键操作(如库存扣减)设计补偿型回滚机制——调用失败时自动触发逆向补偿操作,保障跨系统数据的最终一致性。
四、可观测性大盘
监控工具调用的 QPS、成功率、延迟分布(P99),并配置 Grafana 告警实现邮件/钉钉通知。
我负责这个平台的整体架构设计与核心模块开发,主要做了三块:
1. MCP 协议网关设计
把 20+ 个分散的业务接口抽象成标准化工具。关键是 Schema 设计——要让不同系统返回的数据格式对上层是一致可用的。做完之后,新增系统的接入成本从「改 Agent 逻辑」降到了「写一个适配器」。
2. Supervisor 任务编排
核心是把自然语言指令准确分解成可执行的调用序列,并判断哪些步骤能并行。难点在于依赖关系识别和失败处理。
3. 补偿型回滚机制
跨系统操作最难的是「做了一半失败」——比如调拨单已创建但库存扣减失败,数据就脏了。我设计了一套补偿逻辑,关键步骤失败时自动执行逆向操作。
技术栈:LangGraph / LangChain / FastAPI / MCP 协议规范 / Redis / PostgreSQL / Docker / Prometheus / Grafana / LangFuse
踩过的三个坑:
· 工具 Schema 不统一——早期每个工具自己定义返回格式,Agent 处理时要写大量分支判断。后来强制统一 Schema 才解决。
· 并行调用要考虑幂等——无依赖的工具并行执行时,如果操作不是幂等的,重试会造成重复扣减。后来对写操作强制加幂等键。
· 审计日志把存储打爆——全链路记录初期数据量太大。后来改成分级:关键操作全量记录,查询类只记摘要。



评论