inspector/clients/web/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
cliffhall e2fb78d999 feat(oauth): make the refresh_token grant opt-out per server
The Inspector always declared `refresh_token` in its OAuth client
metadata. The SDK's `determineScope()` then appends `offline_access`
whenever the authorization server advertises it and the client declares
that grant, and `startAuthorization()` appends `prompt=consent` whenever
`offline_access` is in scope. Against Microsoft Entra ID that forced
consent prompt routes a non-admin user into the admin-consent workflow
and fails with AADSTS90094 — even after a tenant admin has consented.

Adds a per-server "Request refresh token" setting (default on) that
drops the grant from the client metadata, breaking that chain at its
source. Persisted as `oauth.requestRefreshToken` and written only when
off, so entries that never touch it keep a byte-stable round-trip. Web
edits it in Server Settings → Authorization; the CLI and TUI pick it up
from the same per-server settings via `buildRunnerClientAuthOptions`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013hzwzS8UvBsr4yZm7o7sev
Signed-off-by: cliffhall <cliff@futurescale.com>
2026-08-24 19:50:57 -04:00
..
components feat(oauth): make the refresh_token grant opt-out per server 2026-08-24 19:50:57 -04:00
hooks Merge pull request #2087 from modelcontextprotocol/v2/fix/1914-surface-post-add-refresh-failure 2026-08-23 20:48:01 -04:00
lib fix(web): move the app origin off 6276, bound the publish route 2026-08-24 08:45:40 -04:00
test feat(oauth): make the refresh_token grant opt-out per server 2026-08-24 19:50:57 -04:00
theme fix(a11y): make the form error color meet WCAG AA in both schemes 2026-08-23 12:56:13 -04:00
types chore: close a batch of quality-gate & tidy gaps (#1785 #1787 #1789 #1790 #1767) (#1792) 2026-07-26 10:43:11 -04:00
utils docs(web): describe the accepted subset, not "parses as a source expression" 2026-08-24 01:20:18 -04:00
App.css feat(web): use the Ace editor for the request-metadata JSON 2026-08-23 16:55:23 -04:00
App.test.tsx fix(web): move the app origin off 6276, bound the publish route 2026-08-24 08:45:40 -04:00
App.tsx feat(oauth): make the refresh_token grant opt-out per server 2026-08-24 19:50:57 -04:00
index.ts feat: port CLI, TUI, and launcher from v1.5 into v2 (#1452) 2026-06-14 20:27:49 -04:00
main.tsx fix(a11y): make the form error color meet WCAG AA in both schemes 2026-08-23 12:56:13 -04:00