@mcp-ts/sdk 1.6.0 → 1.6.1

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.
Files changed (40) hide show
  1. package/dist/adapters/agui-adapter.d.mts +2 -2
  2. package/dist/adapters/agui-adapter.d.ts +2 -2
  3. package/dist/adapters/agui-middleware.d.mts +2 -2
  4. package/dist/adapters/agui-middleware.d.ts +2 -2
  5. package/dist/adapters/ai-adapter.d.mts +2 -2
  6. package/dist/adapters/ai-adapter.d.ts +2 -2
  7. package/dist/adapters/langchain-adapter.d.mts +2 -2
  8. package/dist/adapters/langchain-adapter.d.ts +2 -2
  9. package/dist/client/index.d.mts +2 -2
  10. package/dist/client/index.d.ts +2 -2
  11. package/dist/client/react.d.mts +4 -4
  12. package/dist/client/react.d.ts +4 -4
  13. package/dist/client/vue.d.mts +4 -4
  14. package/dist/client/vue.d.ts +4 -4
  15. package/dist/{index-GfC_eNEv.d.ts → index-DhA-OEAe.d.ts} +1 -1
  16. package/dist/{index-DcYfpY3H.d.mts → index-bFL4ZF2N.d.mts} +1 -1
  17. package/dist/index.d.mts +3 -3
  18. package/dist/index.d.ts +3 -3
  19. package/dist/index.js +12 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/index.mjs +12 -2
  22. package/dist/index.mjs.map +1 -1
  23. package/dist/server/index.d.mts +2 -2
  24. package/dist/server/index.d.ts +2 -2
  25. package/dist/server/index.js +12 -2
  26. package/dist/server/index.js.map +1 -1
  27. package/dist/server/index.mjs +12 -2
  28. package/dist/server/index.mjs.map +1 -1
  29. package/dist/shared/index.d.mts +4 -4
  30. package/dist/shared/index.d.ts +4 -4
  31. package/dist/shared/index.js.map +1 -1
  32. package/dist/shared/index.mjs.map +1 -1
  33. package/dist/{tool-router-_O2tIwf7.d.mts → tool-router-BVaV1udm.d.mts} +1 -1
  34. package/dist/{tool-router-Bn9R0KWr.d.ts → tool-router-Dh2804tM.d.ts} +1 -1
  35. package/dist/{types-CfCoIsWI.d.mts → types-rIuN1CQi.d.mts} +1 -0
  36. package/dist/{types-CfCoIsWI.d.ts → types-rIuN1CQi.d.ts} +1 -0
  37. package/package.json +1 -1
  38. package/src/server/handlers/sse-handler.ts +12 -0
  39. package/src/server/mcp/oauth-client.ts +6 -2
  40. package/src/shared/types.ts +1 -0
@@ -1444,9 +1444,10 @@ var MCPClient = class _MCPClient {
1444
1444
  throw new Error("Server URL is required to create transport");
1445
1445
  }
1446
1446
  const baseUrl = new URL(this.serverUrl);
1447
+ const hasAuthorizationHeader = Object.keys(this.headers || {}).some((key) => key.toLowerCase() === "authorization");
1447
1448
  const transportOptions = {
1448
- authProvider: this.oauthProvider,
1449
- ...this.headers && { headers: this.headers },
1449
+ ...!hasAuthorizationHeader && { authProvider: this.oauthProvider },
1450
+ ...this.headers && { requestInit: { headers: this.headers } },
1450
1451
  /**
1451
1452
  * Custom fetch implementation to handle connection timeouts.
1452
1453
  * Observation: SDK 1.24.0+ connections may hang indefinitely in some environments.
@@ -1547,6 +1548,7 @@ var MCPClient = class _MCPClient {
1547
1548
  serverUrl: this.serverUrl,
1548
1549
  callbackUrl: this.callbackUrl,
1549
1550
  transportType: this.transportType || "streamable_http",
1551
+ headers: this.headers,
1550
1552
  createdAt: this.createdAt,
1551
1553
  active: false
1552
1554
  }, Math.floor(STATE_EXPIRATION_MS / 1e3));
@@ -1571,6 +1573,7 @@ var MCPClient = class _MCPClient {
1571
1573
  serverUrl: this.serverUrl,
1572
1574
  callbackUrl: this.callbackUrl,
1573
1575
  transportType: this.transportType || "streamable_http",
1576
+ headers: this.headers,
1574
1577
  createdAt: this.createdAt || Date.now(),
1575
1578
  active
1576
1579
  };
@@ -2404,6 +2407,11 @@ function isConnectionEvent(event) {
2404
2407
 
2405
2408
  // src/server/handlers/sse-handler.ts
2406
2409
  var DEFAULT_HEARTBEAT_INTERVAL = 3e4;
2410
+ function normalizeHeaders(headers) {
2411
+ if (!headers || typeof headers !== "object") return void 0;
2412
+ const entries = Object.entries(headers).map(([key, value]) => [key.trim(), String(value).trim()]).filter(([key, value]) => key.length > 0 && value.length > 0);
2413
+ return entries.length > 0 ? Object.fromEntries(entries) : void 0;
2414
+ }
2407
2415
  var SSEConnectionManager = class {
2408
2416
  constructor(options, sendEvent) {
2409
2417
  this.options = options;
@@ -2528,6 +2536,7 @@ var SSEConnectionManager = class {
2528
2536
  */
2529
2537
  async connect(params) {
2530
2538
  const { serverName, serverUrl, callbackUrl, transportType } = params;
2539
+ const headers = normalizeHeaders(params.headers);
2531
2540
  const serverId = params.serverId && params.serverId.length <= 12 ? params.serverId : await storage.generateSessionId();
2532
2541
  const existingSessions = await storage.getIdentitySessionsData(this.identity);
2533
2542
  const duplicate = existingSessions.find(
@@ -2554,6 +2563,7 @@ var SSEConnectionManager = class {
2554
2563
  serverUrl,
2555
2564
  callbackUrl,
2556
2565
  transportType,
2566
+ headers,
2557
2567
  ...clientMetadata
2558
2568
  // Spread client metadata (clientName, clientUri, logoUri, policyUri)
2559
2569
  });