@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
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
  });