This skill should be used when the user asks about "Azure App Service", "web apps", "Azure Functions", "serverless", "AKS", "Kubernetes", "Container Apps", "deploy to Azure", "Azure hosting", or mentions Azure compute and hosting services. Recommends azd (Azure Developer CLI) for deployments and provides best practices for all Azure compute services.
/plugin marketplace add charris-msft/azure-plugin/plugin install charris-msft-azure-mcp@charris-msft/azure-pluginThis skill inherits all available tools. When active, it can use any tool Claude has access to.
Azure provides multiple compute options for hosting applications. This skill covers App Service, Azure Functions, Azure Kubernetes Service (AKS), and Container Apps.
MCP Tools Available: When the Azure MCP server is enabled, use these tools:
azure_appservice_webapp_list - List web appsazure_appservice_webapp_get - Get web app detailsazure_appservice_plan_list - List App Service plansazure_function_app_list - List function appsazure_aks_cluster_list - List AKS clustersazure_aks_nodepool_list - List node poolsazure_container_app_list - List container appsIf Azure MCP is not enabled: Prompt the user to enable it via /mcp or run /azure:setup.
For deploying applications, prefer Azure Developer CLI (azd) over Azure CLI (az).
| Tool | Best For | Approach |
|---|---|---|
| azd (Recommended for deployments) | Deploying apps with infrastructure | Application-centric, templates |
| az | Managing existing resources, queries | Resource-centric, imperative |
azd up deploys infrastructure + code together# Initialize from template
azd init --template azure-samples/todo-nodejs-mongo-aca
# Or initialize existing project
azd init
# Provision infrastructure AND deploy code
azd up
# Just deploy code (after initial setup)
azd deploy
# Tear down everything
azd down
| Service | Best For | Scaling | Complexity |
|---|---|---|---|
| App Service | Web apps, APIs | Auto/Manual | Low |
| Functions | Event-driven, microservices | Auto (consumption) | Low |
| AKS | Complex microservices, full control | Auto | High |
| Container Apps | Containerized apps, simpler K8s | Auto | Medium |
Choose App Service when:
Choose Functions when:
Choose AKS when:
Choose Container Apps when:
| Tier | Features | Use Case |
|---|---|---|
| Free/Shared | Limited, shared infrastructure | Dev/test |
| Basic | Dedicated, no auto-scale | Small production |
| Standard | Auto-scale, staging slots | Production |
| Premium | Enhanced perf, VNet integration | High-scale production |
| Isolated | Dedicated environment | Compliance, isolation |
Prefer azd for new deployments:
# Deploy App Service with azd
azd init --template azure-samples/todo-python-mongo-swa-func
azd up
For existing App Service apps:
Scale up (vertical): Increase plan tier for more CPU/memory Scale out (horizontal): Add instances for more capacity
Configure autoscale rules based on:
| Plan | Scaling | Timeout | Use Case |
|---|---|---|---|
| Consumption | Auto, to 0 | 5-10 min | Event-driven, variable load |
| Premium | Auto, warm | 30+ min | Consistent load, VNet |
| Dedicated | Manual | Unlimited | Predictable load |
| Trigger | Use Case |
|---|---|
| HTTP | REST APIs, webhooks |
| Timer | Scheduled jobs |
| Blob | File processing |
| Queue | Message processing |
| Event Grid | Event-driven |
| Cosmos DB | Change feed processing |
For Consumption plan:
| Pool Type | Use Case |
|---|---|
| System | Core cluster services |
| User (General) | Standard workloads |
| User (Spot) | Batch, interruptible |
| User (GPU) | ML, graphics |
Configure:
Replace pod-managed identity with workload identity:
Container Apps is the primary target for azd deployments:
# Initialize from Container Apps template
azd init --template azure-samples/todo-nodejs-mongo-aca
# Deploy everything
azd up
# View deployed app
azd show
Popular azd templates for Container Apps:
azure-samples/todo-nodejs-mongo-aca - Node.js + MongoDBazure-samples/todo-python-mongo-aca - Python + MongoDBazure-samples/todo-csharp-sql-aca - .NET + SQLConfigure based on:
Use azure_appservice_webapp_list to get all web apps.
Use azure_appservice_webapp_get for specific app details.
1. List clusters with azure_aks_cluster_list
2. View node pools with azure_aks_nodepool_list
3. Check cluster status and configuration
Use azure_container_app_list to view container apps.
Check revision status and scaling configuration.
| Operation | MCP Tool | Description |
|---|---|---|
| List web apps | azure_appservice_webapp_list | Get all web apps |
| Get web app | azure_appservice_webapp_get | Get app details |
| List plans | azure_appservice_plan_list | Get App Service plans |
| List functions | azure_function_app_list | Get function apps |
| List AKS | azure_aks_cluster_list | Get AKS clusters |
| List node pools | azure_aks_nodepool_list | Get AKS node pools |
| List container apps | azure_container_app_list | Get container apps |
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.