fastmcp/examples/auth/azure_oauth
2026-04-13 17:11:17 -04:00
..
client.py Add WorkOS and Azure OAuth providers (#1550) 2025-08-20 16:22:03 -04:00
README.md AuthKit: auto-bind token audience to resource URL (RFC 8707) (#3905) 2026-04-13 17:11:17 -04:00
server.py AuthKit: auto-bind token audience to resource URL (RFC 8707) (#3905) 2026-04-13 17:11:17 -04:00

Azure (Microsoft Entra) OAuth Example

This example demonstrates how to use the Azure OAuth provider with FastMCP servers.

Setup

1. Azure App Registration

  1. Go to Azure Portal → App registrations
  2. Click "New registration" and configure:
    • Name: Your app name
    • Supported account types: Choose based on your needs
    • Redirect URI: http://127.0.0.1:8000/auth/callback (Web platform)
  3. After creation, go to "Certificates & secrets" → "New client secret"
  4. Note these values from the Overview page:
    • Application (client) ID
    • Directory (tenant) ID

2. Environment Variables

Create a .env file:

# Required
AZURE_CLIENT_ID=your-application-client-id
AZURE_CLIENT_SECRET=your-client-secret-value
AZURE_TENANT_ID=your-tenant-id  # From Azure Portal Overview page

3. Run the Example

Start the server:

uv run python server.py

Test with client:

uv run python client.py

Tenant Configuration

The tenant_id parameter is required and controls which accounts can authenticate:

  • Your tenant ID: Single organization (most common)
  • organizations: Any work/school account
  • consumers: Personal Microsoft accounts only