Inspector V2 Authorization - Specification
July 20, 2026 · View on GitHub
Brief | V1 Problems | V2 Scope | V2 Tech Stack | V2 UX | V2 Auth | V2 New Spec Impact
Overview | EMA / XAA | Hardening | Mid-session | Smoke testing | SDK consolidation
Inspector v2's authorization support spans OAuth 2.1 connect-time flows, Enterprise-Managed Authorization (EMA / XAA), mid-session credential recovery, and the hardening required by the MCP 2026-07-28 specification. This page is the landing point for that work; each area has its own spec below.
Inspector already ships connect-time OAuth and EMA infrastructure (core/auth/, core/mcp/oauthManager.ts, per-server OAuth fields in ~/.mcp-inspector/mcp.json — see Servers file). The specs here cover extending that foundation across web, TUI, and CLI. How that stack maps onto @modelcontextprotocol/client after the v2 upgrade is recorded in SDK consolidation.
Authorization specs
EMA / XAA
Support for Enterprise-Managed Authorization (EMA, also referred to as XAA / ID-JAG). EMA extends the OAuth flow so an enterprise IdP (OIDC) can authenticate the client once; any MCP resource authorization server configured to trust that IdP is then accessible with minimal or no user prompting. Covers the web connect flow (implemented in core/auth/ema/), install-level client.json persistence, and wiring into InspectorClient.
Hardening
As-built status for the six MCP 2026-07-28 authorization SEPs (#1527): what is done (and how), per-SEP automated coverage, and remaining test/era-aware follow-ups.
Mid-session
Detecting when in-flight MCP traffic needs new or elevated credentials, responding with the correct OAuth or EMA flow, and restoring the connection — across web, TUI, and CLI. Generalizes beyond expired access tokens to step-up authorization (a 403 with insufficient_scope and per-operation scopes, per SEP-2350). Addresses the web client's token-snapshot constraint, where MCP runs on the Hono backend and cannot complete interactive OAuth on its own.
Smoke testing
Manual smoke procedures for exercising Inspector OAuth against hosted MCP servers, complementing the automated integration coverage. Records known-good real endpoints, which client-ID mechanism each server supports, and how to configure Inspector (web, TUI, or CLI) via install-level client.json.
SDK consolidation
As-built: what auth logic moved onto the v2 SDK, what stayed Inspector-owned (and why), and which small SDK helper gaps would unlock further deletions.