Choose Your Approach
| Approach | When to Use | How It Works |
|---|---|---|
| Expose APIs to Agents | You have existing REST APIs you want AI agents to access | Translates REST APIs into MCP tools automatically — agents discover and invoke tools via MCP while the Orchestrator handles the REST translation behind the scenes |
| Protect MCP Servers | You have existing MCP servers that need identity | Proxies MCP connections with identity injection — the Orchestrator sits between agents and your MCP servers, adding authentication and authorization to every tool invocation |
Agent Identity Concepts
AI agents are not humans — but they still need identity. When an AI agent accesses a tool, reads data, or performs an action on behalf of a user, something needs to answer these questions: Who is this agent? Who authorized it to act? What is it allowed to do? And what did it actually do? Agent identity addresses this by adding three capabilities that traditional service accounts lack:- Delegation chains — Every agent action traces back to the human user who authorized it. When Agent X accesses a tool, the system knows that Alice delegated authority to Agent X and that Alice’s permissions (not just the agent’s) determine what the agent can do. This is implemented through OAuth 2.0 token exchange, which supports two modes. Delegation (default) produces a token with an
actclaim that identifies both the user and the agent acting on their behalf, giving downstream services full visibility for auditability. Impersonation produces a token that fully assumes the user’s identity, with no trace of agent involvement — use this when downstream services do not support the actor claim pattern. See the MCP Bridge and MCP Proxy references for configuration details. - Dynamic scopes — Agent permissions can change based on context. An agent might have broad scopes for one task and narrow scopes for another, depending on what the delegating user authorized. Scopes are named permissions (like
read:orders,write:invoices, oradmin:users) that your identity provider issues in the agent’s token. - Action-level audit — Every tool invocation is logged with the full identity context: which agent, which user, which tool, what parameters, and what result. This gives you a complete audit trail that satisfies compliance requirements and enables forensic analysis when something goes wrong.
How Token Security Works
The AI Identity Gateway involves two orchestrator deployments working together:- Auth Provider Orchestrator — A separate orchestrator deployment running as an OIDC Provider (authorization server). It handles agent authentication, token issuance, and token exchange (minting short-lived, scoped delegation tokens for each tool invocation).
- AI Identity Gateway Orchestrator — Runs the MCP Provider with MCP Bridge and/or MCP Proxy apps. It handles MCP transport, tool routing, inbound authorization (OPA policies), and upstream forwarding.
employee:List for listing employees) and expires in seconds (typically a ttl of 5s). A different tool call a moment later gets a completely different token with different scopes.
MCP Spec OAuth Discovery (RFC 9470)
When an agent first connects to the AI Identity Gateway, it goes through a standards-based OAuth discovery flow:- The agent connects to the AI Identity Gateway Orchestrator’s MCP endpoint.
- The gateway returns a
401along with a pointer to its protected resource metadata endpoint. - The gateway exposes
/.well-known/oauth-protected-resource(per RFC 9470), which returns protected resource metadata including the list of authorization server(s) the agent can authenticate against. - The agent reads the metadata, authenticates against the Auth Provider Orchestrator (one of the listed authorization servers), and obtains a token.
- The agent returns to the gateway with a valid token. The gateway validates the token and proceeds with tool discovery and invocation.
Set Up the Auth Provider
Set up the OIDC Provider for agent tokens
The OIDC Provider you configure here is the Orchestrator’s own token minting infrastructure. It does not just validate tokens from an external provider — it issues short-lived, narrowly scoped tokens for each tool invocation. You configure it with token exchange grant types so it can mint delegation tokens that carry both the agent’s identity and the delegating user’s identity.
- Console UI
- Configuration
Console UI documentation is coming soon. This section will walk you
through configuring this component using the Maverics Console’s visual
interface, including step-by-step screenshots and field descriptions.
Register the gateway client with token exchange
Register the AI Identity Gateway as an OIDC application that can perform token exchange. This client uses the 
urn:ietf:params:oauth:grant-type:token-exchange grant type to exchange a user’s token for a delegation token scoped to specific downstream APIs.- Console UI
- Configuration
Console UI documentation is coming soon. This section will walk you
through configuring this component using the Maverics Console’s visual
interface, including step-by-step screenshots and field descriptions.
Guides
Expose APIs to Agents
Make your existing REST APIs available to AI agents as discoverable MCP tools with full identity and authorization
Protect MCP Servers
Add identity governance to your existing MCP servers — authenticate every agent and authorize every tool call
Troubleshooting
Agent credentials rejected by identity provider
Agent credentials rejected by identity provider
If an agent cannot authenticate with its client credentials, check the
following:
- Verify the client ID and client secret are correct. Client secrets are often only shown once when created — if you have lost the secret, generate a new one in your identity provider.
- Check that the agent’s application registration is active and has not been disabled or deleted in the identity provider.
- Confirm the grant type is set to “client_credentials” in the agent’s application registration.
- Verify that the token endpoint URL in the Orchestrator’s identity connector matches your identity provider’s actual token endpoint.
- If the agent’s credentials have an expiration date, check whether they have expired.
Delegation chain not resolving
Delegation chain not resolving
If the Orchestrator cannot resolve the delegation chain (the agent
authenticates but the user context is missing):
- Verify that the delegated token includes the
act(actor) claim or whatever custom claim your identity provider uses for delegation. - Check that the token exchange was performed correctly — the original user token must be exchanged for a delegated agent token, not simply passed through.
- Verify that the gateway client’s
grantTypesincludesurn:ietf:params:oauth:grant-type:token-exchange. - If your identity provider does not support the standard OAuth 2.0 token exchange, check the Orchestrator’s identity connector documentation for provider-specific delegation configuration.
- Enable debug logging in the Orchestrator to see the full token contents and identify which claims are present or missing.
Token exchange fails with invalid audience
Token exchange fails with invalid audience
If the token exchange succeeds but the downstream service rejects the
exchanged token:
- Verify the
allowedAudiencesin the gateway client includes the audience value used in the MCP app’soutbound.tokenExchange.audience. - Check that the downstream service’s expected audience matches the
audiencevalue in the token exchange configuration. - Review the exchanged token’s claims (using a JWT debugger) to confirm
the
audclaim contains the expected value.