핵심 요약
Model Context Protocol(MCP)은 AI 에이전트와 서비스 간의 통신을 표준화하지만, 원격 서버 환경에서는 강력한 보안 체계가 필수적이다. 이 아티클은 MCP의 두 가지 전송 방식인 stdio와 Streamable HTTP의 보안 모델 차이를 분석한다. 특히 Streamable HTTP 환경에서 OAuth 2.1, PKCE, 동적 클라이언트 등록을 활용하여 MCP 서버를 보호하는 구체적인 워크플로우를 제시한다. 2025-11-25 최신 명세서를 기준으로 스코프 설계, 토큰 관리, 에이전트 간 인증(A2A)의 미래 방향성까지 포괄적으로 다룬다.
배경
Model Context Protocol(MCP) 기본 개념, OAuth 2.0 및 2.1 프로토콜에 대한 이해, HTTP 상태 코드 및 인증 헤더 지식
대상 독자
보안이 중요한 엔터프라이즈 환경에서 MCP 기반 AI 에이전트 시스템을 설계하고 구축하는 개발자 및 아키텍트
의미 / 영향
MCP의 보안 표준화는 AI 에이전트가 기업 내부 데이터와 도구에 접근할 때 발생할 수 있는 보안 우려를 해소하는 중요한 이정표이다. OAuth 2.1과 같은 검증된 표준을 채택함으로써 기존 ID 관리 시스템과의 통합이 용이해지고, 에이전트 생태계의 신뢰성이 강화될 것이다.
섹션별 상세
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer resource_metadata="https://resource.example.com/.well-known/oauth-protected-resource"인증되지 않은 MCP 클라이언트 요청에 대해 서버가 인증 서버 정보를 포함하여 반환하는 401 응답 예시
{
"resource": "https://resource.example.com",
"authorization_servers": ["https://as1.example.com", "https://as2.example.net"],
"bearer_methods_supported": ["header", "body"],
"scopes_supported": ["profile", "email", "phone"],
"resource_documentation": "https://resource.example.com/resource_documentation.html"
}MCP 서버가 신뢰하는 인증 서버 목록을 포함한 리소스 메타데이터 응답 구조
{
"redirect_uris": ["https://client.example.com/callback"],
"grant_types": ["authorization_code", "refresh_token"],
"client_name": "My MCP client",
"token_endpoint_auth_method": "client_secret_basic",
"scope": "mcp:read mcp:write"
}RFC 7591을 준수하는 MCP 클라이언트의 동적 등록 요청 데이터
실무 Takeaway
- 원격 MCP 서버를 구축할 때 OAuth 2.1과 PKCE를 적용하여 에이전트의 접근 권한을 세밀하게 제어하고 보안 사고를 예방해야 한다.
- 스코프 설계 시 mcp: 접두사를 사용하고 읽기, 쓰기, 삭제 등 기능별로 권한을 분리하여 최소 권한 원칙을 준수해야 한다.
- 2025-11-25 명세서의 Step-up Authorization을 활용하면 사용자에게 필요한 시점에만 추가 권한을 요청하는 유연한 UX를 구현할 수 있다.
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.