@mcp-use/client 2.1.3 → 2.1.4-canary.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/auth/browser.d.ts +4 -1
- package/dist/auth/browser.d.ts.map +1 -1
- package/dist/index-browser.js +28 -5
- package/dist/index-browser.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/react/index.js +28 -5
- package/dist/react/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
package/dist/react/index.js
CHANGED
|
@@ -1900,7 +1900,7 @@ var HttpConnector = class extends BaseConnector {
|
|
|
1900
1900
|
};
|
|
1901
1901
|
|
|
1902
1902
|
// src/utils/version.ts
|
|
1903
|
-
var VERSION = "2.1.
|
|
1903
|
+
var VERSION = "2.1.4-canary.0";
|
|
1904
1904
|
function getPackageVersion() {
|
|
1905
1905
|
return VERSION;
|
|
1906
1906
|
}
|
|
@@ -1971,6 +1971,11 @@ function resolveClientOptions(clientOptions) {
|
|
|
1971
1971
|
};
|
|
1972
1972
|
}
|
|
1973
1973
|
|
|
1974
|
+
// src/auth/browser.ts
|
|
1975
|
+
import {
|
|
1976
|
+
extractWWWAuthenticateParams
|
|
1977
|
+
} from "@modelcontextprotocol/client";
|
|
1978
|
+
|
|
1974
1979
|
// src/auth/storage.ts
|
|
1975
1980
|
var AUTH_CRYPTO_DATABASE = "mcp-use-oauth-crypto";
|
|
1976
1981
|
var AUTH_CRYPTO_STORE = "keys";
|
|
@@ -2510,6 +2515,8 @@ var BrowserOAuthClientProvider = class {
|
|
|
2510
2515
|
proxyOAuthRequests;
|
|
2511
2516
|
lastAttemptedAuthUrl = null;
|
|
2512
2517
|
authorizationPending = false;
|
|
2518
|
+
/** Latest protected-resource metadata URL advertised by an MCP 401. */
|
|
2519
|
+
challengedResourceMetadataUrl;
|
|
2513
2520
|
/** Callback invoked immediately before an authorization popup opens. */
|
|
2514
2521
|
onPopupWindow;
|
|
2515
2522
|
constructor(serverUrl, options = {}) {
|
|
@@ -2617,6 +2624,11 @@ var BrowserOAuthClientProvider = class {
|
|
|
2617
2624
|
return url;
|
|
2618
2625
|
}
|
|
2619
2626
|
}
|
|
2627
|
+
rememberResourceMetadataChallenge(response) {
|
|
2628
|
+
if (response.status !== 401) return;
|
|
2629
|
+
const { resourceMetadataUrl } = extractWWWAuthenticateParams(response);
|
|
2630
|
+
this.challengedResourceMetadataUrl = resourceMetadataUrl?.toString();
|
|
2631
|
+
}
|
|
2620
2632
|
/**
|
|
2621
2633
|
* Returns a `fetch` function, scoped to this provider, that routes OAuth
|
|
2622
2634
|
* metadata and non-browser OAuth endpoint requests through the configured
|
|
@@ -2655,10 +2667,12 @@ var BrowserOAuthClientProvider = class {
|
|
|
2655
2667
|
}
|
|
2656
2668
|
const isMetadata = pathname.includes("/.well-known/");
|
|
2657
2669
|
if (!oauthProxyUrl) {
|
|
2658
|
-
|
|
2670
|
+
const response2 = await base(
|
|
2659
2671
|
isMetadata ? url : input,
|
|
2660
2672
|
isMetadata ? { ...init, cache: "no-store" } : init
|
|
2661
2673
|
);
|
|
2674
|
+
if (!isMetadata) this.rememberResourceMetadataChallenge(response2);
|
|
2675
|
+
return response2;
|
|
2662
2676
|
}
|
|
2663
2677
|
if (!restoredDiscovery) {
|
|
2664
2678
|
restoredDiscovery = true;
|
|
@@ -2678,7 +2692,9 @@ var BrowserOAuthClientProvider = class {
|
|
|
2678
2692
|
pathname
|
|
2679
2693
|
);
|
|
2680
2694
|
if (!isMetadata && !isProxiedEndpoint) {
|
|
2681
|
-
|
|
2695
|
+
const response2 = await base(input, init);
|
|
2696
|
+
this.rememberResourceMetadataChallenge(response2);
|
|
2697
|
+
return response2;
|
|
2682
2698
|
}
|
|
2683
2699
|
try {
|
|
2684
2700
|
const urlObj = new URL(url);
|
|
@@ -2815,8 +2831,15 @@ var BrowserOAuthClientProvider = class {
|
|
|
2815
2831
|
return this.session.saveDiscoveryState(state);
|
|
2816
2832
|
}
|
|
2817
2833
|
/** Return previously saved OAuth discovery state, or `undefined`. */
|
|
2818
|
-
discoveryState() {
|
|
2819
|
-
|
|
2834
|
+
async discoveryState() {
|
|
2835
|
+
const state = await this.session.discoveryState();
|
|
2836
|
+
const challengedUrl = this.challengedResourceMetadataUrl;
|
|
2837
|
+
this.challengedResourceMetadataUrl = void 0;
|
|
2838
|
+
if (challengedUrl && state && (state.resourceMetadataUrl !== challengedUrl || !state.resourceMetadata)) {
|
|
2839
|
+
await this.session.invalidateCredentials("discovery");
|
|
2840
|
+
return void 0;
|
|
2841
|
+
}
|
|
2842
|
+
return state;
|
|
2820
2843
|
}
|
|
2821
2844
|
/**
|
|
2822
2845
|
* Return the token endpoint from the SDK's persisted discovery state.
|