Azure MCP Server를 사용하면 Azure 배포 작업을 관리할 수 있습니다. 이러한 작업에는 자연어 프롬프트를 통해 아키텍처 다이어그램을 생성하고, 앱 로그를 가져오고, 배포 계획을 검색하고, IaC 규칙을 가져오고, 파이프라인 지침을 제공하는 작업이 포함됩니다.
Azure 배포는 Azure 리소스에 대한 배포를 계획, 유효성 검사 및 모니터링하는 데 도움이 되는 도구 집합입니다. 자세한 내용은 Azure 배포 설명서를 참조하세요.
메모
도구 매개 변수: Azure MCP Server 도구는 작업을 완료하는 데 필요한 데이터에 대한 매개 변수를 정의합니다. 이러한 매개 변수 중 일부는 각 도구와 관련이 있으며 아래에 설명되어 있습니다. 다른 매개 변수는 전역이며 모든 도구에서 공유됩니다. 자세한 내용은 도구 매개 변수를 참조하세요.
앱 로그 가져오기
이 도구는 Azure 개발자 CLI(azd)가 배포하는 애플리케이션에 대한 애플리케이션 로그를 보여 줍니다. 이 도구는 Azure Container Apps, Azure App Service 및 Azure Functions에 대한 애플리케이션의 Log Analytics 작업 영역을 쿼리합니다. azd 환경 구성에서 작업 영역 및 관련 리소스를 자동으로 검색합니다. 에 의해 azd up배포된 애플리케이션에 대해서만 작동합니다.
배포 상태를 확인하거나 배포 후 문제를 해결합니다.
예 프롬프트는 다음과 같습니다.
- "Azd env 이름 'dev' 및 작업 영역 폴더 '/home/alice/projects/my-app'에 대해 azd에서 배포한 애플리케이션의 로그를 표시합니다."
| 매개 변수 | 필수 또는 선택 사항 | Description |
|---|---|---|
| AZD env name | 필수 | Azure Developer CLI(azd)에서 생성했으며 azd init 또는 azd up 동안 AZURE_ENV_NAME에 저장된 환경 이름입니다. 컨텍스트에서 제공되지 않은 경우 이 도구는 작업 영역의 .azure 디렉터리를 확인하거나 실행합니다 azd env list. |
| 작업 영역 폴더 | 필수 | azd 프로젝트를 포함하는 작업 영역 폴더의 전체 경로입니다. |
| Limit | 선택적 | 검색할 로그 행의 최대 수입니다. 결과를 제한하거나 토큰 제한을 초과하지 않도록 하는 데 사용합니다. 기본값은 200입니다. |
파괴: ❌ | 멱등성: ✅ | 오픈 월드: ❌ | 읽기 전용: ✅ | 비밀: ❌ | 로컬 필수: ❌
아키텍처 다이어그램 생성
이 도구는 MCP(모델 컨텍스트 프로토콜) 도구 집합의 일부입니다. 권장되는 Azure 서비스 및 애플리케이션에 대한 논리적 연결을 보여 주는 Azure 서비스 아키텍처 다이어그램을 생성합니다. 이 도구는 입력으로 제공된 애플리케이션 토폴로지(AppTopology)에서 다이어그램을 렌더링합니다. 서비스, 컴퓨팅 호스트, 종속성 및 환경 설정을 설명하는 AppTopology를 제공합니다. 작업 영역을 검색하여 연결 문자열에 대한 서비스, 프레임워크 및 환경 변수를 검색하여 AppTopology를 빌드할 수 있습니다. .NET Aspire 애플리케이션의 경우 다음을 포함합니다 aspireManifest.json. 다이어그램은 서비스 선택 및 연결에 중점을 둡니다. 자세한 네트워크 토폴로지 또는 보안 디자인은 표시되지 않습니다.
예 프롬프트는 다음과 같습니다.
- "이 애플리케이션 원시 MCP 도구 입력 '보안 암호'<에 대한 Azure 아키텍처 다이어그램을 생성합니다>."
| 매개 변수 | 필수 또는 선택 사항 | Description |
|---|---|---|
| 기본 mcp 도구 입력 | 필수 | 이 도구의 입력 구조를 정의하는 JSON 개체입니다. |
파괴: ❌ | 멱등성: ✅ | 오픈 월드: ❌ | 읽기 전용: ✅ | 비밀: ❌ | 로컬 필수: ❌
IaC 규칙 가져오기
Bicep 및 Terraform Infrastructure as Code(IaC) 파일을 만들어 Azure 애플리케이션을 배포하기 위한 규칙 및 모범 사례를 검색합니다. 이 MCP(모델 컨텍스트 프로토콜) 도구는 Azure 리소스 구성 표준, Azd(Azure Developer CLI) 및 Azure CLI와의 호환성 및 일반적인 IaC 품질 요구 사항에 대한 지침을 반환합니다. 지침을 사용하여 Azure 리소스에 대한 Bicep 스크립트 및 Terraform 템플릿을 개선하고 배포를 Azure 모범 사례에 맞게 조정합니다.
예 프롬프트는 다음과 같습니다.
- "배포 도구 'AzCli'를 사용하여 Azure용 Bicep 및 Terraform IaC를 작성하기 위한 규칙과 모범 사례를 보여 주세요."
| 매개 변수 | 필수 또는 선택 사항 | Description |
|---|---|---|
| 배포 도구 | 필수 | 사용할 배포 도구입니다. 유효한 값: AzCli, . AZD |
| IaC 형식 | 선택적 | 배포에 사용되는 IaC 파일의 형식입니다. 유효한 값에는 bicep, terraform이(가) 포함됩니다. IaC 파일 없이 Azure CLI 명령 스크립트를 사용하려는 경우에만 비워 둡니다. |
| 리소스 종류 | 선택적 | 규칙을 생성할 Azure 리소스 종류 목록입니다. 컨텍스트에서 값을 가져와서 계획에 정의된 동일한 리소스를 사용합니다. 유효한 값: appservice,containerapp,,functionaks,azuredatabaseforpostgresql,azuredatabaseformysql,azuresqldatabase,azurecosmosdb,,azurestorageaccountazurekeyvault. |
파괴: ❌ | 멱등성: ✅ | 오픈 월드: ❌ | 읽기 전용: ✅ | 비밀: ❌ | 로컬 필수: ❌
예시
- Azure App Service 및 Azure SQL Database용 Bicep 및 Terraform에 대한 IaC 규칙을 제공합니다. "리소스 'appservice', 'azuresqldatabase'에 대한 배포 도구 'AZD' 및 IaC 유형 'bicep'에 대한 규칙 가져오기".
- Azure Kubernetes Service 및 Azure Key Vault를 배포하는 Terraform 템플릿에 대한 모범 사례를 보여 줍니다. "리소스 'aks', 'azurekeyvault'에 대한 배포 도구 'AzCli' 및 IaC 형식 'terraform'에 대한 규칙 가져오기".
- AzCli 스크립트를 사용하여 IaC 파일 없이 일반 IaC 품질 검사를 요청합니다. "배포 도구 'AzCli'에 대한 규칙을 가져와서 리소스 'azurestorageaccount'에 대해 IaC 형식을 비워 둡니다."
파이프라인 지침 가져오기
이 MCP(모델 컨텍스트 프로토콜) 도구는 GitHub Actions 또는 Azure DevOps 파이프라인을 사용하여 Azure에 애플리케이션을 배포하는 CI/CD 파이프라인 구성 및 단계별 지침을 생성합니다. Azure 개발자 CLI(azd) 및 Azure CLI 기반 배포를 지원합니다. 인프라를 프로비전하고 애플리케이션 코드를 배포하는 파이프라인을 생성할 수 있습니다.
GitHub Actions 또는 Azure DevOps를 선택하고, 파이프라인이 인프라만 배포하거나 프로비전해야 하는지 여부를 결정하고, 프로젝트가 azd를 사용하는지 여부를 확인할 수 있습니다(예 azure.yaml : 파일이 있음). 프로젝트에서 azd 도구를 사용하고 azure.yaml 파일이 있는 경우에만 deploy-only 또는 provision-and-deploy를 지정하고, Is azd project를 true로 설정합니다.
예 프롬프트는 다음과 같습니다.
- "GitHub Actions를 사용해 CI/CD 파이프라인을 설정하여 Azure에 앱을 배포하려면 어떻게 해야 하나요? 이때 배포 옵션은 'deploy-only'이고, 프로젝트는 AZD가 아니며, 파이프라인 플랫폼은 'github-actions'입니다."
| 매개 변수 | 필수 또는 선택 사항 | Description |
|---|---|---|
| 배포 옵션 | 필수 | 유효한 값: 배포 전용, 프로비전 및 배포. 기본적으로 배포 전용입니다. 인프라 프로비전 파이프라인이 로컬 프로비저닝 스크립트를 사용하는 경우에만 provision-and-deploy로 설정하십시오. |
| AZD 프로젝트인가요? | 필수 | 배포 파이프라인에서 AZD 도구를 사용할지 여부입니다.
true은 azure.yaml이 제공되거나 컨텍스트에서 AZD 도구가 제안되는 경우에만 설정됩니다. |
| 파이프라인 플랫폼 | 필수 | 배포 파이프라인에 대한 플랫폼입니다. 유효한 값: github-actions, . azure-devops |
파괴: ❌ | 멱등성: ✅ | 오픈 월드: ❌ | 읽기 전용: ✅ | 비밀: ❌ | 로컬 필수: ❌
배포 계획 가져오기
Azure에 애플리케이션에 대한 형식이 지정된 단계별 배포 계획을 생성합니다. MCP(모델 컨텍스트 프로토콜)의 일부인 이 도구는 Azure 리소스를 제안하고, IaC(Infrastructure as Code) 템플릿을 제공하고, 대상 호스팅 서비스 및 선택한 프로비저닝 도구를 기반으로 하는 배포 단계를 나열합니다. 예를 들어 대상 호스팅 서비스에는 Azure Container Apps, Azure App Service 또는 AKS(Azure Kubernetes Service)가 포함됩니다. 프로비저닝 도구의 경우 Azure Developer CLI(azd), Bicep을 사용하는 Azure CLI 또는 Terraform을 예로 들 수 있습니다.
이 도구는 작업 영역을 검색하거나 리소스를 자동으로 검색하지 않습니다. 프로젝트를 분석하고, 프레임워크, 종속성 및 기존 리소스를 결정하고, 호스팅 서비스 및 프로비저닝 도구를 선택한 다음, 해당 값을 제공하여 계획을 생성합니다.
예 프롬프트는 다음과 같습니다.
- "배포 옵션 'provision-and-deploy', 프로비저닝 도구 'AZD', 원본 유형 'from-project', 대상 앱 서비스 'WebApp', 작업 영역 폴더 '/home/dev/my-webapp' 및 IaC 옵션 'bicep'을 사용하여 프로젝트 이름 'my-webapp'에 대한 단계별 배포 계획을 Azure에 만들려면 어떻게 해야 하나요?"
| 매개 변수 | 필수 또는 선택 사항 | Description |
|---|---|---|
| 배포 옵션 | 필수 | 프로젝트 및 사용자 입력에 따라 값을 설정합니다. 유효한 값: provision-and-deploy, deploy-only. provision-only 기존 Azure 리소스에 배포할 시기 또는 IaC 파일이 이미 있는 경우를 선택합니다 deploy-only . Azure 리소스를 프로비전하려는 경우에만 선택합니다 provision-only . 인프라를 프로비전하고 애플리케이션을 배포할 시기를 선택합니다 provision-and-deploy . |
| 프로젝트 이름 | 필수 | 배포 계획을 생성할 프로젝트의 이름입니다. 프로젝트 이름을 제공하지 않으면 도구가 작업 영역에서 유추합니다. |
| 프로비전 도구 | 필수 | Azure 리소스를 프로비전하는 데 사용할 도구입니다. 유효한 값: AzCli, . AZD 예를 들어 Azure Developer CLI(azd) 또는 Bicep과 함께 사용하는 Azure CLI입니다. |
| 원본 유형 | 필수 | 생성할 계획의 원본입니다. 유효한 값: from-project, from-azure. from-context 작업 영역의 프로젝트 파일에 대한 계획을 기반으로 하는 데 사용합니다 from-project . 기존 Azure 리소스에 대한 계획을 기반으로 하는 데 사용합니다 from-azure . 프로젝트 파일 또는 Azure 리소스가 없을 때 제공하는 값을 기준으로 계획을 수립하는 데 사용합니다 from-context . |
| 대상 앱 서비스 | 필수 | 애플리케이션을 배포할 Azure 서비스입니다. 유효한 값: ContainerApp, WebApp, FunctionAppAKS. 애플리케이션 아키텍처 및 런타임에 따라 권장합니다. |
| 작업 영역 폴더 | 필수 | 작업 영역 폴더의 전체 경로입니다. |
| IaC 옵션 | 선택적 | 코드로서의 인프라 옵션입니다. 유효한 값: bicep, . terraform Azure CLI 스크립트를 사용하려면 비워 둡니다. |
| 리소스 그룹 | 선택적 | Azure 리소스 그룹의 이름입니다. |
파괴: ❌ | 멱등성: ✅ | 오픈 월드: ❌ | 읽기 전용: ✅ | 비밀: ❌ | 로컬 필수: ❌