목록으로

Programming Notes

Azure Functions의 MCP 서버로 Foundry 에이전트에 사용자 지정 도구 제공하기

이 블로그 게시물은 Azure Functions에 MCP 서버를 배포하고 Microsoft Foundry 에이전트에 연결하려는 개발자를 위한 것입니다. 이 연결이 필요한 이유, 사용 가능한 다양한 인증 옵션, 그리고 에이전트가 MCP 도구를 호출하도록 설정하는 방법을 안내합니다.

Azure Functions의 MCP 서버를 Foundry 에이전트에 연결하기

이 블로그 시리즈를 계속 따라왔다면, Azure Functions가 원격 MCP 서버를 호스팅하기에 좋은 장소라는 것을 알고 계실 겁니다. 확장 가능한 인프라, 기본 제공 인증, 서버리스 청구 등 모든 장점을 얻을 수 있습니다. 하지만 MCP 서버를 호스팅하는 것은 절반에 불과합니다. 진정한 가치는 무언가가 이 도구들을 실제로 사용할 때 발휘됩니다.

Microsoft Foundry를 사용하면 추론하고, 계획하며, 작업을 수행할 수 있는 AI 에이전트를 구축할 수 있습니다. MCP 서버를 에이전트에 연결함으로써, 데이터베이스 쿼리, API 호출 또는 비즈니스 로직 실행 등 사용자 지정 도구에 대한 액세스를 에이전트에 제공하는 것입니다. 에이전트는 도구를 발견하고, 언제 호출할지 결정하며, 결과를 사용하여 사용자에게 응답합니다. 이것이 바로 에이전트 AI 패턴의 실제 적용입니다.

MCP 서버를 Foundry 에이전트에 연결해야 하는 이유

이미 VS Code, VS, Cursor 또는 다른 MCP 클라이언트와 잘 작동하는 MCP 서버를 가지고 있을 수 있습니다. 동일한 서버를 Foundry 에이전트에 연결하면 팀이나 고객이 상호 작용하는 엔터프라이즈 AI 에이전트와 같은 완전히 다른 컨텍스트에서 해당 도구들을 재사용할 수 있습니다. 아무것도 다시 구축할 필요가 없습니다. MCP 서버는 그대로 유지되며, 단순히 다른 소비자를 추가하는 것뿐입니다.

사전 준비 사항

진행하기 전에 다음 사항을 확인하십시오:

  1. Azure Functions에 배포된 MCP 서버. 아직 없는 경우, 다음 샘플 중 하나를 따라 빠르게 배포할 수 있습니다:
  2. 배포된 모델을 가진 Foundry 프로젝트와 Foundry 에이전트

인증 옵션

개발 단계에 따라 적절한 옵션을 선택하고 나중에 업그레이드할 수 있습니다. 다음은 요약입니다:

방법 사용 시기
키 기반 개발 환경 또는 Entra 인증이 필요하지 않을 때.
Microsoft Entra 프로덕션 환경, 프로젝트 관리 ID 사용.
OAuth ID 패스스루 프로덕션 환경, 각 사용자가 개별적으로 인증해야 할 때.
인증되지 않음 개발 환경 전용 또는 공개 정보에만 액세스하는 도구.

MCP 서버를 Foundry 에이전트에 연결하기

서버가 키 기반 인증을 사용하거나 인증되지 않은 경우, Foundry 에이전트에서 연결을 설정하는 것이 비교적 간단할 것입니다.

Microsoft EntraOAuth ID 패스스루는 추가 설정 단계가 필요한 옵션입니다. 각 인증 방법에 대한 자세한 단계별 지침을 확인하세요.

높은 수준에서, 프로세스는 다음과 같습니다:

  1. 기본 제공 MCP 인증 활성화: Azure Functions에 서버를 배포할 때, 키 기반 인증이 기본값입니다. 이를 비활성화하고 대신 기본 제공 MCP 인증을 활성화해야 합니다. 사전 준비 사항 섹션의 샘플 서버 중 하나를 배포했다면, 이 단계는 이미 완료되어 있습니다.
  2. MCP 서버 엔드포인트 URL 얻기: MCP 확장 기반 서버의 경우, https://<FUNCTION_APP_NAME>.azurewebsites.net/runtime/webhooks/mcp 입니다.
  3. 자격 증명 얻기: 선택한 인증 방법에 따라 관리 ID 구성, OAuth 자격 증명을 얻습니다.
  4. MCP 서버를 도구로 추가: Foundry 포털에서 에이전트로 이동하여 새로운 MCP 도구를 추가하고 엔드포인트 및 자격 증명을 제공하여 MCP 서버를 도구로 추가합니다.

Microsoft Entra 연결 필수 필드 Microsoft Entra 연결 필수 필드 이미지

OAuth ID 필수 필드 OAuth ID 필수 필드 이미지

서버가 도구로 구성되면, Agent Builder 플레이그라운드에서 MCP 도구 중 하나를 트리거하는 프롬프트를 전송하여 테스트합니다.

마무리 생각

이것이 흥미로운 점은 바로 구성 가능성입니다. MCP 서버를 한 번 구축하면 VS Code, VS, Cursor, ChatGPT, 그리고 이제 Foundry 에이전트까지 어디에서나 작동합니다. MCP 프로토콜은 AI에서 도구 사용을 위한 범용 인터페이스가 되고 있으며, Azure Functions는 이러한 서버를 대규모로 안전하게 호스팅하는 것을 쉽게 만듭니다.

Foundry로 에이전트를 구축하고 계신가요? MCP 서버를 다른 클라이언트에 연결해 보셨나요? 어떤 도구를 노출하고 어떻게 사용하고 계신지 듣고 싶습니다. 여러분의 생각을 공유해주세요!

다음 단계

다음 블로그 게시물에서는 다른 MCP 주제를 더 깊이 다루고, Azure Functions의 새로운 MCP 기능 및 개발 사항을 다룰 예정입니다. 계속 지켜봐 주세요!