diff --git a/client/src/lib/auth.ts b/client/src/lib/auth.ts index 1c0c6b6..7ef3182 100644 --- a/client/src/lib/auth.ts +++ b/client/src/lib/auth.ts @@ -88,4 +88,16 @@ export class InspectorOAuthClientProvider implements OAuthClientProvider { return verifier; } + + clear() { + sessionStorage.removeItem( + getServerSpecificKey(SESSION_KEYS.CLIENT_INFORMATION, this.serverUrl), + ); + sessionStorage.removeItem( + getServerSpecificKey(SESSION_KEYS.TOKENS, this.serverUrl), + ); + sessionStorage.removeItem( + getServerSpecificKey(SESSION_KEYS.CODE_VERIFIER, this.serverUrl), + ); + } } diff --git a/client/src/lib/hooks/useConnection.ts b/client/src/lib/hooks/useConnection.ts index d1e958f..73f2e1c 100644 --- a/client/src/lib/hooks/useConnection.ts +++ b/client/src/lib/hooks/useConnection.ts @@ -396,6 +396,8 @@ export function useConnection({ const disconnect = async () => { await mcpClient?.close(); + const authProvider = new InspectorOAuthClientProvider(sseUrl); + authProvider.clear(); setMcpClient(null); setConnectionStatus("disconnected"); setCompletionsSupported(false);