@modelcontextprotocol/sdk 1.21.2 → 1.23.0-beta.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.
Files changed (242) hide show
  1. package/README.md +92 -11
  2. package/dist/cjs/client/auth.d.ts +11 -1
  3. package/dist/cjs/client/auth.d.ts.map +1 -1
  4. package/dist/cjs/client/auth.js +71 -19
  5. package/dist/cjs/client/auth.js.map +1 -1
  6. package/dist/cjs/client/index.d.ts +252 -1478
  7. package/dist/cjs/client/index.d.ts.map +1 -1
  8. package/dist/cjs/client/index.js +130 -0
  9. package/dist/cjs/client/index.js.map +1 -1
  10. package/dist/cjs/client/sse.d.ts +1 -0
  11. package/dist/cjs/client/sse.d.ts.map +1 -1
  12. package/dist/cjs/client/sse.js +5 -3
  13. package/dist/cjs/client/sse.js.map +1 -1
  14. package/dist/cjs/client/streamableHttp.d.ts +2 -1
  15. package/dist/cjs/client/streamableHttp.d.ts.map +1 -1
  16. package/dist/cjs/client/streamableHttp.js +35 -15
  17. package/dist/cjs/client/streamableHttp.js.map +1 -1
  18. package/dist/cjs/examples/client/elicitationUrlExample.d.ts +2 -0
  19. package/dist/cjs/examples/client/elicitationUrlExample.d.ts.map +1 -0
  20. package/dist/cjs/examples/client/elicitationUrlExample.js +693 -0
  21. package/dist/cjs/examples/client/elicitationUrlExample.js.map +1 -0
  22. package/dist/cjs/examples/client/simpleOAuthClient.js +13 -52
  23. package/dist/cjs/examples/client/simpleOAuthClient.js.map +1 -1
  24. package/dist/cjs/examples/client/simpleOAuthClientProvider.d.ts +26 -0
  25. package/dist/cjs/examples/client/simpleOAuthClientProvider.d.ts.map +1 -0
  26. package/dist/cjs/examples/client/simpleOAuthClientProvider.js +51 -0
  27. package/dist/cjs/examples/client/simpleOAuthClientProvider.js.map +1 -0
  28. package/dist/cjs/examples/client/simpleStreamableHttp.js +11 -6
  29. package/dist/cjs/examples/client/simpleStreamableHttp.js.map +1 -1
  30. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.d.ts +4 -4
  31. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.d.ts.map +1 -1
  32. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.js +16 -0
  33. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.js.map +1 -1
  34. package/dist/cjs/examples/server/elicitationFormExample.d.ts +2 -0
  35. package/dist/cjs/examples/server/elicitationFormExample.d.ts.map +1 -0
  36. package/dist/cjs/examples/server/{elicitationExample.js → elicitationFormExample.js} +16 -12
  37. package/dist/cjs/examples/server/elicitationFormExample.js.map +1 -0
  38. package/dist/cjs/examples/server/elicitationUrlExample.d.ts +2 -0
  39. package/dist/cjs/examples/server/elicitationUrlExample.d.ts.map +1 -0
  40. package/dist/cjs/examples/server/elicitationUrlExample.js +655 -0
  41. package/dist/cjs/examples/server/elicitationUrlExample.js.map +1 -0
  42. package/dist/cjs/examples/server/jsonResponseStreamableHttp.js +26 -3
  43. package/dist/cjs/examples/server/jsonResponseStreamableHttp.js.map +1 -1
  44. package/dist/cjs/examples/server/mcpServerOutputSchema.js +34 -11
  45. package/dist/cjs/examples/server/mcpServerOutputSchema.js.map +1 -1
  46. package/dist/cjs/examples/server/simpleSseServer.js +26 -3
  47. package/dist/cjs/examples/server/simpleSseServer.js.map +1 -1
  48. package/dist/cjs/examples/server/simpleStatelessStreamableHttp.js +27 -4
  49. package/dist/cjs/examples/server/simpleStatelessStreamableHttp.js.map +1 -1
  50. package/dist/cjs/examples/server/simpleStreamableHttp.js +34 -10
  51. package/dist/cjs/examples/server/simpleStreamableHttp.js.map +1 -1
  52. package/dist/cjs/examples/server/sseAndStreamableHttpCompatibleServer.js +26 -3
  53. package/dist/cjs/examples/server/sseAndStreamableHttpCompatibleServer.js.map +1 -1
  54. package/dist/cjs/examples/server/toolWithSampleServer.js +30 -8
  55. package/dist/cjs/examples/server/toolWithSampleServer.js.map +1 -1
  56. package/dist/cjs/server/auth/handlers/authorize.js +34 -11
  57. package/dist/cjs/server/auth/handlers/authorize.js.map +1 -1
  58. package/dist/cjs/server/auth/handlers/token.js +35 -12
  59. package/dist/cjs/server/auth/handlers/token.js.map +1 -1
  60. package/dist/cjs/server/auth/middleware/bearerAuth.d.ts.map +1 -1
  61. package/dist/cjs/server/auth/middleware/bearerAuth.js +13 -8
  62. package/dist/cjs/server/auth/middleware/bearerAuth.js.map +1 -1
  63. package/dist/cjs/server/auth/middleware/clientAuth.js +27 -4
  64. package/dist/cjs/server/auth/middleware/clientAuth.js.map +1 -1
  65. package/dist/cjs/server/auth/router.js +1 -1
  66. package/dist/cjs/server/auth/router.js.map +1 -1
  67. package/dist/cjs/server/completable.d.ts +30 -16
  68. package/dist/cjs/server/completable.d.ts.map +1 -1
  69. package/dist/cjs/server/completable.js +38 -55
  70. package/dist/cjs/server/completable.js.map +1 -1
  71. package/dist/cjs/server/index.d.ts +213 -71
  72. package/dist/cjs/server/index.d.ts.map +1 -1
  73. package/dist/cjs/server/index.js +61 -16
  74. package/dist/cjs/server/index.js.map +1 -1
  75. package/dist/cjs/server/mcp.d.ts +14 -16
  76. package/dist/cjs/server/mcp.d.ts.map +1 -1
  77. package/dist/cjs/server/mcp.js +105 -41
  78. package/dist/cjs/server/mcp.js.map +1 -1
  79. package/dist/cjs/server/zod-compat.d.ts +82 -0
  80. package/dist/cjs/server/zod-compat.d.ts.map +1 -0
  81. package/dist/cjs/server/zod-compat.js +252 -0
  82. package/dist/cjs/server/zod-compat.js.map +1 -0
  83. package/dist/cjs/server/zod-json-schema-compat.d.ts +12 -0
  84. package/dist/cjs/server/zod-json-schema-compat.d.ts.map +1 -0
  85. package/dist/cjs/server/zod-json-schema-compat.js +80 -0
  86. package/dist/cjs/server/zod-json-schema-compat.js.map +1 -0
  87. package/dist/cjs/shared/auth.d.ts +116 -502
  88. package/dist/cjs/shared/auth.d.ts.map +1 -1
  89. package/dist/cjs/shared/auth.js +133 -112
  90. package/dist/cjs/shared/auth.js.map +1 -1
  91. package/dist/cjs/shared/metadataUtils.d.ts +5 -1
  92. package/dist/cjs/shared/metadataUtils.d.ts.map +1 -1
  93. package/dist/cjs/shared/metadataUtils.js +2 -5
  94. package/dist/cjs/shared/metadataUtils.js.map +1 -1
  95. package/dist/cjs/shared/protocol.d.ts +7 -10
  96. package/dist/cjs/shared/protocol.d.ts.map +1 -1
  97. package/dist/cjs/shared/protocol.js +39 -16
  98. package/dist/cjs/shared/protocol.js.map +1 -1
  99. package/dist/cjs/shared/toolNameValidation.d.ts +31 -0
  100. package/dist/cjs/shared/toolNameValidation.d.ts.map +1 -0
  101. package/dist/cjs/shared/toolNameValidation.js +97 -0
  102. package/dist/cjs/shared/toolNameValidation.js.map +1 -0
  103. package/dist/cjs/shared/transport.d.ts +15 -1
  104. package/dist/cjs/shared/transport.d.ts.map +1 -1
  105. package/dist/cjs/shared/transport.js +40 -0
  106. package/dist/cjs/shared/transport.js.map +1 -1
  107. package/dist/cjs/shared/zodTestMatrix.d.ts +16 -0
  108. package/dist/cjs/shared/zodTestMatrix.d.ts.map +1 -0
  109. package/dist/cjs/shared/zodTestMatrix.js +43 -0
  110. package/dist/cjs/shared/zodTestMatrix.js.map +1 -0
  111. package/dist/cjs/spec.types.d.ts +823 -261
  112. package/dist/cjs/spec.types.d.ts.map +1 -1
  113. package/dist/cjs/spec.types.js +5 -8
  114. package/dist/cjs/spec.types.js.map +1 -1
  115. package/dist/cjs/types.d.ts +3828 -59205
  116. package/dist/cjs/types.d.ts.map +1 -1
  117. package/dist/cjs/types.js +817 -487
  118. package/dist/cjs/types.js.map +1 -1
  119. package/dist/esm/client/auth.d.ts +11 -1
  120. package/dist/esm/client/auth.d.ts.map +1 -1
  121. package/dist/esm/client/auth.js +71 -20
  122. package/dist/esm/client/auth.js.map +1 -1
  123. package/dist/esm/client/index.d.ts +252 -1478
  124. package/dist/esm/client/index.d.ts.map +1 -1
  125. package/dist/esm/client/index.js +130 -1
  126. package/dist/esm/client/index.js.map +1 -1
  127. package/dist/esm/client/sse.d.ts +1 -0
  128. package/dist/esm/client/sse.d.ts.map +1 -1
  129. package/dist/esm/client/sse.js +5 -3
  130. package/dist/esm/client/sse.js.map +1 -1
  131. package/dist/esm/client/streamableHttp.d.ts +2 -1
  132. package/dist/esm/client/streamableHttp.d.ts.map +1 -1
  133. package/dist/esm/client/streamableHttp.js +35 -15
  134. package/dist/esm/client/streamableHttp.js.map +1 -1
  135. package/dist/esm/examples/client/elicitationUrlExample.d.ts +2 -0
  136. package/dist/esm/examples/client/elicitationUrlExample.d.ts.map +1 -0
  137. package/dist/esm/examples/client/elicitationUrlExample.js +691 -0
  138. package/dist/esm/examples/client/elicitationUrlExample.js.map +1 -0
  139. package/dist/esm/examples/client/simpleOAuthClient.js +12 -51
  140. package/dist/esm/examples/client/simpleOAuthClient.js.map +1 -1
  141. package/dist/esm/examples/client/simpleOAuthClientProvider.d.ts +26 -0
  142. package/dist/esm/examples/client/simpleOAuthClientProvider.d.ts.map +1 -0
  143. package/dist/esm/examples/client/simpleOAuthClientProvider.js +47 -0
  144. package/dist/esm/examples/client/simpleOAuthClientProvider.js.map +1 -0
  145. package/dist/esm/examples/client/simpleStreamableHttp.js +12 -7
  146. package/dist/esm/examples/client/simpleStreamableHttp.js.map +1 -1
  147. package/dist/esm/examples/server/demoInMemoryOAuthProvider.d.ts +4 -4
  148. package/dist/esm/examples/server/demoInMemoryOAuthProvider.d.ts.map +1 -1
  149. package/dist/esm/examples/server/demoInMemoryOAuthProvider.js +16 -0
  150. package/dist/esm/examples/server/demoInMemoryOAuthProvider.js.map +1 -1
  151. package/dist/esm/examples/server/elicitationFormExample.d.ts +2 -0
  152. package/dist/esm/examples/server/elicitationFormExample.d.ts.map +1 -0
  153. package/dist/esm/examples/server/{elicitationExample.js → elicitationFormExample.js} +16 -12
  154. package/dist/esm/examples/server/elicitationFormExample.js.map +1 -0
  155. package/dist/esm/examples/server/elicitationUrlExample.d.ts +2 -0
  156. package/dist/esm/examples/server/elicitationUrlExample.d.ts.map +1 -0
  157. package/dist/esm/examples/server/elicitationUrlExample.js +650 -0
  158. package/dist/esm/examples/server/elicitationUrlExample.js.map +1 -0
  159. package/dist/esm/examples/server/jsonResponseStreamableHttp.js +1 -1
  160. package/dist/esm/examples/server/jsonResponseStreamableHttp.js.map +1 -1
  161. package/dist/esm/examples/server/mcpServerOutputSchema.js +1 -1
  162. package/dist/esm/examples/server/mcpServerOutputSchema.js.map +1 -1
  163. package/dist/esm/examples/server/simpleSseServer.js +1 -1
  164. package/dist/esm/examples/server/simpleSseServer.js.map +1 -1
  165. package/dist/esm/examples/server/simpleStatelessStreamableHttp.js +1 -1
  166. package/dist/esm/examples/server/simpleStatelessStreamableHttp.js.map +1 -1
  167. package/dist/esm/examples/server/simpleStreamableHttp.js +4 -3
  168. package/dist/esm/examples/server/simpleStreamableHttp.js.map +1 -1
  169. package/dist/esm/examples/server/sseAndStreamableHttpCompatibleServer.js +1 -1
  170. package/dist/esm/examples/server/sseAndStreamableHttpCompatibleServer.js.map +1 -1
  171. package/dist/esm/examples/server/toolWithSampleServer.js +6 -7
  172. package/dist/esm/examples/server/toolWithSampleServer.js.map +1 -1
  173. package/dist/esm/server/auth/handlers/authorize.js +1 -1
  174. package/dist/esm/server/auth/handlers/authorize.js.map +1 -1
  175. package/dist/esm/server/auth/handlers/token.js +1 -1
  176. package/dist/esm/server/auth/handlers/token.js.map +1 -1
  177. package/dist/esm/server/auth/middleware/bearerAuth.d.ts.map +1 -1
  178. package/dist/esm/server/auth/middleware/bearerAuth.js +13 -8
  179. package/dist/esm/server/auth/middleware/bearerAuth.js.map +1 -1
  180. package/dist/esm/server/auth/middleware/clientAuth.js +1 -1
  181. package/dist/esm/server/auth/middleware/clientAuth.js.map +1 -1
  182. package/dist/esm/server/auth/router.js +1 -1
  183. package/dist/esm/server/auth/router.js.map +1 -1
  184. package/dist/esm/server/completable.d.ts +30 -16
  185. package/dist/esm/server/completable.d.ts.map +1 -1
  186. package/dist/esm/server/completable.js +34 -53
  187. package/dist/esm/server/completable.js.map +1 -1
  188. package/dist/esm/server/index.d.ts +213 -71
  189. package/dist/esm/server/index.d.ts.map +1 -1
  190. package/dist/esm/server/index.js +61 -16
  191. package/dist/esm/server/index.js.map +1 -1
  192. package/dist/esm/server/mcp.d.ts +14 -16
  193. package/dist/esm/server/mcp.d.ts.map +1 -1
  194. package/dist/esm/server/mcp.js +107 -43
  195. package/dist/esm/server/mcp.js.map +1 -1
  196. package/dist/esm/server/zod-compat.d.ts +82 -0
  197. package/dist/esm/server/zod-compat.d.ts.map +1 -0
  198. package/dist/esm/server/zod-compat.js +217 -0
  199. package/dist/esm/server/zod-compat.js.map +1 -0
  200. package/dist/esm/server/zod-json-schema-compat.d.ts +12 -0
  201. package/dist/esm/server/zod-json-schema-compat.d.ts.map +1 -0
  202. package/dist/esm/server/zod-json-schema-compat.js +52 -0
  203. package/dist/esm/server/zod-json-schema-compat.js.map +1 -0
  204. package/dist/esm/shared/auth.d.ts +116 -502
  205. package/dist/esm/shared/auth.d.ts.map +1 -1
  206. package/dist/esm/shared/auth.js +17 -19
  207. package/dist/esm/shared/auth.js.map +1 -1
  208. package/dist/esm/shared/metadataUtils.d.ts +5 -1
  209. package/dist/esm/shared/metadataUtils.d.ts.map +1 -1
  210. package/dist/esm/shared/metadataUtils.js +2 -5
  211. package/dist/esm/shared/metadataUtils.js.map +1 -1
  212. package/dist/esm/shared/protocol.d.ts +7 -10
  213. package/dist/esm/shared/protocol.d.ts.map +1 -1
  214. package/dist/esm/shared/protocol.js +39 -16
  215. package/dist/esm/shared/protocol.js.map +1 -1
  216. package/dist/esm/shared/toolNameValidation.d.ts +31 -0
  217. package/dist/esm/shared/toolNameValidation.d.ts.map +1 -0
  218. package/dist/esm/shared/toolNameValidation.js +92 -0
  219. package/dist/esm/shared/toolNameValidation.js.map +1 -0
  220. package/dist/esm/shared/transport.d.ts +15 -1
  221. package/dist/esm/shared/transport.d.ts.map +1 -1
  222. package/dist/esm/shared/transport.js +38 -1
  223. package/dist/esm/shared/transport.js.map +1 -1
  224. package/dist/esm/shared/zodTestMatrix.d.ts +16 -0
  225. package/dist/esm/shared/zodTestMatrix.d.ts.map +1 -0
  226. package/dist/esm/shared/zodTestMatrix.js +17 -0
  227. package/dist/esm/shared/zodTestMatrix.js.map +1 -0
  228. package/dist/esm/spec.types.d.ts +823 -261
  229. package/dist/esm/spec.types.d.ts.map +1 -1
  230. package/dist/esm/spec.types.js +4 -7
  231. package/dist/esm/spec.types.js.map +1 -1
  232. package/dist/esm/types.d.ts +3828 -59205
  233. package/dist/esm/types.d.ts.map +1 -1
  234. package/dist/esm/types.js +664 -360
  235. package/dist/esm/types.js.map +1 -1
  236. package/package.json +13 -12
  237. package/dist/cjs/examples/server/elicitationExample.d.ts +0 -2
  238. package/dist/cjs/examples/server/elicitationExample.d.ts.map +0 -1
  239. package/dist/cjs/examples/server/elicitationExample.js.map +0 -1
  240. package/dist/esm/examples/server/elicitationExample.d.ts +0 -2
  241. package/dist/esm/examples/server/elicitationExample.d.ts.map +0 -1
  242. package/dist/esm/examples/server/elicitationExample.js.map +0 -1
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Protocol = exports.DEFAULT_REQUEST_TIMEOUT_MSEC = void 0;
4
4
  exports.mergeCapabilities = mergeCapabilities;
5
+ const zod_compat_js_1 = require("../server/zod-compat.js");
5
6
  const types_js_1 = require("../types.js");
7
+ const zod_json_schema_compat_js_1 = require("../server/zod-json-schema-compat.js");
6
8
  /**
7
9
  * The default request timeout, in miliseconds.
8
10
  */
@@ -50,7 +52,7 @@ class Protocol {
50
52
  const totalElapsed = Date.now() - info.startTime;
51
53
  if (info.maxTotalTimeout && totalElapsed >= info.maxTotalTimeout) {
52
54
  this._timeoutInfo.delete(messageId);
53
- throw new types_js_1.McpError(types_js_1.ErrorCode.RequestTimeout, 'Maximum total timeout exceeded', {
55
+ throw types_js_1.McpError.fromError(types_js_1.ErrorCode.RequestTimeout, 'Maximum total timeout exceeded', {
54
56
  maxTotalTimeout: info.maxTotalTimeout,
55
57
  totalElapsed
56
58
  });
@@ -110,7 +112,7 @@ class Protocol {
110
112
  this._pendingDebouncedNotifications.clear();
111
113
  this._transport = undefined;
112
114
  (_a = this.onclose) === null || _a === void 0 ? void 0 : _a.call(this);
113
- const error = new types_js_1.McpError(types_js_1.ErrorCode.ConnectionClosed, 'Connection closed');
115
+ const error = types_js_1.McpError.fromError(types_js_1.ErrorCode.ConnectionClosed, 'Connection closed');
114
116
  for (const handler of responseHandlers.values()) {
115
117
  handler(error);
116
118
  }
@@ -181,7 +183,8 @@ class Protocol {
181
183
  id: request.id,
182
184
  error: {
183
185
  code: Number.isSafeInteger(error['code']) ? error['code'] : types_js_1.ErrorCode.InternalError,
184
- message: (_a = error.message) !== null && _a !== void 0 ? _a : 'Internal error'
186
+ message: (_a = error.message) !== null && _a !== void 0 ? _a : 'Internal error',
187
+ ...(error['data'] !== undefined && { data: error['data'] })
185
188
  }
186
189
  });
187
190
  })
@@ -225,7 +228,7 @@ class Protocol {
225
228
  handler(response);
226
229
  }
227
230
  else {
228
- const error = new types_js_1.McpError(response.error.code, response.error.message, response.error.data);
231
+ const error = types_js_1.McpError.fromError(response.error.code, response.error.message, response.error.data);
229
232
  handler(error);
230
233
  }
231
234
  }
@@ -296,8 +299,14 @@ class Protocol {
296
299
  return reject(response);
297
300
  }
298
301
  try {
299
- const result = resultSchema.parse(response.result);
300
- resolve(result);
302
+ const parseResult = (0, zod_compat_js_1.safeParse)(resultSchema, response.result);
303
+ if (!parseResult.success) {
304
+ // Type guard: if success is false, error is guaranteed to exist
305
+ reject(parseResult.error);
306
+ }
307
+ else {
308
+ resolve(parseResult.data);
309
+ }
301
310
  }
302
311
  catch (error) {
303
312
  reject(error);
@@ -308,7 +317,7 @@ class Protocol {
308
317
  cancel((_a = options === null || options === void 0 ? void 0 : options.signal) === null || _a === void 0 ? void 0 : _a.reason);
309
318
  });
310
319
  const timeout = (_e = options === null || options === void 0 ? void 0 : options.timeout) !== null && _e !== void 0 ? _e : exports.DEFAULT_REQUEST_TIMEOUT_MSEC;
311
- const timeoutHandler = () => cancel(new types_js_1.McpError(types_js_1.ErrorCode.RequestTimeout, 'Request timed out', { timeout }));
320
+ const timeoutHandler = () => cancel(types_js_1.McpError.fromError(types_js_1.ErrorCode.RequestTimeout, 'Request timed out', { timeout }));
312
321
  this._setupTimeout(messageId, timeout, options === null || options === void 0 ? void 0 : options.maxTotalTimeout, timeoutHandler, (_f = options === null || options === void 0 ? void 0 : options.resetTimeoutOnProgress) !== null && _f !== void 0 ? _f : false);
313
322
  this._transport.send(jsonrpcRequest, { relatedRequestId, resumptionToken, onresumptiontoken }).catch(error => {
314
323
  this._cleanupTimeout(messageId);
@@ -369,10 +378,11 @@ class Protocol {
369
378
  * Note that this will replace any previous request handler for the same method.
370
379
  */
371
380
  setRequestHandler(requestSchema, handler) {
372
- const method = requestSchema.shape.method.value;
381
+ const method = (0, zod_json_schema_compat_js_1.getMethodLiteral)(requestSchema);
373
382
  this.assertRequestHandlerCapability(method);
374
383
  this._requestHandlers.set(method, (request, extra) => {
375
- return Promise.resolve(handler(requestSchema.parse(request), extra));
384
+ const parsed = (0, zod_json_schema_compat_js_1.parseWithCompat)(requestSchema, request);
385
+ return Promise.resolve(handler(parsed, extra));
376
386
  });
377
387
  }
378
388
  /**
@@ -395,7 +405,11 @@ class Protocol {
395
405
  * Note that this will replace any previous notification handler for the same method.
396
406
  */
397
407
  setNotificationHandler(notificationSchema, handler) {
398
- this._notificationHandlers.set(notificationSchema.shape.method.value, notification => Promise.resolve(handler(notificationSchema.parse(notification))));
408
+ const method = (0, zod_json_schema_compat_js_1.getMethodLiteral)(notificationSchema);
409
+ this._notificationHandlers.set(method, notification => {
410
+ const parsed = (0, zod_json_schema_compat_js_1.parseWithCompat)(notificationSchema, notification);
411
+ return Promise.resolve(handler(parsed));
412
+ });
399
413
  }
400
414
  /**
401
415
  * Removes the notification handler for the given method.
@@ -405,15 +419,24 @@ class Protocol {
405
419
  }
406
420
  }
407
421
  exports.Protocol = Protocol;
422
+ function isPlainObject(value) {
423
+ return value !== null && typeof value === 'object' && !Array.isArray(value);
424
+ }
408
425
  function mergeCapabilities(base, additional) {
409
- return Object.entries(additional).reduce((acc, [key, value]) => {
410
- if (value && typeof value === 'object') {
411
- acc[key] = acc[key] ? { ...acc[key], ...value } : value;
426
+ const result = { ...base };
427
+ for (const key in additional) {
428
+ const k = key;
429
+ const addValue = additional[k];
430
+ if (addValue === undefined)
431
+ continue;
432
+ const baseValue = result[k];
433
+ if (isPlainObject(baseValue) && isPlainObject(addValue)) {
434
+ result[k] = { ...baseValue, ...addValue };
412
435
  }
413
436
  else {
414
- acc[key] = value;
437
+ result[k] = addValue;
415
438
  }
416
- return acc;
417
- }, { ...base });
439
+ }
440
+ return result;
418
441
  }
419
442
  //# sourceMappingURL=protocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/shared/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/shared/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Tool name validation utilities according to SEP: Specify Format for Tool Names
3
+ *
4
+ * Tool names SHOULD be between 1 and 128 characters in length (inclusive).
5
+ * Tool names are case-sensitive.
6
+ * Allowed characters: uppercase and lowercase ASCII letters (A-Z, a-z), digits
7
+ * (0-9), underscore (_), dash (-), and dot (.).
8
+ * Tool names SHOULD NOT contain spaces, commas, or other special characters.
9
+ */
10
+ /**
11
+ * Validates a tool name according to the SEP specification
12
+ * @param name - The tool name to validate
13
+ * @returns An object containing validation result and any warnings
14
+ */
15
+ export declare function validateToolName(name: string): {
16
+ isValid: boolean;
17
+ warnings: string[];
18
+ };
19
+ /**
20
+ * Issues warnings for non-conforming tool names
21
+ * @param name - The tool name that triggered the warnings
22
+ * @param warnings - Array of warning messages
23
+ */
24
+ export declare function issueToolNameWarning(name: string, warnings: string[]): void;
25
+ /**
26
+ * Validates a tool name and issues warnings for non-conforming names
27
+ * @param name - The tool name to validate
28
+ * @returns true if the name is valid, false otherwise
29
+ */
30
+ export declare function validateAndWarnToolName(name: string): boolean;
31
+ //# sourceMappingURL=toolNameValidation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolNameValidation.d.ts","sourceRoot":"","sources":["../../../src/shared/toolNameValidation.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB,CA0DA;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAY3E;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAO7D"}
@@ -0,0 +1,97 @@
1
+ "use strict";
2
+ /**
3
+ * Tool name validation utilities according to SEP: Specify Format for Tool Names
4
+ *
5
+ * Tool names SHOULD be between 1 and 128 characters in length (inclusive).
6
+ * Tool names are case-sensitive.
7
+ * Allowed characters: uppercase and lowercase ASCII letters (A-Z, a-z), digits
8
+ * (0-9), underscore (_), dash (-), and dot (.).
9
+ * Tool names SHOULD NOT contain spaces, commas, or other special characters.
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.validateToolName = validateToolName;
13
+ exports.issueToolNameWarning = issueToolNameWarning;
14
+ exports.validateAndWarnToolName = validateAndWarnToolName;
15
+ /**
16
+ * Regular expression for valid tool names according to SEP-986 specification
17
+ */
18
+ const TOOL_NAME_REGEX = /^[A-Za-z0-9._-]{1,128}$/;
19
+ /**
20
+ * Validates a tool name according to the SEP specification
21
+ * @param name - The tool name to validate
22
+ * @returns An object containing validation result and any warnings
23
+ */
24
+ function validateToolName(name) {
25
+ const warnings = [];
26
+ // Check length
27
+ if (name.length === 0) {
28
+ return {
29
+ isValid: false,
30
+ warnings: ['Tool name cannot be empty']
31
+ };
32
+ }
33
+ if (name.length > 128) {
34
+ return {
35
+ isValid: false,
36
+ warnings: [`Tool name exceeds maximum length of 128 characters (current: ${name.length})`]
37
+ };
38
+ }
39
+ // Check for specific problematic patterns (these are warnings, not validation failures)
40
+ if (name.includes(' ')) {
41
+ warnings.push('Tool name contains spaces, which may cause parsing issues');
42
+ }
43
+ if (name.includes(',')) {
44
+ warnings.push('Tool name contains commas, which may cause parsing issues');
45
+ }
46
+ // Check for potentially confusing patterns (leading/trailing dashes, dots, slashes)
47
+ if (name.startsWith('-') || name.endsWith('-')) {
48
+ warnings.push('Tool name starts or ends with a dash, which may cause parsing issues in some contexts');
49
+ }
50
+ if (name.startsWith('.') || name.endsWith('.')) {
51
+ warnings.push('Tool name starts or ends with a dot, which may cause parsing issues in some contexts');
52
+ }
53
+ // Check for invalid characters
54
+ if (!TOOL_NAME_REGEX.test(name)) {
55
+ const invalidChars = name
56
+ .split('')
57
+ .filter(char => !/[A-Za-z0-9._-]/.test(char))
58
+ .filter((char, index, arr) => arr.indexOf(char) === index); // Remove duplicates
59
+ warnings.push(`Tool name contains invalid characters: ${invalidChars.map(c => `"${c}"`).join(', ')}`, 'Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)');
60
+ return {
61
+ isValid: false,
62
+ warnings
63
+ };
64
+ }
65
+ return {
66
+ isValid: true,
67
+ warnings
68
+ };
69
+ }
70
+ /**
71
+ * Issues warnings for non-conforming tool names
72
+ * @param name - The tool name that triggered the warnings
73
+ * @param warnings - Array of warning messages
74
+ */
75
+ function issueToolNameWarning(name, warnings) {
76
+ if (warnings.length > 0) {
77
+ console.warn(`Tool name validation warning for "${name}":`);
78
+ for (const warning of warnings) {
79
+ console.warn(` - ${warning}`);
80
+ }
81
+ console.warn('Tool registration will proceed, but this may cause compatibility issues.');
82
+ console.warn('Consider updating the tool name to conform to the MCP tool naming standard.');
83
+ console.warn('See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.');
84
+ }
85
+ }
86
+ /**
87
+ * Validates a tool name and issues warnings for non-conforming names
88
+ * @param name - The tool name to validate
89
+ * @returns true if the name is valid, false otherwise
90
+ */
91
+ function validateAndWarnToolName(name) {
92
+ const result = validateToolName(name);
93
+ // Always issue warnings for any validation issues (both invalid names and warnings)
94
+ issueToolNameWarning(name, result.warnings);
95
+ return result.isValid;
96
+ }
97
+ //# sourceMappingURL=toolNameValidation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolNameValidation.js","sourceRoot":"","sources":["../../../src/shared/toolNameValidation.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,19 @@
1
1
  import { JSONRPCMessage, MessageExtraInfo, RequestId } from '../types.js';
2
2
  export type FetchLike = (url: string | URL, init?: RequestInit) => Promise<Response>;
3
+ /**
4
+ * Normalizes HeadersInit to a plain Record<string, string> for manipulation.
5
+ * Handles Headers objects, arrays of tuples, and plain objects.
6
+ */
7
+ export declare function normalizeHeaders(headers: HeadersInit | undefined): Record<string, string>;
8
+ /**
9
+ * Creates a fetch function that includes base RequestInit options.
10
+ * This ensures requests inherit settings like credentials, mode, headers, etc. from the base init.
11
+ *
12
+ * @param baseFetch - The base fetch function to wrap (defaults to global fetch)
13
+ * @param baseInit - The base RequestInit to merge with each request
14
+ * @returns A wrapped fetch function that merges base options with call-specific options
15
+ */
16
+ export declare function createFetchWithInit(baseFetch?: FetchLike, baseInit?: RequestInit): FetchLike;
3
17
  /**
4
18
  * Options for sending a JSON-RPC message.
5
19
  */
@@ -62,7 +76,7 @@ export interface Transport {
62
76
  *
63
77
  * The requestInfo can be used to get the original request information (headers, etc.)
64
78
  */
65
- onmessage?: (message: JSONRPCMessage, extra?: MessageExtraInfo) => void;
79
+ onmessage?: <T extends JSONRPCMessage>(message: T, extra?: MessageExtraInfo) => void;
66
80
  /**
67
81
  * The session ID generated for this connection.
68
82
  */
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/shared/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE1E,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAErF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B;;OAEG;IACH,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAE7B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C,CAAC;AACF;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB;;;;;;OAMG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7E;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAExE;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/shared/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE1E,MAAM,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAErF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYzF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,GAAE,SAAiB,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,SAAS,CAenG;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IAC/B;;OAEG;IACH,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAE7B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C,CAAC;AACF;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB;;;;;;OAMG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7E;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAErB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAEjC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,cAAc,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAErF;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD"}
@@ -1,3 +1,43 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeHeaders = normalizeHeaders;
4
+ exports.createFetchWithInit = createFetchWithInit;
5
+ /**
6
+ * Normalizes HeadersInit to a plain Record<string, string> for manipulation.
7
+ * Handles Headers objects, arrays of tuples, and plain objects.
8
+ */
9
+ function normalizeHeaders(headers) {
10
+ if (!headers)
11
+ return {};
12
+ if (headers instanceof Headers) {
13
+ return Object.fromEntries(headers.entries());
14
+ }
15
+ if (Array.isArray(headers)) {
16
+ return Object.fromEntries(headers);
17
+ }
18
+ return { ...headers };
19
+ }
20
+ /**
21
+ * Creates a fetch function that includes base RequestInit options.
22
+ * This ensures requests inherit settings like credentials, mode, headers, etc. from the base init.
23
+ *
24
+ * @param baseFetch - The base fetch function to wrap (defaults to global fetch)
25
+ * @param baseInit - The base RequestInit to merge with each request
26
+ * @returns A wrapped fetch function that merges base options with call-specific options
27
+ */
28
+ function createFetchWithInit(baseFetch = fetch, baseInit) {
29
+ if (!baseInit) {
30
+ return baseFetch;
31
+ }
32
+ // Return a wrapped fetch that merges base RequestInit with call-specific init
33
+ return async (url, init) => {
34
+ const mergedInit = {
35
+ ...baseInit,
36
+ ...init,
37
+ // Headers need special handling - merge instead of replace
38
+ headers: (init === null || init === void 0 ? void 0 : init.headers) ? { ...normalizeHeaders(baseInit.headers), ...normalizeHeaders(init.headers) } : baseInit.headers
39
+ };
40
+ return baseFetch(url, mergedInit);
41
+ };
42
+ }
3
43
  //# sourceMappingURL=transport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/shared/transport.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/shared/transport.ts"],"names":[],"mappings":";;AAQA,4CAYC;AAUD,kDAeC;AAzCD;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,OAAgC;IAC7D,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAExB,IAAI,OAAO,YAAY,OAAO,EAAE,CAAC;QAC7B,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,EAAE,GAAI,OAAkC,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CAAC,YAAuB,KAAK,EAAE,QAAsB;IACpF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,8EAA8E;IAC9E,OAAO,KAAK,EAAE,GAAiB,EAAE,IAAkB,EAAqB,EAAE;QACtE,MAAM,UAAU,GAAgB;YAC5B,GAAG,QAAQ;YACX,GAAG,IAAI;YACP,2DAA2D;YAC3D,OAAO,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAC,CAAC,CAAC,EAAE,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO;SAC3H,CAAC;QACF,OAAO,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,16 @@
1
+ import * as z3 from 'zod/v3';
2
+ import * as z4 from 'zod/v4';
3
+ export type ZNamespace = typeof z3 & typeof z4;
4
+ export declare const zodTestMatrix: readonly [{
5
+ readonly zodVersionLabel: "Zod v3";
6
+ readonly z: ZNamespace;
7
+ readonly isV3: true;
8
+ readonly isV4: false;
9
+ }, {
10
+ readonly zodVersionLabel: "Zod v4";
11
+ readonly z: ZNamespace;
12
+ readonly isV3: false;
13
+ readonly isV4: true;
14
+ }];
15
+ export type ZodMatrixEntry = (typeof zodTestMatrix)[number];
16
+ //# sourceMappingURL=zodTestMatrix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zodTestMatrix.d.ts","sourceRoot":"","sources":["../../../src/shared/zodTestMatrix.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,QAAQ,CAAC;AAG7B,MAAM,MAAM,UAAU,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;AAE/C,eAAO,MAAM,aAAa;;gBAGT,UAAU;;;;;gBAMV,UAAU;;;EAIjB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.zodTestMatrix = void 0;
27
+ const z3 = __importStar(require("zod/v3"));
28
+ const z4 = __importStar(require("zod/v4"));
29
+ exports.zodTestMatrix = [
30
+ {
31
+ zodVersionLabel: 'Zod v3',
32
+ z: z3,
33
+ isV3: true,
34
+ isV4: false
35
+ },
36
+ {
37
+ zodVersionLabel: 'Zod v4',
38
+ z: z4,
39
+ isV3: false,
40
+ isV4: true
41
+ }
42
+ ];
43
+ //# sourceMappingURL=zodTestMatrix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zodTestMatrix.js","sourceRoot":"","sources":["../../../src/shared/zodTestMatrix.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAC7B,2CAA6B;AAKhB,QAAA,aAAa,GAAG;IACzB;QACI,eAAe,EAAE,QAAQ;QACzB,CAAC,EAAE,EAAgB;QACnB,IAAI,EAAE,IAAa;QACnB,IAAI,EAAE,KAAc;KACvB;IACD;QACI,eAAe,EAAE,QAAQ;QACzB,CAAC,EAAE,EAAgB;QACnB,IAAI,EAAE,KAAc;QACpB,IAAI,EAAE,IAAa;KACtB;CACK,CAAC"}