이 문서에서는 코딩 에이전트가 Azure 특정 파일 및 Azure 리소스를 이해하여 코드 파일을 편집할 수 있도록 GitHub Copilot 코딩 에이전트를 설정하고 Azure MCP Server에 연결하는 방법을 보여 줍니다.
GitHub 리포지토리에서 GitHub 문제를 GitHub Copilot 코딩 에이전트에 할당하면 코드 변경 내용이 포함된 끌어오기 요청이 만들어집니다. 요청된 변경 내용에 Azure 리소스에 대한 액세스 권한이 필요한 경우 GitHub Copilot 코딩 에이전트는 Azure MCP 서버를 사용해야 합니다. GitHub Copilot 코딩 에이전트가 Azure MCP Server를 사용하여 Azure 기반 프로젝트를 에이전트적으로 변경하려면 GitHub Copilot 코딩 에이전트를 구성하고 Azure에서 적절한 권한을 부여해야 합니다. 모든 항목을 수동으로 구성할 수 있지만, 많은 단계가 Azure 개발자 CLI 및 azd 확장을 사용하여 coding-agent자동화됩니다.
필수 조건
Azure 계정 및 Azure 구독에 대한 액세스. 설정하는 방법에 대한 자세한 내용은 Azure 계정의 가격 책정 페이지를 참조하세요.
GitHub 계정 및 GitHub Copilot 구독 설정하는 방법에 대한 자세한 내용은 GitHub에서 계정 만들기 및 GitHub Copilot의 빠른 시작을 각각 참조하세요.
GitHub 리포지토리의 기존 로컬 복제본입니다. 이 문서에서는 GitHub Copilot 코딩 에이전트와 Azure MCP Server 간의 연결을 설정하는 방법을 설명하므로 GitHub 리포지토리에는 Bicep 또는 Terraform 템플릿과 같은 Azure에 대한 배포 스크립트가 포함되어야 합니다.
Azure MCP 서버를 사용하도록 GitHub 리포지토리 구성
코딩 에이전트 확장은 azd Azure 구독에 대한 GitHub Copilot 코딩 에이전트와 Azure MCP Server 간의 연결을 안전하게 설정하는 데 필요한 단계를 간소화합니다. 먼저 Azure 구독에 계정을 만들고 필요한 권한이 있는 역할을 할당합니다. 둘째, Azure MCP Server를 GitHub Copilot 코딩 에이전트에 도입하는 데 필요한 JSON 코드 조각을 제공합니다.
아직
azd설치하지 않은 경우 지침에 따라 설치합니다 .터미널에서 작업하려는 리포지토리의 로컬 복제본으로 이동합니다.
명령을
azd coding-agent config사용하여 azd 코딩 에이전트 확장을 호출합니다.설치하는 동안 다음을 선택하라는 메시지가 표시됩니다.
- Azure 구독
- 코필로트 코딩 에이전트를 사용할 GitHub 리포지토리
- 새 사용자 관리 ID 또는 기존 사용자 관리 ID를 만들 것인지 여부
- Azure 지역 위치
- Azure 리소스 그룹
- 생성된 GitHub Actions 워크플로 설정 파일을 포함하는 새 분기가 만들어지는 GitHub 리포지토리
위치 및 리소스 그룹을 선택할 때 애플리케이션의 Azure 리소스와 동일한 대상 위치 및 리소스 그룹을 사용할 수 있습니다.
azd코드 에이전트 확장은 잠시 후 사용자 관리 ID를 생성하거나 기존 ID를 사용하여 역할을 할당하고, GitHub 리포지토리 환경에 ID 값을 저장한 뒤, 생성된 GitHub Actions 워크플로 설정 파일이 포함된 브랜치를 생성하고 푸시합니다.콘솔에 메시지가 표시됩니다.
(!) (!) NOTE: Some tasks must still be completed, manually: (!)일반적으로 다음 세 가지 작업이 있습니다.
- 생성된 GitHub Actions 워크플로 설치 파일이 포함된 분기를 병합합니다.
- Azure Portal에서 Copilot 코딩 에이전트의 관리 ID 역할을 구성합니다. 기본적으로 "읽기 권한자" 역할이 할당됩니다. 그러나 코딩 에이전트가 자율적으로 수행하려는 작업을 기반으로 다른 권한을 부여할 수 있습니다.
- MCP 구성을 설정하려면 링크를 방문하세요. 수동으로 탐색하려면 GitHub에서 설정 > 코필로 코딩 > 에이전트 > MCP 구성으로 이동하여 제공된 JSON 코드 조각에 붙여넣습니다. 예제는 다음과 같습니다.
{ "mcpServers": { "Azure": { "type": "local", "command": "npx", "args": [ "-y", "@azure/mcp@latest", "server", "start" ], "tools": [ "*" ] } } }마지막으로, 브라우저를 열 수 있도록
azd코딩 에이전트 확장을 허용한 다음, 생성된 GitHub Actions 워크플로 설치 파일이 포함된 분기를 병합하기 위한 끌어오기 요청을 만들 수 있습니다.
GitHub에서 GitHub Copilot 코딩 에이전트를 시작하는 문제 만들기
이 시점에서 Azure 배포 및 리소스에 대한 이해가 필요한 GitHub Copilot 코딩 에이전트에 할당하는 모든 GitHub 문제에 Azure MCP 서버를 사용하도록 GitHub Copilot 코딩 에이전트를 성공적으로 설정했습니다.
예를 들어 Azure Database for PostgreSQL에 배포할 때 PostgreSQL에 할당된 메모리를 늘리려는 경우를 가정해 보겠습니다. 사용 가능한 스토리지의 다음 계층을 사용하고 GitHub Copilot에 할당하도록 Bicep 템플릿을 수정하는 문제를 만듭니다.
비고
사용자 관리 ID 역할은 기본적으로 "읽기 권한자"로 설정되므로 Bicep 또는 Terraform 템플릿과 같은 배포 스크립트를 수정하기 위해 요청하는 변경 내용이 있어야 합니다. Azure 구독에서 기존 리소스를 직접 수정하도록 요청하는 것은 "읽기 권한자" 역할의 권한으로 인해 권한이 부여되지 않습니다.
GitHub의 Azure MCP Server를 사용하도록 설정한 Azure 기반 프로젝트가 포함된 리포지토리에서 문제로 이동합니다.
"새 문제" 단추를 선택합니다. 제목 및 설명 필드에서 GitHub Copilot 코딩 에이전트가 변경하려는 변경 내용을 설명합니다. "만들기" 단추를 선택합니다.
앞의 예제에서 차용하면 다음 텍스트를 사용하여 문제를 설명할 수 있습니다.
Title: Increase database storage Currently, when deploying to Azure via Bicep, we're creating a PostgreSQL database with 32gb of storage. I need the next tier higher -- whatever that is.이 예제 문제는 사용자가 요청하는 내용을 정확히 모르는 경우에도 간단하고 명확한 요청을 만듭니다. 이를 통해 Azure MCP 서버는 Azure Database fo PostgreSQL 유연한 서버에 사용할 수 있는 스토리지 계층 및 해당 변경을 수행하는 데 필요한 Bicep 템플릿의 설정에 대한 연구를 수행할 수 있습니다.
중요합니다
프롬프트에서 "Azure"라는 단어를 사용하여 GitHub Copilot가 Azure MCP Server에서 도구를 요청하는지 확인합니다.
담당자 아래에서 "Copilot에 할당" 버튼을 선택합니다. 대상 리포지토리, 기본 분기를 수정하고 선택적 프롬프트를 추가할 수 있는 "문제에 코필로트 할당" 대화 상자가 나타납니다. "할당" 단추를 선택합니다.
문제가 GitHub Copilot 코딩 에이전트에 할당되면 작업이 시작 중임을 알리는 "[WIP]"라는 접두사가 추가된 끌어오기 요청에 대한 링크가 표시됩니다.
끌어오기 요청을 보려면 "[WIP]" 링크를 선택합니다.
끌어오기 요청 본문에서 링크를 선택하여 코딩 세션을 봅니다. 이는 Visual Studio의 환경과 유사하게 코필로트 코딩 에이전트가 요청에 대해 진행 상황을 보여 줍니다.
완료되면 GitHub Copilot 코딩 에이전트가 코드 검토를 요청합니다. 일반적인 워크플로를 사용하여 GitHub와 함께 작업을 반복하고, GitHub Copilot 코딩 에이전트를 동료처럼 사용하시기 바랍니다.
변경 내용을 승인하고 끌어오기 요청을 병합하면 GitHub Copilot가 만든 원래 문제를 해결합니다.