기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
MCP 호스팅 전략
사용 가능한 도구를 MCP 서버로 추출하면 에이전트 개발이 사용 가능한 도구와 분리됩니다. 이렇게 하면 MCP 서버를 호스팅하는 위치와 해당 서버 내에서 도구가 구성되는 방식에 대한 문제가 발생합니다.
호스팅 접근 방식
MCP 서버를 호스팅하는 방법에는 최종 사용자 시스템에서 로컬로 실행하거나, 원격으로 호스팅하거나, MCP 게이트웨이를 통해 호스팅하는 세 가지 옵션이 있습니다. 각 옵션에는 장점과 장단점이 있습니다.
로컬 호스팅
로컬 호스팅은 표준 입력 및 출력 스트림을 통해 JSON-RPC를 사용하여 서버와 통신하는 에이전트와 함께 로컬 시스템에서 MCP 서버를 하위 프로세스로 실행합니다. 이 접근 방식은 클라이언트와 서버 간의 인증이 필요하지 않습니다. 도구는 로컬 애플리케이션 및 파일과 상호 작용하고, 로컬에 저장된 자격 증명을 사용하고, 사용자 로컬 시스템의 네트워크 액세스를 상속할 수 있습니다. 이는 가장 간단한 호스팅 패턴이며 몇 가지 이점이 있습니다.
많은 고객이 로컬 서버를 사용하여 MCP를 시작합니다. 이를 통해 엔지니어는 로컬 환경에서 다양한 문제를 신속하게 반복하고 해결할 수 있습니다. 엔지니어의 코딩이 사용하는 Git 리포지토리에 연결하는 MCP 서버를 생각해 보세요. MCP 서버를 로컬로 유지하는 것은 엔지니어의 고유한 자격 증명을 사용하여 리포지토리에 액세스할 수 있고 원격 MCP 서버에 네트워크 호출을 추가하지 않기 때문에 매우 유용합니다. 다음 이미지는 IDE에서 코딩 에이전트와 함께 사용 중인 로컬 호스팅 MCP 서버를 보여줍니다.
이러한 유형의 배포의 경우 MCP 서버를 개발하고 배포하는 방법을 고려해야 합니다. 대부분의 고객은 최종 사용자가 서버를 등록하고 다운로드할 수 있는 MCP 레지스트리를 개발합니다. 이는 사용자가 특정 기능을 검색하고 필요에 적합한 MCP 서버를 찾을 수 있는 컨테이너 레지스트리와 매우 유사합니다.
공식 MCP 레지스트리와 같은 퍼블릭 MCP 레지스트리
그러나 로컬 호스팅은 조직이 고려해야 할 운영 문제를 야기합니다. 먼저 최종 사용자는 MCP 서버를 독립적으로 검색, 다운로드 및 구성해야 합니다. 이렇게 하면 로컬에서 사용하는 각 개별 MCP 서버를 시작하는 데 복잡성이 가중될 수 있습니다. 둘째, MCP 서버 수명 주기를 제어할 수 없습니다. 즉, 사용자는 보안 취약성 또는 누락된 기능이 있는 오래된 버전을 로컬에서 계속 실행할 수 있습니다. 이로 인해 규정 준수 요구 사항이 복잡해질 수 있습니다. Kiro
원격 호스팅
두 번째 옵션은 HTTP 또는 HTTPS를 통해 액세스하는 원격 MCP 서버를 호스팅하는 것입니다. 이렇게 하면 모든 네트워크 연결 클라이언트에 액세스할 수 있습니다. 원격 호스팅을 사용하면 MCP 리소스 및 기능에 대한 액세스를 중앙에서 제어하고, 인증 및 권한 부여를 구현하고, MCP 서버 로직의 버전 관리 및 업데이트를 제어할 수 있습니다. 원격 호스팅을 사용하려면 최종 사용자가 에이전트와 함께 사용하려는 MCP 서버를 검색할 수 있도록 MCP 레지스트리를 사용해야 합니다. 다음 이미지는 원격 호스팅 접근 방식을 보여줍니다.
에이전트 개발 관점에서 볼 때 MCP 서버가 로컬이든 원격이든 경험은 비슷합니다. 가장 중요한 변경 사항은 MCP 서버에 대한 에이전트의 액세스와 외부 리소스에 대한 서버의 액세스를 모두 포함하여 인증 및 권한 부여를 구현하는 것입니다. 다중 테넌트 액세스 및 권한 관리를 고려하려면 원격 MCP 서버 구현을 신중하게 계획해야 합니다. MCP 거버넌스 전략 장에는 인증 및 권한 부여 고려 사항에 대한 자세한 정보가 포함되어 있습니다.
MCP 게이트웨이
마지막 옵션은 MCP 게이트웨이를 사용하는 것입니다. MCP 게이트웨이는 MCP 클라이언트와 서버 간의 중앙 집중식 프록시 역할을 하며 등록된 MCP 서버에 대한 액세스를 오케스트레이션합니다. 게이트웨이가 없으면 각 에이전트는 사용하려는 모든 원격 MCP 서버를 등록해야 합니다. 게이트웨이를 사용하면 에이전트가 인증, 권한 부여, 라우팅 및 프로토콜 번역을 관리하는 단일 엔드포인트에 연결할 수 있습니다. 새로운 MCP 서버와 도구를 동적으로 추가하고 에이전트가 즉시 사용할 수 있습니다. 다음 이미지는 MCP 게이트웨이 접근 방식을 보여줍니다.
Docker MCP Gateway
MCP 서버 호스팅 모범 사례
-
호스팅 옵션의 스펙트럼은 모든 것에 맞는 한 가지 크기가 아닙니다. 오늘날 MCP 서버 사용의 대부분은 로컬입니다.
-
원격 MCP 서버를 사용하기 시작할 때 주요 고려 사항은 MCP 서버에 대한 일관된 인증 및 권한 부여와 MCP 서버가 다운스트림 리소스에 대한 인증 및 권한 부여를 수행하는 방식입니다.
-
MCP 게이트웨이는 여러 원격 MCP 서버를 호스팅하기 위한 연결 및 인증과 권한 부여를 간소화합니다. 또한 적용 가능한 도구를 검색하여 컨텍스트 기간 관리를 개선하는 기능도 제공합니다.