@mcp-ts/sdk 1.6.0 → 1.6.2
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/adapters/agui-adapter.d.mts +2 -2
- package/dist/adapters/agui-adapter.d.ts +2 -2
- package/dist/adapters/agui-middleware.d.mts +2 -2
- package/dist/adapters/agui-middleware.d.ts +2 -2
- package/dist/adapters/ai-adapter.d.mts +2 -2
- package/dist/adapters/ai-adapter.d.ts +2 -2
- package/dist/adapters/langchain-adapter.d.mts +2 -2
- package/dist/adapters/langchain-adapter.d.ts +2 -2
- package/dist/client/index.d.mts +2 -2
- package/dist/client/index.d.ts +2 -2
- package/dist/client/react.d.mts +4 -4
- package/dist/client/react.d.ts +4 -4
- package/dist/client/react.js +96 -44
- package/dist/client/react.js.map +1 -1
- package/dist/client/react.mjs +96 -44
- package/dist/client/react.mjs.map +1 -1
- package/dist/client/vue.d.mts +4 -4
- package/dist/client/vue.d.ts +4 -4
- package/dist/{index-GfC_eNEv.d.ts → index-DhA-OEAe.d.ts} +1 -1
- package/dist/{index-DcYfpY3H.d.mts → index-bFL4ZF2N.d.mts} +1 -1
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +12 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +12 -2
- package/dist/index.mjs.map +1 -1
- package/dist/server/index.d.mts +2 -2
- package/dist/server/index.d.ts +2 -2
- package/dist/server/index.js +12 -2
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +12 -2
- package/dist/server/index.mjs.map +1 -1
- package/dist/shared/index.d.mts +4 -4
- package/dist/shared/index.d.ts +4 -4
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/index.mjs.map +1 -1
- package/dist/{tool-router-_O2tIwf7.d.mts → tool-router-BVaV1udm.d.mts} +1 -1
- package/dist/{tool-router-Bn9R0KWr.d.ts → tool-router-Dh2804tM.d.ts} +1 -1
- package/dist/{types-CfCoIsWI.d.mts → types-rIuN1CQi.d.mts} +1 -0
- package/dist/{types-CfCoIsWI.d.ts → types-rIuN1CQi.d.ts} +1 -0
- package/package.json +1 -1
- package/src/client/react/oauth-popup.tsx +111 -51
- package/src/server/handlers/sse-handler.ts +12 -0
- package/src/server/mcp/oauth-client.ts +6 -2
- package/src/shared/types.ts +1 -0
package/dist/index.mjs
CHANGED
|
@@ -1515,9 +1515,10 @@ var MCPClient = class _MCPClient {
|
|
|
1515
1515
|
throw new Error("Server URL is required to create transport");
|
|
1516
1516
|
}
|
|
1517
1517
|
const baseUrl = new URL(this.serverUrl);
|
|
1518
|
+
const hasAuthorizationHeader = Object.keys(this.headers || {}).some((key) => key.toLowerCase() === "authorization");
|
|
1518
1519
|
const transportOptions = {
|
|
1519
|
-
authProvider: this.oauthProvider,
|
|
1520
|
-
...this.headers && { headers: this.headers },
|
|
1520
|
+
...!hasAuthorizationHeader && { authProvider: this.oauthProvider },
|
|
1521
|
+
...this.headers && { requestInit: { headers: this.headers } },
|
|
1521
1522
|
/**
|
|
1522
1523
|
* Custom fetch implementation to handle connection timeouts.
|
|
1523
1524
|
* Observation: SDK 1.24.0+ connections may hang indefinitely in some environments.
|
|
@@ -1618,6 +1619,7 @@ var MCPClient = class _MCPClient {
|
|
|
1618
1619
|
serverUrl: this.serverUrl,
|
|
1619
1620
|
callbackUrl: this.callbackUrl,
|
|
1620
1621
|
transportType: this.transportType || "streamable_http",
|
|
1622
|
+
headers: this.headers,
|
|
1621
1623
|
createdAt: this.createdAt,
|
|
1622
1624
|
active: false
|
|
1623
1625
|
}, Math.floor(STATE_EXPIRATION_MS / 1e3));
|
|
@@ -1642,6 +1644,7 @@ var MCPClient = class _MCPClient {
|
|
|
1642
1644
|
serverUrl: this.serverUrl,
|
|
1643
1645
|
callbackUrl: this.callbackUrl,
|
|
1644
1646
|
transportType: this.transportType || "streamable_http",
|
|
1647
|
+
headers: this.headers,
|
|
1645
1648
|
createdAt: this.createdAt || Date.now(),
|
|
1646
1649
|
active
|
|
1647
1650
|
};
|
|
@@ -2475,6 +2478,11 @@ function isConnectionEvent(event) {
|
|
|
2475
2478
|
|
|
2476
2479
|
// src/server/handlers/sse-handler.ts
|
|
2477
2480
|
var DEFAULT_HEARTBEAT_INTERVAL = 3e4;
|
|
2481
|
+
function normalizeHeaders(headers) {
|
|
2482
|
+
if (!headers || typeof headers !== "object") return void 0;
|
|
2483
|
+
const entries = Object.entries(headers).map(([key, value]) => [key.trim(), String(value).trim()]).filter(([key, value]) => key.length > 0 && value.length > 0);
|
|
2484
|
+
return entries.length > 0 ? Object.fromEntries(entries) : void 0;
|
|
2485
|
+
}
|
|
2478
2486
|
var SSEConnectionManager = class {
|
|
2479
2487
|
constructor(options, sendEvent) {
|
|
2480
2488
|
this.options = options;
|
|
@@ -2599,6 +2607,7 @@ var SSEConnectionManager = class {
|
|
|
2599
2607
|
*/
|
|
2600
2608
|
async connect(params) {
|
|
2601
2609
|
const { serverName, serverUrl, callbackUrl, transportType } = params;
|
|
2610
|
+
const headers = normalizeHeaders(params.headers);
|
|
2602
2611
|
const serverId = params.serverId && params.serverId.length <= 12 ? params.serverId : await storage.generateSessionId();
|
|
2603
2612
|
const existingSessions = await storage.getIdentitySessionsData(this.identity);
|
|
2604
2613
|
const duplicate = existingSessions.find(
|
|
@@ -2625,6 +2634,7 @@ var SSEConnectionManager = class {
|
|
|
2625
2634
|
serverUrl,
|
|
2626
2635
|
callbackUrl,
|
|
2627
2636
|
transportType,
|
|
2637
|
+
headers,
|
|
2628
2638
|
...clientMetadata
|
|
2629
2639
|
// Spread client metadata (clientName, clientUri, logoUri, policyUri)
|
|
2630
2640
|
});
|