

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# MCP 호스팅 전략
<a name="mcp-hosting-strategy"></a>

사용 가능한 도구를 MCP 서버로 추출하면 에이전트 개발이 사용 가능한 도구와 분리됩니다. 이렇게 하면 MCP 서버를 호스팅하는 위치와 해당 서버 내에서 도구가 구성되는 방식에 대한 문제가 발생합니다.

## 호스팅 접근 방식
<a name="mcp-hosting-strategy-approaches"></a>

MCP 서버를 호스팅하는 방법에는 최종 사용자 시스템에서 로컬로 실행하거나, 원격으로 호스팅하거나, MCP 게이트웨이를 통해 호스팅하는 세 가지 옵션이 있습니다. 각 옵션에는 장점과 장단점이 있습니다.

### 로컬 호스팅
<a name="mcp-hosting-strategy-approaches-local"></a>

로컬 호스팅은 표준 입력 및 출력 스트림을 통해 JSON-RPC를 사용하여 서버와 통신하는 에이전트와 함께 로컬 시스템에서 MCP 서버를 하위 프로세스로 실행합니다. 이 접근 방식은 클라이언트와 서버 간의 인증이 필요하지 않습니다. 도구는 로컬 애플리케이션 및 파일과 상호 작용하고, 로컬에 저장된 자격 증명을 사용하고, 사용자 로컬 시스템의 네트워크 액세스를 상속할 수 있습니다. 이는 가장 간단한 호스팅 패턴이며 몇 가지 이점이 있습니다.

많은 고객이 로컬 서버를 사용하여 MCP를 시작합니다. 이를 통해 엔지니어는 로컬 환경에서 다양한 문제를 신속하게 반복하고 해결할 수 있습니다. 엔지니어의 코딩이 사용하는 Git 리포지토리에 연결하는 MCP 서버를 생각해 보세요. MCP 서버를 로컬로 유지하는 것은 엔지니어의 고유한 자격 증명을 사용하여 리포지토리에 액세스할 수 있고 원격 MCP 서버에 네트워크 호출을 추가하지 않기 때문에 매우 유용합니다. 다음 이미지는 IDE에서 코딩 에이전트와 함께 사용 중인 로컬 호스팅 MCP 서버를 보여줍니다.

![IDE에서 코딩 에이전트와 함께 사용되는 로컬 호스팅 MCP 서버입니다.](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/mcp-strategies/images/local-hosting.png)


이러한 유형의 배포의 경우 MCP 서버를 개발하고 배포하는 방법을 고려해야 합니다. 대부분의 고객은 최종 사용자가 서버를 등록하고 다운로드할 수 있는 MCP 레지스트리를 개발합니다. 이는 사용자가 특정 기능을 검색하고 필요에 적합한 MCP 서버를 찾을 수 있는 컨테이너 레지스트리와 매우 유사합니다.

공식 MCP 레지스트리와 같은 [퍼블릭 MCP 레지스트리](https://registry.modelcontextprotocol.io/)가 있으며 비공개 호스팅 레지스트리가 있습니다. 조직은 일반적으로 오픈 소스 소프트웨어 배포, 컨테이너 레지스트리 및 내부 패키지 관리에 대한 기존 정책에 따라 MCP 레지스트리 전략을 조정합니다. 보안 스캔, 승인 워크플로 및 규정 준수 요구 사항과 같은 요소를 고려해야 합니다.

그러나 로컬 호스팅은 조직이 고려해야 할 운영 문제를 야기합니다. 먼저 최종 사용자는 MCP 서버를 독립적으로 검색, 다운로드 및 구성해야 합니다. 이렇게 하면 로컬에서 사용하는 각 개별 MCP 서버를 시작하는 데 복잡성이 가중될 수 있습니다. 둘째, MCP 서버 수명 주기를 제어할 수 없습니다. 즉, 사용자는 보안 취약성 또는 누락된 기능이 있는 오래된 버전을 로컬에서 계속 실행할 수 있습니다. 이로 인해 규정 준수 요구 사항이 복잡해질 수 있습니다. [Kiro](https://aws.amazon.com/documentation-overview/kiro/)와 같은 일부 IDEs 및 CLI 도구를 사용하면 조직이 [사용 가능한 MCP 도구를 관리하고 제어](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/mcp-governance.html)하여 팀 간 일관성과 보안을 보장할 수 있습니다.

### 원격 호스팅
<a name="mcp-hosting-strategy-approaches-remote"></a>

두 번째 옵션은 HTTP 또는 HTTPS를 통해 액세스하는 원격 MCP 서버를 호스팅하는 것입니다. 이렇게 하면 모든 네트워크 연결 클라이언트에 액세스할 수 있습니다. 원격 호스팅을 사용하면 MCP 리소스 및 기능에 대한 액세스를 중앙에서 제어하고, 인증 및 권한 부여를 구현하고, MCP 서버 로직의 버전 관리 및 업데이트를 제어할 수 있습니다. 원격 호스팅을 사용하려면 최종 사용자가 에이전트와 함께 사용하려는 MCP 서버를 검색할 수 있도록 MCP 레지스트리를 사용해야 합니다. 다음 이미지는 원격 호스팅 접근 방식을 보여줍니다.

![원격 호스팅 접근 방식.](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/mcp-strategies/images/remote-hosting.png)


에이전트 개발 관점에서 볼 때 MCP 서버가 로컬이든 원격이든 경험은 비슷합니다. 가장 중요한 변경 사항은 MCP 서버에 대한 에이전트의 액세스와 외부 리소스에 대한 서버의 액세스를 모두 포함하여 인증 및 권한 부여를 구현하는 것입니다. 다중 테넌트 액세스 및 권한 관리를 고려하려면 원격 MCP 서버 구현을 신중하게 계획해야 합니다. [MCP 거버넌스 전략](mcp-governance-strategy.md) 장에는 인증 및 권한 부여 고려 사항에 대한 자세한 정보가 포함되어 있습니다.

### MCP 게이트웨이
<a name="mcp-hosting-strategy-approaches-gateway"></a>

마지막 옵션은 MCP 게이트웨이를 사용하는 것입니다. MCP 게이트웨이는 MCP 클라이언트와 서버 간의 중앙 집중식 프록시 역할을 하며 등록된 MCP 서버에 대한 액세스를 오케스트레이션합니다. 게이트웨이가 없으면 각 에이전트는 사용하려는 모든 원격 MCP 서버를 등록해야 합니다. 게이트웨이를 사용하면 에이전트가 인증, 권한 부여, 라우팅 및 프로토콜 번역을 관리하는 단일 엔드포인트에 연결할 수 있습니다. 새로운 MCP 서버와 도구를 동적으로 추가하고 에이전트가 즉시 사용할 수 있습니다. 다음 이미지는 MCP 게이트웨이 접근 방식을 보여줍니다.

![MCP 게이트웨이 접근 방식.](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/mcp-strategies/images/mcp-gateway-approach.png)


[Docker MCP Gateway](https://docs.docker.com/ai/mcp-catalog-and-toolkit/mcp-gateway/)와 같은 일부 게이트웨이 솔루션은 MCP 서버의 수명 주기도 관리하여 필요에 따라 온디맨드로 서버를 시작합니다. [Amazon Bedrock AgentCore Gateway와 같은 MCP 게이트웨이](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/gateway.html)는 [네이티브 의미 체계 검색 기능을](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/gateway-using-mcp-semantic-search.html) 제공하여 도구 검색을 관리하는 데도 도움이 될 수 있습니다. 이렇게 하면 에이전트가 MCP 클라이언트와 연결할 수 있는 단일 엔드포인트를 제공하고 컨텍스트 창 사용을 최적화하는 데 도움이 됩니다. 그 결과 MCP 도구를 효과적으로 선택하고 사용할 수 있는 간단한 에이전트가 생성됩니다. 그러나 원격 MCP 서버 접근 방식과 유사한 자격 증명 관련 문제가 있습니다.

## MCP 서버 호스팅 모범 사례
<a name="mcp-hosting-strategy-best-practices"></a>
+ 호스팅 옵션의 스펙트럼은 모든 것에 맞는 한 가지 크기가 아닙니다. 오늘날 MCP 서버 사용의 대부분은 로컬입니다.
+ 원격 MCP 서버를 사용하기 시작할 때 주요 고려 사항은 MCP 서버에 대한 일관된 인증 및 권한 부여와 MCP 서버가 다운스트림 리소스에 대한 인증 및 권한 부여를 수행하는 방식입니다.
+ MCP 게이트웨이는 여러 원격 MCP 서버를 호스팅하기 위한 연결 및 인증과 권한 부여를 간소화합니다. 또한 적용 가능한 도구를 검색하여 컨텍스트 기간 관리를 개선하는 기능도 제공합니다.