乐于分享
好东西不私藏

【AI智能体-工具篇(上)】从老旧ESB到MCP工具:AI Agent工具层架构与安全防线

【AI智能体-工具篇(上)】从老旧ESB到MCP工具:AI Agent工具层架构与安全防线

🎯 面向对象:应用架构师、系统分析师、技术主管。

📝 核心摘要:聚焦大模型安全调用银行ESB存量接口的工程痛点。结合MCP协议在无状态化、能力发现与全链路可信溯源的最新演进,提出“元数据定义、上下文隔离、协议适配”三步改造法,构建物理隔离、安全可控的智能体工具运行架构。


引言:从架构蓝图到工程落地的第一道鸿沟

在【应用架构篇】中,我们将 MCP(Model Context Protocol)定义为智能体的“双手”,并明确了其核心职责:主要承担语义转换与协议适配,原则上不应包含复杂的业务决策逻辑然而,当开发团队着手落地时,往往会面对一个现实的错位:银行核心系统或ESB上的接口,是为传统的确定性程序设计的,而大模型本质上是概率性生成的。大模型期望的是自然语言描述清晰、参数扁平简单的 JSON;而ESB面对的却是字段码密布的 XML、层层嵌套的报文结构。

MCP协议迎来了里程碑式的修订,确立了无状态化、动态能力发现与全链路可信溯源的核心机制。这为银行盘活沉睡的ESB资产、构建不绑定特定大模型厂商的“工具生态”提供了标准范式。采用MCP标准,不仅是为了翻译接口,更是为了沉淀可复用的AI原生资产。将“机器语言”翻译为“AI能懂的工具”,是唤醒银行沉睡资产的第一战。为此,我们必须首先认清 ESB 与 AI 之间的认知鸿沟,再逐一构建跨越鸿沟的工程桥梁。


01 鸿沟分析:ESB 报文与 AI 工具的认知错位

目前银行 ESB 对外发布的联机交易接口,主流多采用 XML 的报文格式,传输以 HTTP 为主。在动手改造前,我们需要清晰识别这类传统 ESB 接口对大模型来说有哪些“不友好”:

结论:直接将ESB原生报文暴露给大模型,效率极低且风险极高。亟需引入一个符合MCP标准的“语义翻译层”,这便是 MCP Server 的核心工程定位。


02 适配架构:部署拓扑与端到端交互

银行级架构的核心在于网络分区与职责隔离。在引入 AI 智能体后,建议明确各组件在物理网络中的部署位置,以及它们之间的调用流向。

1. 物理部署架构建议

为保证核心系统安全,AI 组件的部署建议遵循“由外向内、逐层收敛”的原则。注意:跨网络分区的调用建议配置双向 mTLS 加密。

架构设计要点

  • MCP Server 部署与无状态化: 建议部署在应用内网区,与 Agent 平台同域。顺应MCP协议最新的无状态化演进,MCP Server 设计为无状态服务,所有会话状态由 Agent 或 Header 携带,这使其具备极高的水平扩容能力,不易成为性能瓶颈。需注意,本文探讨的无状态化改造主要针对查询类及幂等性操作接口;对于涉及资金流转等有状态的长事务,其状态维持职责应交由应用层(如 Agent 编排或上游服务)承担,不应下沉至 MCP 层。
  • 南北向流量的物理阻断: AI Agent 及大模型推理服务通常不具备直接访问核心网区 ESB 的物理路由。所有 AI 发起的业务流量,建议统一经由 MCP Server -> 智能安全网关 -> BFF 的标准链路,以确保流量可监控、可拦截。
  • 全链路可信溯源与上下文传递: 建议由 Agent 运行平台底座统一接管用户登录态 Token,并将其转换为带有非对称加密签名和时间戳的 HTTP Header(如 X-AI-CIF-ID 及 X-AI-Trace-Id)自动注入到请求中。Skill 业务代码不直接接触密钥,MCP Server 验签后据此补全业务报文,并为后续的审计追溯提供链路ID。

2. 链路关键协同节点职责

在上述部署架构下,各关键节点的职责边界需严格划分:

  • 智能安全网关 (AISecGW): 建议负责身份反查(根据 CIF_ID 反查真实的 PsnNo)和防越权校验(校验资产归属)。同时负责响应数据的强制物理脱敏
  • API网关/BFF层: 建议负责协议转换(JSON → XML)和密钥操作(生成全局流水号与报文签名/MAC)。核心密钥建议仅在此网段存活。

3. 端到端全链路时序交互

为了将上述架构要点串联起来,我们以“用户在手机银行中发起‘帮我查下我的养老金余额’”为例,推演端到端的交互链路:

💡 架构关键问答(FAQ)

在明确了部署与交互后,针对架构设计中常被质疑的痛点,解答如下:Q1:痛点:为什么不直接调网关?为何增加 MCP 层?A:核心是为了职责解耦与资产沉淀

  • 解耦: 如果让 Agent 直接调网关,开发者通常需要在 Agent 代码中处理 MAC 生成、报文头拼装等底层细节,业务逻辑容易被淹没。
  • 资产沉淀与能力发现: 引入 MCP 后,Agent 侧代码建议保持相对纯粹。更重要的是,顺应2026年MCP的能力发现机制,工具Schema可被动态注册与发现。未来若需更换大模型底座,沉淀在 MCP 层的“工具资产”可能实现原封不动地平移复用,减少重构成本。Q2:痛点:大模型产生幻觉(如传乱码参数),会导致核心系统崩溃吗?A风险较低。我们设计了物理与逻辑的双重防线,并依托协议级溯源:
  • 物理隔离: 大模型建议部署在 AI 专网,核心 ESB 在核心网区,两者通常不具备直接的物理路由。
  • 逻辑拦截: MCP 层的业务代码建议包含严格的参数校验(如 enum 校验),异常数据通常会在 MCP 层被拦截并返回结构化错误提示,不易触及核心系统。
  • 事后溯源: 依托 2026 年 MCP 的全链路可信溯源机制,即便发生绕过校验的异常调用,也能通过不可篡改的 Trace-Id 精准定位到具体的 Agent 实例与输入参数,便于事后追责与系统优化。

03 三步工程化改造原则:从 ESB 到 MCP Tool

理清了宏观架构后,落实到单个 MCP Server 的开发,建议遵循特定的标准流程。我们将改造流程标准化为三步法,以确保工具的一致性与安全性。

第一步:元数据定义与语义映射

  • 核心原则: 让模型“望文生义”,把系统黑话翻译为业务白话。
  • 工程落点: 编写 JSON Schema 配置文件(或使用 Java 注解),向大模型声明工具的存在及用途。这也是MCP能力发现机制的底层数据结构。
  • 具体动作: 
    1. 语义重命名: 例如 ESB服务编码 SvcCode=PensionAcctQry 转换为 MCP Tool Name: query_pension;ESB字段 Fund_Tp 转换为 fund_type
    2. Prompt 增强: Schema 中的 description 本质上是写给大模型的微型 Prompt。应明确说明业务用途(“查询客户名下养老金账户余额”)、参数约束(“fund_type 必须为 enterprise_annuity 或 basic_pension”)以及前置条件(“调用前需确认客户已授权”)。

第二步:参数重构与上下文隔离

  • 核心原则: 化繁为简,剥离系统依赖,只留业务意图。
  • 工程落点: Schema 中的 inputSchema 定义 + 运行时 Header 处理逻辑。
  • 具体动作: 
    1. 扁平化参数: 将 XML Body 中的多层嵌套打平为 fund_type 等简单参数。
    2. 上下文隔离与可信溯源: 建议由 Agent 运行平台底座统一拦截请求并生成安全上下文,通过 HTTP Header 注入(如 X-AI-CIF-ID 和 X-AI-Trace-Id)。这不仅是为了防篡改与防重放,更是为了打通全链路可信溯源,同时保证敏感信息不暴露在 InputSchema 中。

第三步:协议适配与边界兜底

  • 核心原则: 边界双重兜底,保障链路安全。
  • 工程落点: 业务逻辑代码实现,包含组装请求、调用网关、处理响应、异常处理。
  • 具体动作: 
    1. 请求方向: MCP Server 接收模型传入的扁平 JSON,结合 Header 中的身份信息,拼装成标准 JSON 发往智能网关。
    2. 响应方向: 剥离 ESB 返回的系统控制字段,只提取业务结果(如余额、状态),组装成精简 JSON。
    3. 异常兜底: 建议将 ESB 的底层异常码翻译为模型可懂的业务提示,区分“客户端错误”(4xx,需纠正参数)与“服务端错误”(5xx,需重试),帮助模型理解错误原因,避免死循环。

04 治理规范:能力发现与安全运维

完成了单点工具的标准化改造后,面对未来成百上千的 MCP Server,必须引入体系化的工程治理规范。这也与2026年MCP强调的动态治理相契合。

  1. 动态能力发现中心: 所有 MCP Server 建议在“AI工具注册中心”登记元数据。Agent 在运行时动态发现可用的工具Schema。注册中心的风险等级标签(如:高/中/低)可同步至智能安全网关,对于高危工具,网关可自动开启强校验策略(如增强审计、二次鉴权)。
  2. 灰度与版本管理: 建议遵循“向前兼容”原则。ESB 接口升级时,MCP Server 宜通过内部适配消化变更。若必须发生 Breaking Change,建议新建工具(如 query_pension_v2),并在注册中心标记旧版本为 Deprecated,观察一段时间无调用后再下线。
  3. 熔断与降级策略: 
    • 熔断: 建议针对每个工具配置熔断规则(如:错误率 > 50% 且 持续 30秒),防止底层故障向上层 Agent 雪崩。
    • 降级: 熔断开启后,MCP Server 宜直接返回符合 JSON-RPC 规范的结构化错误响应(包含特定的错误码及自然语言提示,如 {"error": {"code": -32001, "message": "当前查询人数较多,请稍后再试"}}),利用大模型的理解能力将其转述给用户,避免返回正常的业务 JSON 导致模型产生误解。

结语

MCP Server 是银行 IT 资产与大模型之间关键的“翻译层”。它用工程化的手段,将晦涩的 XML 报文消融在底层,通过严格的无状态设计、上下文隔离和全链路可信溯源,把清晰、简单、安全的业务语义呈现给 AI。只做纯粹的语义翻译,提供可度量的性能,确保完整的审计追踪,这是智能体工具层应当坚守的工程底线。只有地基设计得足够清晰、安全,上层构建的 Skill 和 Agent 才能稳定运行。

系列回顾
#AI智能体#Agent#MCP#Skill#AI应用架构师