mcpField
A
azure-aigateway

azure-aigateway

Official
github.com/microsoftTesting & quality1.6k568.4k installsUpdated today
Repository

About azure-aigateway

Azure AI Gateway is a skill that configures Azure API Management (APIM) as a gateway for governing AI models, MCP tools, and agents. It targets developers and operators running AI services on Azure. The content centers on policy configuration, backend setup, and test commands.

Key features

  1. 01Model policies for token limits and semantic caching
  2. 02Tool governance with rate limits for MCP tools
  3. 03Agent policies for content safety and jailbreak detection
  4. 04Azure OpenAI and AI Foundry backend configuration
  5. 05Gateway endpoint testing and token usage metrics

Use cases

  1. 01Adding token limits and load balancing to Azure OpenAI deployments
  2. 02Applying rate limits to MCP tool calls through APIM
  3. 03Configuring content safety policies to filter harmful content

MCP support

The skill describes how to govern MCP tools through APIM, including rate limiting and converting APIs into MCP tools.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/microsoft/azure-skills --skill azure-aigateway

After installing, type/azure-aigatewayin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
auth-best-practices.md
patterns.md
policies.md
troubleshooting.md
references/sdk/
azure-ai-contentsafety-py.md
azure-ai-contentsafety-ts.md
azure-mgmt-apimanagement-dotnet.md
azure-mgmt-apimanagement-py.md

Details

From the project README

Azure AI Gateway

Configure Azure API Management (APIM) as an AI Gateway for governing AI models, MCP tools, and agents.

To deploy APIM, use the azure-prepare skill. See APIM deployment guide.

When to Use This Skill

CategoryTriggers
Model Governance"semantic caching", "token limits", "load balance AI", "track token usage"
Tool Governance"rate limit MCP", "protect my tools", "configure my tool", "convert API to MCP"
Agent Governance"content safety", "jailbreak detection", "filter harmful content"
Configuration"add Azure OpenAI backend", "configure my model", "add AI Foundry model"
Testing"test AI gateway", "call OpenAI through gateway"

Quick Reference

PolicyPurposeDetails
azure-openai-token-limitCost controlModel Policies
azure-openai-semantic-cache-lookup/store60-80% cost savingsModel Policies
azure-openai-emit-token-metricObservabilityModel Policies
llm-content-safetySafety & complianceAgent Policies
rate-limit-by-keyMCP/tool protectionTool Policies

Get Gateway Details

# Get gateway URL
az apim show --name <apim-name> --resource-group <rg> --query "gatewayUrl" -o tsv

# List backends (AI models)
az apim backend list --service-name <apim-name> --resource-group <rg> \
  --query "[].{id:name, url:url}" -o table

# Get subscription key
az apim subscription keys list \
  --service-name <apim-name> --resource-group <rg> --subscription-id <sub-id>

Test AI Endpoint

GATEWAY_URL=$(az apim show --name <apim-name> --resource-group <rg> --query "gatewayUrl" -o tsv)

curl -X POST "${GATEWAY_URL}/openai/deployments/<deployment>/chat/completions?api-version=2024-02-01" \
  -H "Content-Type: application/json" \
  -H "Ocp-Apim-Subscription-Key: <key>" \
  -d '{"messages": [{"role": "user", "content": "Hello"}], "max_tokens": 100}'

Common Tasks

Add AI Backend

See references/patterns.md for full steps.

# Discover AI resources
az cognitiveservices account list --query "[?kind=='OpenAI']" -o table

# Create backend
az apim backend create --service-name <apim> --resource-group <rg> \
  --backend-id openai-backend --protocol http --url "https://<aoai>.openai.azure.com/openai"

# Grant access (managed identity)
az role assignment create --assignee <apim-principal-id> \
  --role "Cognitive Services User" --scope <aoai-resource-id>
Apply AI Governance Policy

Recommended policy order in <inbound>:

  1. Authentication - Managed identity to backend
  2. Semantic Cache Lookup - Check cache before calling AI
  3. Token Limits - Cost control
  4. Content Safety - Filter harmful content
  5. Backend Selection - Load balancing
  6. Metrics - Token usage tracking

See references/policies.md for complete example.


Troubleshooting

IssueSolution
Token limit 429Increase tokens-per-minute or add load balancing
No cache hitsLower score-threshold to 0.7
Content false positivesIncrease category thresholds (5-6)
Backend auth 401Grant APIM "Cognitive Services User" role

See references/troubleshooting.md for details.


References

SDK Quick References

Comments

Markdown supported