microsoft-foundry
npx machina-cli add skill microsoft/GitHub-Copilot-for-Azure/microsoft-foundry --openclawMicrosoft Foundry Skill
This skill helps developers work with Microsoft Foundry resources, covering model discovery and deployment, complete dev lifecycle of AI agent, evaluation workflows, and troubleshooting.
Sub-Skills
MANDATORY: Before executing ANY workflow, you MUST read the corresponding sub-skill document. Do not call MCP tools for a workflow without reading its skill document. This applies even if you already know the MCP tool parameters — the skill document contains required workflow steps, pre-checks, and validation logic that must be followed. This rule applies on every new user message that triggers a different workflow, even if the skill is already loaded.
This skill includes specialized sub-skills for specific workflows. Use these instead of the main skill when they match your task:
| Sub-Skill | When to Use | Reference |
|---|---|---|
| deploy | Containerize, build, push to ACR, create/update/start/stop/clone agent deployments | deploy |
| invoke | Send messages to an agent, single or multi-turn conversations | invoke |
| troubleshoot | View container logs, query telemetry, diagnose failures | troubleshoot |
| create | Create new hosted agent applications. Supports Microsoft Agent Framework, LangGraph, or custom frameworks in Python or C#. Downloads starter samples from foundry-samples repo. | create |
| project/create | Creating a new Azure AI Foundry project for hosting agents and models. Use when onboarding to Foundry or setting up new infrastructure. | project/create/create-foundry-project.md |
| resource/create | Creating Azure AI Services multi-service resource (Foundry resource) using Azure CLI. Use when manually provisioning AI Services resources with granular control. | resource/create/create-foundry-resource.md |
| models/deploy-model | Unified model deployment with intelligent routing. Handles quick preset deployments, fully customized deployments (version/SKU/capacity/RAI), and capacity discovery across regions. Routes to sub-skills: preset (quick deploy), customize (full control), capacity (find availability). | models/deploy-model/SKILL.md |
| quota | Managing quotas and capacity for Microsoft Foundry resources. Use when checking quota usage, troubleshooting deployment failures due to insufficient quota, requesting quota increases, or planning capacity. | quota/quota.md |
| rbac | Managing RBAC permissions, role assignments, managed identities, and service principals for Microsoft Foundry resources. Use for access control, auditing permissions, and CI/CD setup. | rbac/rbac.md |
💡 Tip: For a complete onboarding flow:
project/create→ agent workflows (deploy→invoke).
💡 Model Deployment: Use
models/deploy-modelfor all deployment scenarios — it intelligently routes between quick preset deployment, customized deployment with full control, and capacity discovery across regions.
Agent Development Lifecycle
Match user intent to the correct workflow. Read each sub-skill in order before executing.
| User Intent | Workflow (read in order) |
|---|---|
| Create a new agent from scratch | create → deploy → invoke |
| Deploy an agent (code already exists) | deploy → invoke |
| Update/redeploy an agent after code changes | deploy → invoke |
| Invoke/test/chat with an agent | invoke |
| Troubleshoot an agent issue | invoke → troubleshoot |
| Fix a broken agent (troubleshoot + redeploy) | invoke → troubleshoot → apply fixes → deploy → invoke |
| Start/stop agent container | deploy |
Agent: Project Context Resolution
Agent skills should run this step only when they need configuration values they don't already have. If a value (e.g., project endpoint, agent name) is already known from the user's message or a previous skill in the same session, skip resolution for that value.
Step 1: Detect azd Project
If any required configuration value is missing, check if azure.yaml exists in the project root (workspace root or user-specified project path). If found, run azd env get-values to load environment variables.
Step 2: Resolve Common Configuration
Match missing values against the azd environment:
| azd Variable | Resolves To | Used By |
|---|---|---|
AZURE_AI_PROJECT_ENDPOINT or AZURE_AIPROJECT_ENDPOINT | Project endpoint | deploy, invoke, troubleshoot |
AZURE_CONTAINER_REGISTRY_NAME or AZURE_CONTAINER_REGISTRY_ENDPOINT | ACR registry name / image URL prefix | deploy |
AZURE_SUBSCRIPTION_ID | Azure subscription | troubleshoot |
Step 3: Collect Missing Values
Use the ask_user or askQuestions tool only for values not resolved from the user's message, session context, or azd environment. Common values skills may need:
- Project endpoint — AI Foundry project endpoint URL
- Agent name — Name of the target agent
💡 Tip: If the user provides a project endpoint or agent name in their initial message, extract it directly — do not ask again.
Agent: Agent Types
All agent skills support two agent types:
| Type | Kind | Description |
|---|---|---|
| Prompt | "prompt" | LLM-based agents backed by a model deployment |
| Hosted | "hosted" | Container-based agents running custom code |
Use agent_get MCP tool to determine an agent's type when needed.
Tool Usage Conventions
- Use the
ask_useroraskQuestionstool whenever collecting information from the user - Use the
taskorrunSubagenttool to delegate long-running or independent sub-tasks (e.g., env var scanning, status polling, Dockerfile generation) - Prefer Azure MCP tools over direct CLI commands when available
- Reference official Microsoft documentation URLs instead of embedding CLI command syntax
Additional Resources
SDK Quick Reference
Source
git clone https://github.com/microsoft/GitHub-Copilot-for-Azure/blob/main/plugin/skills/microsoft-foundry/SKILL.mdView on GitHub Overview
This skill enables end-to-end management of Microsoft Foundry resources, including model discovery and deployment, agent lifecycles, evaluation workflows, and troubleshooting. It coordinates sub-skills (deploy, invoke, troubleshoot, create, quota, RBAC, etc.) to build, run, and scale Foundry resources.
How This Skill Works
The skill orchestrates Foundry MCP workflows to deploy models, create hosted agents, manage RBAC and quotas, and configure Foundry resources. It relies on specialized sub-skills (deploy, invoke, troubleshoot, create, quota, rbac, etc.), each with its own required steps, pre-checks, and validation logic documented in separate guides. Before execution, you must read the corresponding sub-skill document to ensure correct workflow steps and validation.
When to Use It
- Deploy a new hosted agent or model in Foundry
- Invoke an agent for single or multi-turn conversations and evaluation
- Troubleshoot deployment or runtime failures in Foundry
- Manage RBAC, role assignments, quotas, and capacity for Foundry resources
- Onboard to Foundry or create Foundry resources, projects, and AI Services
Quick Start
- Step 1: Read the sub-skill document for your chosen workflow (deploy, invoke, troubleshoot, etc.)
- Step 2: Prepare prerequisites such as Foundry project, resource, and provider registrations
- Step 3: Run the selected sub-skill workflow (deploy/invoke/troubleshoot) and verify the results
Best Practices
- Always read the sub-skill document before triggering any workflow
- Validate prerequisites (Foundry project/resource, resource group, provider registrations) prior to execution
- Use the quota sub-skill to check capacity and avoid deployment failures due to limits
- Assign least-privilege RBAC roles and monitor access controls regularly
- Use the specialized sub-skills (deploy, invoke, troubleshoot, etc.) for precise tasks rather than a generic approach
Example Use Cases
- Deploy a new hosted agent and its deployment using the deploy sub-skill, then register the Foundry resource
- Create a Foundry project and onboard a team to host agents and models
- Register a Foundry resource and enable AI Services within a new resource group
- Invoke an agent to perform a multi-turn chat for model evaluation and feedback
- Check quotas, adjust capacity, and resolve a QuotaExceeded error to complete deployment