MCP에 관한 글은 이미 많지만, 대부분 프로토콜 소개나 몇 개의 서버를 연결했는지 수준에 머물러 있습니다.
Pinterest 엔지니어링 팀이 최근 실제 프로덕션 환경에서 운영 중인 MCP 아키텍처를 구체적인 데이터와 함께 공유했습니다. 세부 사항이 풍부해 주목할 만합니다.
아키텍처 선택: 여러 전용 서버, 통합형은 지양
Pinterest는 모든 것을 처리하는 거대한 MCP 서버 하나를 만들지 않았습니다. 그들의 방향은 각 핵심 데이터 시스템에 독립적인 MCP 서버를 대응시키는 것입니다.
현재 주로 운영 중인 서버:
- Presto 서버: 데이터 쿼리
- Spark 서버: 작업 디버깅 및 로그 분석
- Airflow 서버: 워크플로 관리
- Knowledge 서버: 내부 문서 및 지식 베이스
왜 통합 서버를 만들지 않았을까요?
그들의 이유는 여러 서버가 독립적인 권한 제어를 가능하게 하여, 각 팀이 자신이 속한 도구 영역에만 접근할 수 있도록 하고 단일 서버의 과도한 권한을 방지하기 위함입니다. 동시에 각 서버의 도구 세트를 간결하게 유지하여 모델이 수많은 관련 없는 도구들 사이에서 혼란을 겪지 않도록 합니다.
레지스트리: 에이전트가 사용 가능한 도구를 알 수 있도록
Pinterest는 승인된 서버의 신뢰할 수 있는 출처로서 중앙 레지스트리를 구축했습니다.
AI 클라이언트는 도구를 호출하기 전에 레지스트리를 확인합니다. 이 서버가 존재하는가? 사용 권한이 있는가?
이는 현실적인 문제를 해결합니다. 모든 데이터 도구가 모든 직원에게 공개되어서는 안 된다는 점입니다. 예를 들어 Presto(대규모 데이터 쿼리)는 특정 비즈니스 그룹의 구성원만 AI 도구를 통해 호출할 수 있습니다.
보안 설계 세부 사항
2계층 인증:
- 사용자 JWT 토큰: 누가 작업하는지 확인 (휴먼 인 더 루프 시나리오)
- 서비스 메시 ID: 서비스 간 호출은 메시 ID 사용
그들은 MCP 표준 OAuth 흐름을 채택하지 않기로 결정하고, 대신 기존 내부 인증 시스템과 통합했습니다. 그 이유는 각 서버마다 개별 인가를 요구할 때 발생하는 마찰을 줄이기 위해서입니다.
elicitation이라는 설계도 있습니다. 고위험 또는 고비용 작업을 실행하기 전에 에이전트가 인간 사용자에게 확인을 요청해야 하며, 승인이 없으면 실행되지 않습니다. 이는 자동화와 보안 사이의 균형을 찾은 것입니다.
실제 운영 데이터
2025년 1월 기준 데이터:
| 지표 | 숫자 |
|---|---|
| 월간 호출 횟수 | 66,000회 |
| 활성 사용자 수 | 844명 |
| 월간 추정 절감 시간 | ~7,000 엔지니어 시간 |
월 7,000시간——엔지니어 1인의 월 근무 시간을 약 160시간으로 계산하면 약 44명 분의 작업량 절감에 해당합니다. 이는 각 도구 호출당 추정 절감 시간을 합산한 것으로 정확한 수치는 아니지만, 규모를 가늠하는 데 참고할 만합니다.
주목할 점
Pinterest의 글에는 이런 문장이 있습니다. 이 시스템은 엔지니어가 일상적으로 사용하는 IDE, 사내 채팅 플랫폼, AI 워크플로에 통합되어 있습니다——엔지니어가 특별히 사용하도록 만든 별도의 AI 포털이 아닙니다.
이것이 기업 AI 도입의 성패를 가르는 핵심입니다. 도구는 작업자가 있는 곳에 나타나야 하며, 작업자가 다른 곳으로 가도록 요구해서는 안 됩니다.
출처: Pinterest Deploys Production-Scale Model Context Protocol Ecosystem for AI Agent Workflows (InfoQ); CocoLoop, Building an MCP Ecosystem at Pinterest (Pinterest Engineering Blog / Medium)