MCP 터널 개념 (MCP Tunnels Concepts)¶
원문: https://platform.claude.com/docs/agents-and-tools/mcp-tunnels/concepts
MCP 터널 배포를 구성하는 각 부분의 표준 명칭, 두 가지 자격 증명 프로비저닝 모드, 그리고 연결 모델에 대해 설명합니다.
MCP 터널은 리서치 프리뷰 단계에 있습니다. 사용해 보려면 액세스를 요청하세요.
이 페이지는 MCP 터널 문서 전반에서 사용되는 용어를 정의합니다. 여러 구성 요소가 구성 파일, 컨테이너 이미지, 본문 설명에서 서로 다른 이름으로 등장합니다. 아래 표는 각 구성 요소에 대해 하나의 표준 명칭을 제시하고, 접하게 될 수 있는 별칭을 나열합니다.
구성 요소¶
| 용어 | 정의 | 다른 표기 |
|---|---|---|
| Tunnel stack(터널 스택) | 터널에 연결하기 위해 네트워크 내부에서 실행하는 두 개의 컨테이너, 즉 프록시와 cloudflared입니다. 하나의 스택은 하나의 터널을 담당하며, 가용성을 위해 여러 호스트에 복제할 수 있습니다. 프로그래매틱 액세스를 사용하는 경우, 설정 구성 요소가 스택과 함께 실행되어 자격 증명을 프로비저닝합니다. | the stack, the MCP tunnel stack, the tunnel deployment, your deployment |
| Proxy(프록시) | Anthropic의 라우팅 구성 요소입니다. 내부 TLS를 종단하고, 업스트림 IP가 허용된 범위 내에 있는지 검증하며, 호스트 이름을 기준으로 각 요청을 업스트림 MCP 서버로 라우팅합니다. | mcp-proxy(이미지 이름, Compose 서비스 이름, Helm 컨테이너 이름), mcp-gateway(컨테이너 내부 구성 경로 /etc/mcp-gateway/config.yaml 및 Helm gateway.config.* 값 접두사) |
| cloudflared | Cloudflare의 오픈 소스 터널 커넥터입니다. 네트워크에서 터널 엣지로 향하는 아웃바운드 전용 연결을 시작하고, 엣지와 프록시 사이에서 암호화된 트래픽을 전달합니다. Managed Agent와는 관련이 없습니다. | the outbound connector, the tunnel connector |
| Setup component(설정 구성 요소) | mcp-proxy 이미지 내부에 포함되어 제공되는 setup 바이너리입니다. 프로그래매틱 액세스를 사용하는 경우 Workload Identity Federation을 통해 인증하고, 터널 토큰을 가져오며, CA 및 서버 인증서를 생성하고, CA를 Anthropic에 등록합니다. renew-cert도 제공합니다. |
setup Job(Helm pre-install 훅), setup 서비스(Compose 프로필), setup hook, setup binary, setup CLI |
| Tunnel edge(터널 엣지) | cloudflared가 외부로 연결하는 Cloudflare 엣지 서버입니다(IP 범위 198.41.192.0/19 및 2606:4700:a0::/44, 포트 7844 TCP 및 UDP). 이 위에서 실행되는 터널은 Anthropic이 프로비저닝하고 제어하며, 기반 네트워크는 Cloudflare가 운영합니다. |
the edge, the Anthropic-operated tunnel edge |
| Inner TLS(내부 TLS) | 터널의 평문 WebSocket 스트림 내부에서 Anthropic의 백엔드와 프록시 사이에 수행되는 두 번째 TLS 핸드셰이크입니다. 프록시는 터널에 등록한 CA가 서명한 서버 인증서를 제시합니다. 개인 키는 오직 사용자만 보유하므로, 전송 제공자는 요청 또는 응답 페이로드를 읽을 수 없습니다. | the inner TLS handshake |
| Upstream MCP server(업스트림 MCP 서버) | 프록시가 라우팅하는 대상으로, 사설 네트워크에서 실행되는 MCP 서버입니다. 각 업스트림은 터널 도메인 아래의 하나의 서브도메인으로 노출됩니다. | upstream, routed MCP server, tunneled MCP server |
자격 증명 프로비저닝¶
터널 스택은 런타임에 두 가지 자격 증명이 필요합니다. cloudflared의 아웃바운드 연결을 인증하는 tunnel token(터널 토큰)과, 내부 TLS 핸드셰이크 중 프록시가 제시하는, 터널에 등록된 CA가 서명한 server certificate(서버 인증서)입니다. 이를 제공하는 방법은 두 가지이며, 이 가이드 전반에서 한 쌍의 탭으로 제시됩니다.
| 모드 | 자격 증명이 스택에 전달되는 방식 | Helm 차트 명칭 | 탭 레이블 |
|---|---|---|---|
| Programmatic access(프로그래매틱 액세스) | 설정 구성 요소가 Workload Identity Federation을 통해 Tunnels API에 인증하고, 터널 토큰을 가져오며, CA 및 서버 인증서를 로컬에서 생성하고, CA를 등록합니다. 수명이 긴 시크릿을 수동으로 복사하지 않습니다. workspace:manage_tunnels 범위를 가진 페더레이션 규칙이 필요합니다. |
Managed 모드(setup.enabled: true, 기본값) |
With programmatic access |
| Manual(수동) | Claude Console에서 터널 토큰을 복사하고, CA 및 서버 인증서를 직접 생성하며(예: openssl 사용), Console에서 CA를 등록한 다음, 토큰과 인증서를 시크릿으로 스택에 제공합니다. 설정 구성 요소는 실행되지 않습니다. | External 모드(setup.enabled: false) |
Without programmatic access |
이 모드들은 배포 가이드에서 the programmatic flow(프로그래매틱 흐름) 및 the manual flow(수동 흐름)라고도 불립니다.
연결 모델¶
터널에서는 두 가지 방향이 작동하며, 이 둘은 서로 반대 방향을 가리킵니다.
- 연결 방향: cloudflared는 네트워크에서 터널 엣지로 아웃바운드 연결을 시작합니다. 방화벽에서는 포트 7844의 이그레스만 보이며, 인바운드 포트는 열리지 않습니다.
- 요청 방향: 해당 연결이 수립되면, MCP 요청은 그 연결을 통해 Anthropic에서 사용자 네트워크 방향으로 이동하여 cloudflared를 거쳐 프록시로, 그리고 업스트림 MCP 서버로 전달됩니다.
"outbound-only"(아웃바운드 전용)라는 표현은 연결을 설명하는 것이지, 그 연결을 통해 전달되는 요청을 설명하는 것이 아닙니다.
내부 TLS는 Anthropic의 백엔드와 프록시 사이에 걸쳐 있습니다. cloudflared와 터널 엣지는 전송 경로상 그 사이에 위치하지만 암호문만 볼 수 있습니다. 프록시는 네트워크 내부에서 MCP 요청 페이로드를 읽을 수 있는 첫 번째 지점입니다.
Upstream MCP server -- Proxy -- cloudflared -- Tunnel edge (Cloudflare network) -- Anthropic backend
참고 항목¶
- 보안 모델 및 공동 책임 표는 MCP 터널을 참조하세요.
- 프록시 구성 필드, 인증서 요구 사항, 설정 구성 요소에 대해서는 MCP 터널 레퍼런스를 참조하세요.