엔터프라이즈 AI 에이전트는 신뢰할 수 있고 최신 상태인 비즈니스 맥락에 액세스해 이를 바탕으로 작업할 수 있어야 비로소 유용해집니다. Uber의 MCP Gateway는 구체적이면서도 피할 수 없는 질문에 답합니다. 모든 서비스 팀에 MCP 서버 구현을 요구하지 않고도 에이전트가 기존 API 수천 개를 정책에 따라 탐색하고 사용할 수 있게 하려면 어떻게 해야 할까요? Gateway는 탐색, 변환, 정책 적용을 중앙화해 서비스 팀이 핵심 작업 흐름에 발목 잡히지 않도록 합니다. 엔드포인트를 다시 작성할 필요가 없으며, 서비스 소유자는 검토와 활성화 권한을 유지합니다. 이 절충안은 중복 인프라를 줄이고 거버넌스를 일관되게 적용하면서도 각 팀의 운영 자율성을 보장합니다.
아키텍처상 Gateway는 제어 플레인(MCP Registry 및 AutoCrawler)과 데이터 플레인(Proxy Gateway)으로 나뉩니다. Registry는 가상 서버와 도구를 관리하는 단일 기준 정보원입니다. AutoCrawler는 IDL과 네이티브 MCP 서버에서 도구 정의를 지속적으로 도출해 카탈로그가 자동으로 확장되도록 합니다. Proxy Gateway는 런타임에 가상 MCP 서버를 구성하고, MCP 호출을 HTTP/gRPC/TChannel로 변환한 뒤 서비스 메시 사이드카(Muttley)에 실행을 위임하고 MCP 호환 결과를 반환합니다. 이러한 분리 덕분에 다양한 에이전트 클라이언트에 일관된 실행 모델을 제공하면서 빠르게 반복 개발하고 설정을 실시간으로 갱신할 수 있습니다.
전체 시스템을 실현 가능하게 하는 핵심 운영 수단은 AutoCrawler입니다. Uber는 도구를 수동으로 작성하는 대신 Cadence 기반 워크플로를 사용해 IDL 레지스트리를 검색하고, 네이티브 MCP 하트비트를 모니터링하며, protobuf/Thrift 정의를 분석하고, 초기 도구 매니페스트를 생성합니다. 생성된 도구는 기본적으로 비활성 상태이며, 소유권과 활성화 권한은 서비스 팀에 있습니다. AutoCrawler는 LLM을 활용해 스키마와 설명도 보강하여 에이전트가 이해하기 쉬운 문서를 만듭니다. 이는 자동화의 확장성과 사람의 검토 및 보안 심사를 균형 있게 결합한 실용적인 절충안입니다.
보안, 정책, 운영 안전성을 팀마다 따로 구현하는 대신 게이트웨이 계층에 내장했습니다. 플랫폼은 Uber의 내부 액세스 제어 시스템을 통해 도구 및 서버 수준의 charter 정책을 적용하고, 응답에서 PII를 제거하며, 일관된 방식으로 요청 제한과 감사를 수행합니다. 정책을 약화하지 않으면서 타사 MCP 연동도 지원합니다. 게이트웨이가 내부 토큰을 전달하고 타사 서비스가 이를 외부 자격 증명으로 교환하므로 중앙 제어를 유지할 수 있습니다. 이 모델은 유연성과 엔터프라이즈 거버넌스 사이에서 실용적인 균형점을 제공합니다.
비용과 성능 측면에서 Gateway는 에이전트 워크플로의 확장을 가로막는 두 가지 요인, 즉 컨텍스트 비대화와 토큰 비용을 해결합니다. Omni MCP는 서버 탐색, 도구 목록 조회, 스키마 가져오기, 도구 호출 기능을 제공해 에이전트가 수백 개의 도구 정의를 미리 불러오지 않아도 되도록 점진적 탐색을 지원합니다. Response Projection은 런타임에 요청된 필드만 남기도록 응답을 축소합니다. 또한 aifx를 사용하는 Code Mode는 CLI 기반 코딩 에이전트가 모든 내용을 모델 컨텍스트에 넣는 대신 결과를 디스크에 기록하도록 합니다. 이러한 패턴을 함께 활용하면 엔터프라이즈 규모에서 불필요한 모델 컨텍스트, 지연 시간, API 지출을 줄일 수 있습니다.


