UBER ENGINEERING 官方架构 · ELI5 图解

Uber MCP Gateway:
万能外交互通大饭店 与 防脑烧点餐台

让 AI 智能体零修改调用全公司数千个存量微服务,同时通过“渐进发现 + 响应去脂抽脂”把上下文 Token 开销暴降 95%!

🏢 运行规模:800+ MCP Servers
🛠️ 纳管工具:5,000+ Tools
🔄 存量协议:HTTP · gRPC · TChannel
🛡️ 治理理念:发现 ≠ 暴露(默认禁用)

🥊 架构对决:野蛮直连 vs 集中网关

❌ 野蛮生长:各自为政与协议地狱
AI Agent 头昏脑胀 gRPC 专线服务 Thrift/TChannel HTTP/Restful
  • 重复造轮子: 每个小团队重复写适配代码,接口格式千奇百怪。
  • 上下文爆炸: 5000+ 工具直接塞给 Agent,模型立马爆 Context。
  • 安全失控: 缺乏全局审计与脱敏,直接泄露用户隐私与内部密钥。
VS
✨ Uber MCP Gateway:统一纳管与智能中枢
AI Agent 清爽轻松 MCP MCP Gateway AutoCrawler Omni 渐进发现 响应剪裁+脱敏 Muttley 网格 数千存量服务 0 修改直接跑
  • 零代码存量复用: 自动扫描 Protobuf/Thrift,传统 API 秒变 MCP。
  • 按需渐进加载: Omni 代理按需翻页,脑容量节省 95% 以上。
  • 军规级安全: 统一主体鉴权、零改动 PII 自动脱敏、团队明确确权。
🛎️

5岁也能听懂的超级比喻:“万能外交互通大饭店”

Uber 内部有上千个老字号传统厨房(微服务),做川菜粤菜西餐,各讲各的方言(gRPC/Thrift/HTTP)。如果让每家厨房都学外语(MCP),或者把 5,000 道菜的大字典全塞给客人(AI Agent),客人当场就看傻了。MCP Gateway 就是酒店的总服务台:它派雷达探员自动整理菜谱,配备多国语言同传翻译官,还给客人配备了“智能翻页放大镜”,要吃什么菜只查什么菜,上菜时还把多余的菜叶脂肪剔除干净!

🏛️ 架构的三大立足之石

🤖

AutoCrawler:探店侦察机

基于分布式工作流引擎 Cadence。后台定期巡检全公司 IDL 注册表,自动解析接口并调用 LLM 生成适合 Agent 理解的自然语言工具描述。

🔒 军规:发现 ≠ 暴露(默认全部禁用)
⚡

Proxy Gateway:全能翻译官

毫秒级内存热加载配置。将 Agent 发送的 MCP JSON 自动打成 Protobuf/Thrift 二进制,经由 Muttley 网格安全投递,完成 PII 脱敏后再转回 MCP。

🔄 双向流:MCP ⇄ 下游 RPC/HTTP
✂️

上下文防爆:三阶消肿术

面对 5000+ 工具,独创 Omni MCP(渐进式翻查)、Response Projection(字段裁剪抽脂)与 Code Mode(文件落盘流式过滤)。

📉 极致省流:Token 消耗降低 90%+

🎮 交互实验室:体验 Uber 的“防脑烧”黑科技

切换不同的调用模式,直观感受大模型在面对数千个企业级内部工具时,Token 占用与响应延迟的惊人差异!

当前策略: 全量静态载入
上下文消耗(Token): 194,500
模型上下文占用比率 97.2% (危)
单次调用成本预估: ~$1.95
Agent 思考/加载延迟: 7,850 ms
底层交互报文预览:
{ "tools": [ /* 5420 tools schema omitted */ ] }

🔍 架构细节深度透视

Control Plane

Cadence 驱动的“自动探针”

Uber 内部存在巨大的 IDL 仓库。微服务只要通过 CI 提交 Thrift 或 Protobuf 变更,AutoCrawler 就会捕获信号,自动生成对应的 Virtual MCP Server。

  • 提取方法名、入参出参结构与注释
  • LLM 自动提炼优化为 Agent 专属提示词
  • 团队控制台提供配置版本比对与一键回滚
Data Plane

Muttley 边车与细粒度 ABAC

网关不直接做复杂网络寻址,而是将二进制载荷转交本机部署的 Muttley 服务网格 Sidecar,原生继承全公司负载均衡、断路器与熔断机制。

  • 区分人类用户、后台服务与 AI Agent 主体身份
  • 自动遮蔽电话、邮箱等 PII 隐私字段
  • 毫秒级动态路由,单微服务统一挂载为 /<svc>/mcp
Context Optimization

企业级 LLM 的终极降本法则

现有的接口定义往往返回数百个字段的超级大 JSON,而智能体往往只需要其中一两项。Uber 借鉴 GraphQL 思路,让网关在数据面完成切片。

  • 在 Schema 注入 projection 字段数组
  • 网关在返回前剥离未请求的 98% 冗余键值
  • Code Mode 通过 aifx CLI 实现文件管道 grep
🎯

Uber 的技术启示录:存量 API 才是 Agent 的高速公路

Uber 工程团队在结语中指出:“在大规模构建智能体系统时,最难的从来不是大模型本身,而是将模型安全可靠对接到真实生产环境的‘结缔组织’(Connective Tissue)。” 不要试图让业务团队推翻旧代码去为 AI 重写一切;相反,打造一座自动化、具备安全防护且精通协议转换的透明网关,才是企业落地 AI Agent 的正道。