entra-agent-id

Provision Microsoft Entra Agent Identity Blueprints and configure OAuth 2.0 token exchange via Microsoft Graph.

Updated Jul 20, 2026
One-click install
npx skills add https://github.com/merceralex397-collab/alex-stack --skill entra-agent-id-merceralex397-collab
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: entra-agent-id
Source: https://github.com/merceralex397-collab/alex-stack/tree/main/dev/azure-profile/azure-skills-main/azure-skills-main/.github/plugins/azure-skills/skills/entra-agent-id
Command: npx skills add https://github.com/merceralex397-collab/alex-stack --skill entra-agent-id-merceralex397-collab

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires azure-identity, requests, and includes references (resource) components.

What problem does it solve? AI agents need distinct, auditable identities with independently scoped permissions, but standard Entra app registrations cannot provide per-instance identities or the specialized token flows agents require. This Skill guides provisioning of Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities through Microsoft Graph, plus the two-step fmi_path token exchange for autonomous and on-behalf-of authentication. ## Core Features & Use Cases - Identity Provisioning: Create Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities using typed Microsoft Graph endpoints in PowerShell or Python. - Runtime Token Exchange: Implement the two-step fmi_path exchange for autonomous (app-only) and OBO (delegated) flows, including cross-tenant scenarios. - Polyglot Sidecar Deployment: Deploy the Microsoft Entra SDK for AgentID sidecar container so Python, Node, Go, and Java agents acquire tokens over HTTP without SDK embedding. - Use Case: You are building a fleet of support agents that each need their own identity and audit trail. Use this Skill to create one Blueprint, provision an Agent Identity per instance, grant per-agent Graph permissions, and wire up Managed Identity + Workload Identity Federation for production token acquisition. ## Quick Start Ask the AI to create an Agent Identity Blueprint and BlueprintPrincipal in your tenant, then provision a per-instance Agent Identity and show the fmi_path token exchange code to acquire a Graph token for it.

Frequently Asked Questions about entra-agent-id

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a Microsoft Entra Agent Identity with Microsoft Graph?▼

Create an Agent Identity Blueprint via POST /applications/microsoft.graph.agentIdentityBlueprint, then explicitly create its BlueprintPrincipal, then POST to /servicePrincipals/microsoft.graph.agentIdentity with the Blueprint's appId. Sponsors must be Users at Blueprint creation.

How does the fmi_path token exchange work for agent identities?▼

Step 1 uses client_credentials with the Blueprint credentials and fmi_path set to the Agent Identity's appId to get a parent token for api://AzureADTokenExchange. Step 2 presents that parent token as a client_assertion to acquire a Graph token whose sub claim is the specific Agent Identity.

Can I use DefaultAzureCredential or Azure CLI tokens for Agent Identity APIs?▼

No. Azure CLI tokens carry Directory.AccessAsUser.All, which Agent Identity APIs hard-reject with a 403. Use a dedicated app registration with client_credentials, or Connect-MgGraph with explicit delegated Agent Identity scopes.

Why do I get AADSTS700211 during cross-tenant agent token exchange?▼

AADSTS700211 means step 1 of the parent token exchange targeted the wrong tenant. In cross-tenant flows, step 1 must target the Agent Identity's home tenant, not the Blueprint's home tenant, or the federated identity record will not match.

What languages does the Microsoft Entra SDK for AgentID sidecar support?▼

The sidecar is language-agnostic: agents in Python, Node, Go, or Java call it over HTTP on localhost to acquire tokens, so no SDK embedding is required. For .NET, use the Microsoft.Identity.Web.AgentIdentities package instead.

Why can't I add a client secret to an Agent Identity service principal?▼

Agent Identities cannot hold credentials; attempting it returns PropertyNotCompatibleWithAgentIdentity. Credentials such as secrets, certificates, or federated identity credentials must be configured on the Blueprint, and all Agent Identities under it authenticate through those.