@modelcontextprotocol/sdk 1.22.0 → 1.23.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 (258) 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 +122 -662
  7. package/dist/cjs/client/index.d.ts.map +1 -1
  8. package/dist/cjs/client/index.js +72 -15
  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 +14 -2
  15. package/dist/cjs/client/streamableHttp.d.ts.map +1 -1
  16. package/dist/cjs/client/streamableHttp.js +79 -19
  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 +10 -5
  29. package/dist/cjs/examples/client/simpleStreamableHttp.js.map +1 -1
  30. package/dist/cjs/examples/client/ssePollingClient.d.ts +2 -0
  31. package/dist/cjs/examples/client/ssePollingClient.d.ts.map +1 -0
  32. package/dist/cjs/examples/client/ssePollingClient.js +95 -0
  33. package/dist/cjs/examples/client/ssePollingClient.js.map +1 -0
  34. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.d.ts +4 -4
  35. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.d.ts.map +1 -1
  36. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.js +16 -0
  37. package/dist/cjs/examples/server/demoInMemoryOAuthProvider.js.map +1 -1
  38. package/dist/cjs/examples/server/elicitationFormExample.d.ts +2 -0
  39. package/dist/cjs/examples/server/elicitationFormExample.d.ts.map +1 -0
  40. package/dist/cjs/examples/server/{elicitationExample.js → elicitationFormExample.js} +14 -8
  41. package/dist/cjs/examples/server/elicitationFormExample.js.map +1 -0
  42. package/dist/cjs/examples/server/elicitationUrlExample.d.ts +2 -0
  43. package/dist/cjs/examples/server/elicitationUrlExample.d.ts.map +1 -0
  44. package/dist/cjs/examples/server/elicitationUrlExample.js +655 -0
  45. package/dist/cjs/examples/server/elicitationUrlExample.js.map +1 -0
  46. package/dist/cjs/examples/server/jsonResponseStreamableHttp.js +26 -3
  47. package/dist/cjs/examples/server/jsonResponseStreamableHttp.js.map +1 -1
  48. package/dist/cjs/examples/server/mcpServerOutputSchema.js +34 -11
  49. package/dist/cjs/examples/server/mcpServerOutputSchema.js.map +1 -1
  50. package/dist/cjs/examples/server/simpleSseServer.js +26 -3
  51. package/dist/cjs/examples/server/simpleSseServer.js.map +1 -1
  52. package/dist/cjs/examples/server/simpleStatelessStreamableHttp.js +27 -4
  53. package/dist/cjs/examples/server/simpleStatelessStreamableHttp.js.map +1 -1
  54. package/dist/cjs/examples/server/simpleStreamableHttp.js +34 -10
  55. package/dist/cjs/examples/server/simpleStreamableHttp.js.map +1 -1
  56. package/dist/cjs/examples/server/sseAndStreamableHttpCompatibleServer.js +26 -3
  57. package/dist/cjs/examples/server/sseAndStreamableHttpCompatibleServer.js.map +1 -1
  58. package/dist/cjs/examples/server/ssePollingExample.d.ts +2 -0
  59. package/dist/cjs/examples/server/ssePollingExample.d.ts.map +1 -0
  60. package/dist/cjs/examples/server/ssePollingExample.js +116 -0
  61. package/dist/cjs/examples/server/ssePollingExample.js.map +1 -0
  62. package/dist/cjs/examples/server/toolWithSampleServer.js +30 -8
  63. package/dist/cjs/examples/server/toolWithSampleServer.js.map +1 -1
  64. package/dist/cjs/server/auth/handlers/authorize.js +34 -11
  65. package/dist/cjs/server/auth/handlers/authorize.js.map +1 -1
  66. package/dist/cjs/server/auth/handlers/token.js +35 -12
  67. package/dist/cjs/server/auth/handlers/token.js.map +1 -1
  68. package/dist/cjs/server/auth/middleware/bearerAuth.d.ts.map +1 -1
  69. package/dist/cjs/server/auth/middleware/bearerAuth.js +13 -8
  70. package/dist/cjs/server/auth/middleware/bearerAuth.js.map +1 -1
  71. package/dist/cjs/server/auth/middleware/clientAuth.js +27 -4
  72. package/dist/cjs/server/auth/middleware/clientAuth.js.map +1 -1
  73. package/dist/cjs/server/auth/router.js +1 -1
  74. package/dist/cjs/server/auth/router.js.map +1 -1
  75. package/dist/cjs/server/completable.d.ts +30 -16
  76. package/dist/cjs/server/completable.d.ts.map +1 -1
  77. package/dist/cjs/server/completable.js +38 -55
  78. package/dist/cjs/server/completable.js.map +1 -1
  79. package/dist/cjs/server/index.d.ts +176 -50
  80. package/dist/cjs/server/index.d.ts.map +1 -1
  81. package/dist/cjs/server/index.js +99 -13
  82. package/dist/cjs/server/index.js.map +1 -1
  83. package/dist/cjs/server/mcp.d.ts +14 -16
  84. package/dist/cjs/server/mcp.d.ts.map +1 -1
  85. package/dist/cjs/server/mcp.js +83 -40
  86. package/dist/cjs/server/mcp.js.map +1 -1
  87. package/dist/cjs/server/streamableHttp.d.ts +27 -0
  88. package/dist/cjs/server/streamableHttp.d.ts.map +1 -1
  89. package/dist/cjs/server/streamableHttp.js +70 -5
  90. package/dist/cjs/server/streamableHttp.js.map +1 -1
  91. package/dist/cjs/server/zod-compat.d.ts +82 -0
  92. package/dist/cjs/server/zod-compat.d.ts.map +1 -0
  93. package/dist/cjs/server/zod-compat.js +252 -0
  94. package/dist/cjs/server/zod-compat.js.map +1 -0
  95. package/dist/cjs/server/zod-json-schema-compat.d.ts +12 -0
  96. package/dist/cjs/server/zod-json-schema-compat.d.ts.map +1 -0
  97. package/dist/cjs/server/zod-json-schema-compat.js +80 -0
  98. package/dist/cjs/server/zod-json-schema-compat.js.map +1 -0
  99. package/dist/cjs/shared/auth.d.ts +116 -502
  100. package/dist/cjs/shared/auth.d.ts.map +1 -1
  101. package/dist/cjs/shared/auth.js +133 -112
  102. package/dist/cjs/shared/auth.js.map +1 -1
  103. package/dist/cjs/shared/protocol.d.ts +5 -9
  104. package/dist/cjs/shared/protocol.d.ts.map +1 -1
  105. package/dist/cjs/shared/protocol.js +24 -10
  106. package/dist/cjs/shared/protocol.js.map +1 -1
  107. package/dist/cjs/shared/transport.d.ts +14 -0
  108. package/dist/cjs/shared/transport.d.ts.map +1 -1
  109. package/dist/cjs/shared/transport.js +40 -0
  110. package/dist/cjs/shared/transport.js.map +1 -1
  111. package/dist/cjs/shared/zodTestMatrix.d.ts +16 -0
  112. package/dist/cjs/shared/zodTestMatrix.d.ts.map +1 -0
  113. package/dist/cjs/shared/zodTestMatrix.js +43 -0
  114. package/dist/cjs/shared/zodTestMatrix.js.map +1 -0
  115. package/dist/cjs/spec.types.d.ts +393 -70
  116. package/dist/cjs/spec.types.d.ts.map +1 -1
  117. package/dist/cjs/spec.types.js +5 -7
  118. package/dist/cjs/spec.types.js.map +1 -1
  119. package/dist/cjs/types.d.ts +3580 -23866
  120. package/dist/cjs/types.d.ts.map +1 -1
  121. package/dist/cjs/types.js +574 -340
  122. package/dist/cjs/types.js.map +1 -1
  123. package/dist/cjs/validation/cfworker-provider.d.ts +0 -1
  124. package/dist/cjs/validation/cfworker-provider.d.ts.map +1 -1
  125. package/dist/cjs/validation/cfworker-provider.js +0 -1
  126. package/dist/cjs/validation/cfworker-provider.js.map +1 -1
  127. package/dist/esm/client/auth.d.ts +11 -1
  128. package/dist/esm/client/auth.d.ts.map +1 -1
  129. package/dist/esm/client/auth.js +71 -20
  130. package/dist/esm/client/auth.js.map +1 -1
  131. package/dist/esm/client/index.d.ts +122 -662
  132. package/dist/esm/client/index.d.ts.map +1 -1
  133. package/dist/esm/client/index.js +71 -15
  134. package/dist/esm/client/index.js.map +1 -1
  135. package/dist/esm/client/sse.d.ts +1 -0
  136. package/dist/esm/client/sse.d.ts.map +1 -1
  137. package/dist/esm/client/sse.js +5 -3
  138. package/dist/esm/client/sse.js.map +1 -1
  139. package/dist/esm/client/streamableHttp.d.ts +14 -2
  140. package/dist/esm/client/streamableHttp.d.ts.map +1 -1
  141. package/dist/esm/client/streamableHttp.js +79 -19
  142. package/dist/esm/client/streamableHttp.js.map +1 -1
  143. package/dist/esm/examples/client/elicitationUrlExample.d.ts +2 -0
  144. package/dist/esm/examples/client/elicitationUrlExample.d.ts.map +1 -0
  145. package/dist/esm/examples/client/elicitationUrlExample.js +691 -0
  146. package/dist/esm/examples/client/elicitationUrlExample.js.map +1 -0
  147. package/dist/esm/examples/client/simpleOAuthClient.js +12 -51
  148. package/dist/esm/examples/client/simpleOAuthClient.js.map +1 -1
  149. package/dist/esm/examples/client/simpleOAuthClientProvider.d.ts +26 -0
  150. package/dist/esm/examples/client/simpleOAuthClientProvider.d.ts.map +1 -0
  151. package/dist/esm/examples/client/simpleOAuthClientProvider.js +47 -0
  152. package/dist/esm/examples/client/simpleOAuthClientProvider.js.map +1 -0
  153. package/dist/esm/examples/client/simpleStreamableHttp.js +11 -6
  154. package/dist/esm/examples/client/simpleStreamableHttp.js.map +1 -1
  155. package/dist/esm/examples/client/ssePollingClient.d.ts +2 -0
  156. package/dist/esm/examples/client/ssePollingClient.d.ts.map +1 -0
  157. package/dist/esm/examples/client/ssePollingClient.js +93 -0
  158. package/dist/esm/examples/client/ssePollingClient.js.map +1 -0
  159. package/dist/esm/examples/server/demoInMemoryOAuthProvider.d.ts +4 -4
  160. package/dist/esm/examples/server/demoInMemoryOAuthProvider.d.ts.map +1 -1
  161. package/dist/esm/examples/server/demoInMemoryOAuthProvider.js +16 -0
  162. package/dist/esm/examples/server/demoInMemoryOAuthProvider.js.map +1 -1
  163. package/dist/esm/examples/server/elicitationFormExample.d.ts +2 -0
  164. package/dist/esm/examples/server/elicitationFormExample.d.ts.map +1 -0
  165. package/dist/esm/examples/server/{elicitationExample.js → elicitationFormExample.js} +14 -8
  166. package/dist/esm/examples/server/elicitationFormExample.js.map +1 -0
  167. package/dist/esm/examples/server/elicitationUrlExample.d.ts +2 -0
  168. package/dist/esm/examples/server/elicitationUrlExample.d.ts.map +1 -0
  169. package/dist/esm/examples/server/elicitationUrlExample.js +650 -0
  170. package/dist/esm/examples/server/elicitationUrlExample.js.map +1 -0
  171. package/dist/esm/examples/server/jsonResponseStreamableHttp.js +1 -1
  172. package/dist/esm/examples/server/jsonResponseStreamableHttp.js.map +1 -1
  173. package/dist/esm/examples/server/mcpServerOutputSchema.js +1 -1
  174. package/dist/esm/examples/server/mcpServerOutputSchema.js.map +1 -1
  175. package/dist/esm/examples/server/simpleSseServer.js +1 -1
  176. package/dist/esm/examples/server/simpleSseServer.js.map +1 -1
  177. package/dist/esm/examples/server/simpleStatelessStreamableHttp.js +1 -1
  178. package/dist/esm/examples/server/simpleStatelessStreamableHttp.js.map +1 -1
  179. package/dist/esm/examples/server/simpleStreamableHttp.js +4 -3
  180. package/dist/esm/examples/server/simpleStreamableHttp.js.map +1 -1
  181. package/dist/esm/examples/server/sseAndStreamableHttpCompatibleServer.js +1 -1
  182. package/dist/esm/examples/server/sseAndStreamableHttpCompatibleServer.js.map +1 -1
  183. package/dist/esm/examples/server/ssePollingExample.d.ts +2 -0
  184. package/dist/esm/examples/server/ssePollingExample.d.ts.map +1 -0
  185. package/dist/esm/examples/server/ssePollingExample.js +111 -0
  186. package/dist/esm/examples/server/ssePollingExample.js.map +1 -0
  187. package/dist/esm/examples/server/toolWithSampleServer.js +6 -7
  188. package/dist/esm/examples/server/toolWithSampleServer.js.map +1 -1
  189. package/dist/esm/server/auth/handlers/authorize.js +1 -1
  190. package/dist/esm/server/auth/handlers/authorize.js.map +1 -1
  191. package/dist/esm/server/auth/handlers/token.js +1 -1
  192. package/dist/esm/server/auth/handlers/token.js.map +1 -1
  193. package/dist/esm/server/auth/middleware/bearerAuth.d.ts.map +1 -1
  194. package/dist/esm/server/auth/middleware/bearerAuth.js +13 -8
  195. package/dist/esm/server/auth/middleware/bearerAuth.js.map +1 -1
  196. package/dist/esm/server/auth/middleware/clientAuth.js +1 -1
  197. package/dist/esm/server/auth/middleware/clientAuth.js.map +1 -1
  198. package/dist/esm/server/auth/router.js +1 -1
  199. package/dist/esm/server/auth/router.js.map +1 -1
  200. package/dist/esm/server/completable.d.ts +30 -16
  201. package/dist/esm/server/completable.d.ts.map +1 -1
  202. package/dist/esm/server/completable.js +34 -53
  203. package/dist/esm/server/completable.js.map +1 -1
  204. package/dist/esm/server/index.d.ts +176 -50
  205. package/dist/esm/server/index.d.ts.map +1 -1
  206. package/dist/esm/server/index.js +99 -13
  207. package/dist/esm/server/index.js.map +1 -1
  208. package/dist/esm/server/mcp.d.ts +14 -16
  209. package/dist/esm/server/mcp.d.ts.map +1 -1
  210. package/dist/esm/server/mcp.js +84 -41
  211. package/dist/esm/server/mcp.js.map +1 -1
  212. package/dist/esm/server/streamableHttp.d.ts +27 -0
  213. package/dist/esm/server/streamableHttp.d.ts.map +1 -1
  214. package/dist/esm/server/streamableHttp.js +70 -5
  215. package/dist/esm/server/streamableHttp.js.map +1 -1
  216. package/dist/esm/server/zod-compat.d.ts +82 -0
  217. package/dist/esm/server/zod-compat.d.ts.map +1 -0
  218. package/dist/esm/server/zod-compat.js +217 -0
  219. package/dist/esm/server/zod-compat.js.map +1 -0
  220. package/dist/esm/server/zod-json-schema-compat.d.ts +12 -0
  221. package/dist/esm/server/zod-json-schema-compat.d.ts.map +1 -0
  222. package/dist/esm/server/zod-json-schema-compat.js +52 -0
  223. package/dist/esm/server/zod-json-schema-compat.js.map +1 -0
  224. package/dist/esm/shared/auth.d.ts +116 -502
  225. package/dist/esm/shared/auth.d.ts.map +1 -1
  226. package/dist/esm/shared/auth.js +17 -19
  227. package/dist/esm/shared/auth.js.map +1 -1
  228. package/dist/esm/shared/protocol.d.ts +5 -9
  229. package/dist/esm/shared/protocol.d.ts.map +1 -1
  230. package/dist/esm/shared/protocol.js +24 -10
  231. package/dist/esm/shared/protocol.js.map +1 -1
  232. package/dist/esm/shared/transport.d.ts +14 -0
  233. package/dist/esm/shared/transport.d.ts.map +1 -1
  234. package/dist/esm/shared/transport.js +38 -1
  235. package/dist/esm/shared/transport.js.map +1 -1
  236. package/dist/esm/shared/zodTestMatrix.d.ts +16 -0
  237. package/dist/esm/shared/zodTestMatrix.d.ts.map +1 -0
  238. package/dist/esm/shared/zodTestMatrix.js +17 -0
  239. package/dist/esm/shared/zodTestMatrix.js.map +1 -0
  240. package/dist/esm/spec.types.d.ts +393 -70
  241. package/dist/esm/spec.types.d.ts.map +1 -1
  242. package/dist/esm/spec.types.js +4 -6
  243. package/dist/esm/spec.types.js.map +1 -1
  244. package/dist/esm/types.d.ts +3580 -23866
  245. package/dist/esm/types.d.ts.map +1 -1
  246. package/dist/esm/types.js +282 -72
  247. package/dist/esm/types.js.map +1 -1
  248. package/dist/esm/validation/cfworker-provider.d.ts +0 -1
  249. package/dist/esm/validation/cfworker-provider.d.ts.map +1 -1
  250. package/dist/esm/validation/cfworker-provider.js +0 -1
  251. package/dist/esm/validation/cfworker-provider.js.map +1 -1
  252. package/package.json +13 -12
  253. package/dist/cjs/examples/server/elicitationExample.d.ts +0 -2
  254. package/dist/cjs/examples/server/elicitationExample.d.ts.map +0 -1
  255. package/dist/cjs/examples/server/elicitationExample.js.map +0 -1
  256. package/dist/esm/examples/server/elicitationExample.d.ts +0 -2
  257. package/dist/esm/examples/server/elicitationExample.d.ts.map +0 -1
  258. package/dist/esm/examples/server/elicitationExample.js.map +0 -1
@@ -97,6 +97,7 @@ export class Server extends Protocol {
97
97
  }
98
98
  }
99
99
  assertNotificationCapability(method) {
100
+ var _a, _b;
100
101
  switch (method) {
101
102
  case 'notifications/message':
102
103
  if (!this._capabilities.logging) {
@@ -119,6 +120,11 @@ export class Server extends Protocol {
119
120
  throw new Error(`Server does not support notifying of prompt list changes (required for ${method})`);
120
121
  }
121
122
  break;
123
+ case 'notifications/elicitation/complete':
124
+ if (!((_b = (_a = this._clientCapabilities) === null || _a === void 0 ? void 0 : _a.elicitation) === null || _b === void 0 ? void 0 : _b.url)) {
125
+ throw new Error(`Client does not support URL elicitation (required for ${method})`);
126
+ }
127
+ break;
122
128
  case 'notifications/cancelled':
123
129
  // Cancellation notifications are always allowed
124
130
  break;
@@ -195,27 +201,107 @@ export class Server extends Protocol {
195
201
  return this.request({ method: 'ping' }, EmptyResultSchema);
196
202
  }
197
203
  async createMessage(params, options) {
204
+ var _a, _b;
205
+ // Capability check - only required when tools/toolChoice are provided
206
+ if (params.tools || params.toolChoice) {
207
+ if (!((_b = (_a = this._clientCapabilities) === null || _a === void 0 ? void 0 : _a.sampling) === null || _b === void 0 ? void 0 : _b.tools)) {
208
+ throw new Error('Client does not support sampling tools capability.');
209
+ }
210
+ }
211
+ // Message structure validation - always validate tool_use/tool_result pairs.
212
+ // These may appear even without tools/toolChoice in the current request when
213
+ // a previous sampling request returned tool_use and this is a follow-up with results.
214
+ if (params.messages.length > 0) {
215
+ const lastMessage = params.messages[params.messages.length - 1];
216
+ const lastContent = Array.isArray(lastMessage.content) ? lastMessage.content : [lastMessage.content];
217
+ const hasToolResults = lastContent.some(c => c.type === 'tool_result');
218
+ const previousMessage = params.messages.length > 1 ? params.messages[params.messages.length - 2] : undefined;
219
+ const previousContent = previousMessage
220
+ ? Array.isArray(previousMessage.content)
221
+ ? previousMessage.content
222
+ : [previousMessage.content]
223
+ : [];
224
+ const hasPreviousToolUse = previousContent.some(c => c.type === 'tool_use');
225
+ if (hasToolResults) {
226
+ if (lastContent.some(c => c.type !== 'tool_result')) {
227
+ throw new Error('The last message must contain only tool_result content if any is present');
228
+ }
229
+ if (!hasPreviousToolUse) {
230
+ throw new Error('tool_result blocks are not matching any tool_use from the previous message');
231
+ }
232
+ }
233
+ if (hasPreviousToolUse) {
234
+ const toolUseIds = new Set(previousContent.filter(c => c.type === 'tool_use').map(c => c.id));
235
+ const toolResultIds = new Set(lastContent.filter(c => c.type === 'tool_result').map(c => c.toolUseId));
236
+ if (toolUseIds.size !== toolResultIds.size || ![...toolUseIds].every(id => toolResultIds.has(id))) {
237
+ throw new Error('ids of tool_result blocks and tool_use blocks from previous message do not match');
238
+ }
239
+ }
240
+ }
198
241
  return this.request({ method: 'sampling/createMessage', params }, CreateMessageResultSchema, options);
199
242
  }
243
+ /**
244
+ * Creates an elicitation request for the given parameters.
245
+ * For backwards compatibility, `mode` may be omitted for form requests and will default to `'form'`.
246
+ * @param params The parameters for the elicitation request.
247
+ * @param options Optional request options.
248
+ * @returns The result of the elicitation request.
249
+ */
200
250
  async elicitInput(params, options) {
201
- const result = await this.request({ method: 'elicitation/create', params }, ElicitResultSchema, options);
202
- // Validate the response content against the requested schema if action is "accept"
203
- if (result.action === 'accept' && result.content && params.requestedSchema) {
204
- try {
205
- const validator = this._jsonSchemaValidator.getValidator(params.requestedSchema);
206
- const validationResult = validator(result.content);
207
- if (!validationResult.valid) {
208
- throw new McpError(ErrorCode.InvalidParams, `Elicitation response content does not match requested schema: ${validationResult.errorMessage}`);
251
+ var _a, _b, _c, _d, _e;
252
+ const mode = ((_a = params.mode) !== null && _a !== void 0 ? _a : 'form');
253
+ switch (mode) {
254
+ case 'url': {
255
+ if (!((_c = (_b = this._clientCapabilities) === null || _b === void 0 ? void 0 : _b.elicitation) === null || _c === void 0 ? void 0 : _c.url)) {
256
+ throw new Error('Client does not support url elicitation.');
209
257
  }
258
+ const urlParams = params;
259
+ return this.request({ method: 'elicitation/create', params: urlParams }, ElicitResultSchema, options);
210
260
  }
211
- catch (error) {
212
- if (error instanceof McpError) {
213
- throw error;
261
+ case 'form': {
262
+ if (!((_e = (_d = this._clientCapabilities) === null || _d === void 0 ? void 0 : _d.elicitation) === null || _e === void 0 ? void 0 : _e.form)) {
263
+ throw new Error('Client does not support form elicitation.');
214
264
  }
215
- throw new McpError(ErrorCode.InternalError, `Error validating elicitation response: ${error instanceof Error ? error.message : String(error)}`);
265
+ const formParams = params.mode === 'form' ? params : { ...params, mode: 'form' };
266
+ const result = await this.request({ method: 'elicitation/create', params: formParams }, ElicitResultSchema, options);
267
+ if (result.action === 'accept' && result.content && formParams.requestedSchema) {
268
+ try {
269
+ const validator = this._jsonSchemaValidator.getValidator(formParams.requestedSchema);
270
+ const validationResult = validator(result.content);
271
+ if (!validationResult.valid) {
272
+ throw new McpError(ErrorCode.InvalidParams, `Elicitation response content does not match requested schema: ${validationResult.errorMessage}`);
273
+ }
274
+ }
275
+ catch (error) {
276
+ if (error instanceof McpError) {
277
+ throw error;
278
+ }
279
+ throw new McpError(ErrorCode.InternalError, `Error validating elicitation response: ${error instanceof Error ? error.message : String(error)}`);
280
+ }
281
+ }
282
+ return result;
216
283
  }
217
284
  }
218
- return result;
285
+ }
286
+ /**
287
+ * Creates a reusable callback that, when invoked, will send a `notifications/elicitation/complete`
288
+ * notification for the specified elicitation ID.
289
+ *
290
+ * @param elicitationId The ID of the elicitation to mark as complete.
291
+ * @param options Optional notification options. Useful when the completion notification should be related to a prior request.
292
+ * @returns A function that emits the completion notification when awaited.
293
+ */
294
+ createElicitationCompletionNotifier(elicitationId, options) {
295
+ var _a, _b;
296
+ if (!((_b = (_a = this._clientCapabilities) === null || _a === void 0 ? void 0 : _a.elicitation) === null || _b === void 0 ? void 0 : _b.url)) {
297
+ throw new Error('Client does not support URL elicitation (required for notifications/elicitation/complete)');
298
+ }
299
+ return () => this.notification({
300
+ method: 'notifications/elicitation/complete',
301
+ params: {
302
+ elicitationId
303
+ }
304
+ }, options);
219
305
  }
220
306
  async listRoots(params, options) {
221
307
  return this.request({ method: 'roots/list', params }, ListRootsResultSchema, options);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAuE,MAAM,uBAAuB,CAAC;AACzI,OAAO,EAGH,yBAAyB,EAIzB,kBAAkB,EAClB,iBAAiB,EACjB,SAAS,EAET,6BAA6B,EAE7B,uBAAuB,EAEvB,uBAAuB,EAEvB,qBAAqB,EAErB,kBAAkB,EAElB,QAAQ,EASR,qBAAqB,EACrB,2BAA2B,EAG9B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AA8CvE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,OAAO,MAIX,SAAQ,QAA8F;IAYpG;;OAEG;IACH,YACY,WAA2B,EACnC,OAAuB;;QAEvB,KAAK,CAAC,OAAO,CAAC,CAAC;QAHP,gBAAW,GAAX,WAAW,CAAgB;QAyBvC,+BAA+B;QACvB,mBAAc,GAAG,IAAI,GAAG,EAAoC,CAAC;QAErE,uCAAuC;QACtB,uBAAkB,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAEhH,2FAA2F;QACnF,qBAAgB,GAAG,CAAC,KAAmB,EAAE,SAAkB,EAAW,EAAE;YAC5E,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACxD,OAAO,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACnH,CAAC,CAAC;QA/BE,IAAI,CAAC,aAAa,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,mCAAI,EAAE,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC;QAC3C,IAAI,CAAC,oBAAoB,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,mBAAmB,mCAAI,IAAI,sBAAsB,EAAE,CAAC;QAEzF,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QACxF,IAAI,CAAC,sBAAsB,CAAC,6BAA6B,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,aAAa,oDAAI,CAAA,EAAA,CAAC,CAAC;QAEzF,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;;gBACnE,MAAM,kBAAkB,GACpB,KAAK,CAAC,SAAS,KAAK,MAAA,KAAK,CAAC,WAAW,0CAAE,OAAO,CAAC,gBAAgB,CAAY,CAAA,IAAI,SAAS,CAAC;gBAC7F,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;gBACjC,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACxD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACtB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,kBAAkB,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;gBAClE,CAAC;gBACD,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAcD;;;;OAIG;IACI,oBAAoB,CAAC,YAAgC;QACxD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAClF,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC7E,CAAC;IAES,yBAAyB,CAAC,MAA0B;;QAC1D,QAAQ,MAAiC,EAAE,CAAC;YACxC,KAAK,wBAAwB;gBACzB,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,QAAQ,CAAA,EAAE,CAAC;oBACtC,MAAM,IAAI,KAAK,CAAC,kDAAkD,MAAM,GAAG,CAAC,CAAC;gBACjF,CAAC;gBACD,MAAM;YAEV,KAAK,oBAAoB;gBACrB,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,WAAW,CAAA,EAAE,CAAC;oBACzC,MAAM,IAAI,KAAK,CAAC,qDAAqD,MAAM,GAAG,CAAC,CAAC;gBACpF,CAAC;gBACD,MAAM;YAEV,KAAK,YAAY;gBACb,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,KAAK,CAAA,EAAE,CAAC;oBACnC,MAAM,IAAI,KAAK,CAAC,uDAAuD,MAAM,GAAG,CAAC,CAAC;gBACtF,CAAC;gBACD,MAAM;YAEV,KAAK,MAAM;gBACP,2CAA2C;gBAC3C,MAAM;QACd,CAAC;IACL,CAAC;IAES,4BAA4B,CAAC,MAAsD;;QACzF,QAAQ,MAAsC,EAAE,CAAC;YAC7C,KAAK,uBAAuB;gBACxB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,iDAAiD,MAAM,GAAG,CAAC,CAAC;gBAChF,CAAC;gBACD,MAAM;YAEV,KAAK,iCAAiC,CAAC;YACvC,KAAK,sCAAsC;gBACvC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;oBAChC,MAAM,IAAI,KAAK,CAAC,mEAAmE,MAAM,GAAG,CAAC,CAAC;gBAClG,CAAC;gBACD,MAAM;YAEV,KAAK,kCAAkC;gBACnC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;oBAC5B,MAAM,IAAI,KAAK,CAAC,wEAAwE,MAAM,GAAG,CAAC,CAAC;gBACvG,CAAC;gBACD,MAAM;YAEV,KAAK,oCAAoC;gBACrC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,0EAA0E,MAAM,GAAG,CAAC,CAAC;gBACzG,CAAC;gBACD,MAAM;YAEV,KAAK,oCAAoC;gBACrC,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,WAAW,0CAAE,GAAG,CAAA,EAAE,CAAC;oBAC9C,MAAM,IAAI,KAAK,CAAC,yDAAyD,MAAM,GAAG,CAAC,CAAC;gBACxF,CAAC;gBACD,MAAM;YAEV,KAAK,yBAAyB;gBAC1B,gDAAgD;gBAChD,MAAM;YAEV,KAAK,wBAAwB;gBACzB,4CAA4C;gBAC5C,MAAM;QACd,CAAC;IACL,CAAC;IAES,8BAA8B,CAAC,MAAc;QACnD,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,qBAAqB;gBACtB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;oBAClC,MAAM,IAAI,KAAK,CAAC,qDAAqD,MAAM,GAAG,CAAC,CAAC;gBACpF,CAAC;gBACD,MAAM;YAEV,KAAK,kBAAkB;gBACnB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,iDAAiD,MAAM,GAAG,CAAC,CAAC;gBAChF,CAAC;gBACD,MAAM;YAEV,KAAK,aAAa,CAAC;YACnB,KAAK,cAAc;gBACf,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,iDAAiD,MAAM,GAAG,CAAC,CAAC;gBAChF,CAAC;gBACD,MAAM;YAEV,KAAK,gBAAgB,CAAC;YACtB,KAAK,0BAA0B,CAAC;YAChC,KAAK,gBAAgB;gBACjB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;oBAChC,MAAM,IAAI,KAAK,CAAC,mDAAmD,MAAM,GAAG,CAAC,CAAC;gBAClF,CAAC;gBACD,MAAM;YAEV,KAAK,YAAY,CAAC;YAClB,KAAK,YAAY;gBACb,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;oBAC5B,MAAM,IAAI,KAAK,CAAC,+CAA+C,MAAM,GAAG,CAAC,CAAC;gBAC9E,CAAC;gBACD,MAAM;YAEV,KAAK,MAAM,CAAC;YACZ,KAAK,YAAY;gBACb,oDAAoD;gBACpD,MAAM;QACd,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,OAA0B;QAClD,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;QAExD,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QACvD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;QAEhD,MAAM,eAAe,GAAG,2BAA2B,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,uBAAuB,CAAC;QAE5H,OAAO;YACH,eAAe;YACf,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,UAAU,EAAE,IAAI,CAAC,WAAW;YAC5B,GAAG,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;SAClE,CAAC;IACN,CAAC;IAED;;OAEG;IACH,qBAAqB;QACjB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAEO,eAAe;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,iBAAiB,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAsC,EAAE,OAAwB;;QAChF,sEAAsE;QACtE,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACpC,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,QAAQ,0CAAE,KAAK,CAAA,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;YAC1E,CAAC;QACL,CAAC;QAED,6EAA6E;QAC7E,6EAA6E;QAC7E,sFAAsF;QACtF,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAChE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACrG,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;YAEvE,MAAM,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC7G,MAAM,eAAe,GAAG,eAAe;gBACnC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC;oBACpC,CAAC,CAAC,eAAe,CAAC,OAAO;oBACzB,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC;gBAC/B,CAAC,CAAC,EAAE,CAAC;YACT,MAAM,kBAAkB,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YAE5E,IAAI,cAAc,EAAE,CAAC;gBACjB,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,EAAE,CAAC;oBAClD,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;gBAChG,CAAC;gBACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBAClG,CAAC;YACL,CAAC;YACD,IAAI,kBAAkB,EAAE,CAAC;gBACrB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClH,MAAM,aAAa,GAAG,IAAI,GAAG,CACzB,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAAuB,CAAC,SAAS,CAAC,CACjG,CAAC;gBACF,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;oBAChG,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;gBACxG,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,wBAAwB,EAAE,MAAM,EAAE,EAAE,yBAAyB,EAAE,OAAO,CAAC,CAAC;IAC1G,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CAAC,MAAwD,EAAE,OAAwB;;QAChG,MAAM,IAAI,GAAG,CAAC,MAAA,MAAM,CAAC,IAAI,mCAAI,MAAM,CAAmB,CAAC;QAEvD,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,KAAK,CAAC,CAAC,CAAC;gBACT,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,WAAW,0CAAE,GAAG,CAAA,EAAE,CAAC;oBAC9C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;gBAChE,CAAC;gBAED,MAAM,SAAS,GAAG,MAAgC,CAAC;gBACnD,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;YAC1G,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACV,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,WAAW,0CAAE,IAAI,CAAA,EAAE,CAAC;oBAC/C,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBACjE,CAAC;gBAED,MAAM,UAAU,GACZ,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAE,MAAkC,CAAC,CAAC,CAAC,EAAE,GAAI,MAAkC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;gBAE5H,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;gBAErH,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC7E,IAAI,CAAC;wBACD,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,UAAU,CAAC,eAAiC,CAAC,CAAC;wBACvG,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAEnD,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;4BAC1B,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,iEAAiE,gBAAgB,CAAC,YAAY,EAAE,CACnG,CAAC;wBACN,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,IAAI,KAAK,YAAY,QAAQ,EAAE,CAAC;4BAC5B,MAAM,KAAK,CAAC;wBAChB,CAAC;wBACD,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,0CAA0C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrG,CAAC;oBACN,CAAC;gBACL,CAAC;gBACD,OAAO,MAAM,CAAC;YAClB,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,mCAAmC,CAAC,aAAqB,EAAE,OAA6B;;QACpF,IAAI,CAAC,CAAA,MAAA,MAAA,IAAI,CAAC,mBAAmB,0CAAE,WAAW,0CAAE,GAAG,CAAA,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;QACjH,CAAC;QAED,OAAO,GAAG,EAAE,CACR,IAAI,CAAC,YAAY,CACb;YACI,MAAM,EAAE,oCAAoC;YAC5C,MAAM,EAAE;gBACJ,aAAa;aAChB;SACJ,EACD,OAAO,CACV,CAAC;IACV,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,MAAmC,EAAE,OAAwB;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;IAC1F,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,kBAAkB,CAAC,MAA4C,EAAE,SAAkB;QACrF,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1E,CAAC;QACL,CAAC;IACL,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAA6C;QACnE,OAAO,IAAI,CAAC,YAAY,CAAC;YACrB,MAAM,EAAE,iCAAiC;YACzC,MAAM;SACT,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,uBAAuB;QACzB,OAAO,IAAI,CAAC,YAAY,CAAC;YACrB,MAAM,EAAE,sCAAsC;SACjD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,qBAAqB;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,oCAAoC,EAAE,CAAC,CAAC;IAC/E,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import { Server, ServerOptions } from './index.js';
2
- import { z, ZodRawShape, ZodObject, ZodTypeAny, ZodType, ZodTypeDef, ZodOptional } from 'zod';
2
+ import { AnySchema, AnyObjectSchema, ZodRawShapeCompat, SchemaOutput, ShapeOutput } from './zod-compat.js';
3
3
  import { Implementation, CallToolResult, Resource, ListResourcesResult, GetPromptResult, ReadResourceResult, ServerRequest, ServerNotification, ToolAnnotations, LoggingMessageNotification } from '../types.js';
4
4
  import { UriTemplate, Variables } from '../shared/uriTemplate.js';
5
5
  import { RequestHandlerExtra } from '../shared/protocol.js';
@@ -94,7 +94,7 @@ export declare class McpServer {
94
94
  * between ToolAnnotations and ZodRawShape during overload resolution, as both are plain object types.
95
95
  * @deprecated Use `registerTool` instead.
96
96
  */
97
- tool<Args extends ZodRawShape>(name: string, paramsSchemaOrAnnotations: Args | ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
97
+ tool<Args extends ZodRawShapeCompat>(name: string, paramsSchemaOrAnnotations: Args | ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
98
98
  /**
99
99
  * Registers a tool `name` (with a description) taking either parameter schema or annotations.
100
100
  * This unified overload handles both `tool(name, description, paramsSchema, cb)` and
@@ -104,21 +104,21 @@ export declare class McpServer {
104
104
  * between ToolAnnotations and ZodRawShape during overload resolution, as both are plain object types.
105
105
  * @deprecated Use `registerTool` instead.
106
106
  */
107
- tool<Args extends ZodRawShape>(name: string, description: string, paramsSchemaOrAnnotations: Args | ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
107
+ tool<Args extends ZodRawShapeCompat>(name: string, description: string, paramsSchemaOrAnnotations: Args | ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
108
108
  /**
109
109
  * Registers a tool with both parameter schema and annotations.
110
110
  * @deprecated Use `registerTool` instead.
111
111
  */
112
- tool<Args extends ZodRawShape>(name: string, paramsSchema: Args, annotations: ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
112
+ tool<Args extends ZodRawShapeCompat>(name: string, paramsSchema: Args, annotations: ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
113
113
  /**
114
114
  * Registers a tool with description, parameter schema, and annotations.
115
115
  * @deprecated Use `registerTool` instead.
116
116
  */
117
- tool<Args extends ZodRawShape>(name: string, description: string, paramsSchema: Args, annotations: ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
117
+ tool<Args extends ZodRawShapeCompat>(name: string, description: string, paramsSchema: Args, annotations: ToolAnnotations, cb: ToolCallback<Args>): RegisteredTool;
118
118
  /**
119
119
  * Registers a tool with a config object and callback.
120
120
  */
121
- registerTool<InputArgs extends ZodRawShape | ZodType<object>, OutputArgs extends ZodRawShape | ZodType<object>>(name: string, config: {
121
+ registerTool<InputArgs extends ZodRawShapeCompat | AnySchema, OutputArgs extends ZodRawShapeCompat | AnySchema>(name: string, config: {
122
122
  title?: string;
123
123
  description?: string;
124
124
  inputSchema?: InputArgs;
@@ -228,19 +228,19 @@ export declare class ResourceTemplate {
228
228
  * - `content` if the tool does not have an outputSchema
229
229
  * - Both fields are optional but typically one should be provided
230
230
  */
231
- export type ToolCallback<Args extends undefined | ZodRawShape | ZodType<object> = undefined> = Args extends ZodRawShape ? (args: z.objectOutputType<Args, ZodTypeAny>, extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => CallToolResult | Promise<CallToolResult> : Args extends ZodType<infer T> ? (args: T, extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => CallToolResult | Promise<CallToolResult> : (extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => CallToolResult | Promise<CallToolResult>;
231
+ export type ToolCallback<Args extends undefined | ZodRawShapeCompat | AnySchema = undefined> = Args extends ZodRawShapeCompat ? (args: ShapeOutput<Args>, extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => CallToolResult | Promise<CallToolResult> : Args extends AnySchema ? (args: SchemaOutput<Args>, extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => CallToolResult | Promise<CallToolResult> : (extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => CallToolResult | Promise<CallToolResult>;
232
232
  export type RegisteredTool = {
233
233
  title?: string;
234
234
  description?: string;
235
- inputSchema?: ZodType<object>;
236
- outputSchema?: ZodType<object>;
235
+ inputSchema?: AnySchema;
236
+ outputSchema?: AnySchema;
237
237
  annotations?: ToolAnnotations;
238
238
  _meta?: Record<string, unknown>;
239
- callback: ToolCallback<undefined | ZodRawShape>;
239
+ callback: ToolCallback<undefined | ZodRawShapeCompat>;
240
240
  enabled: boolean;
241
241
  enable(): void;
242
242
  disable(): void;
243
- update<InputArgs extends ZodRawShape, OutputArgs extends ZodRawShape>(updates: {
243
+ update<InputArgs extends ZodRawShapeCompat, OutputArgs extends ZodRawShapeCompat>(updates: {
244
244
  name?: string | null;
245
245
  title?: string;
246
246
  description?: string;
@@ -305,14 +305,12 @@ export type RegisteredResourceTemplate = {
305
305
  }): void;
306
306
  remove(): void;
307
307
  };
308
- type PromptArgsRawShape = {
309
- [k: string]: ZodType<string, ZodTypeDef, string> | ZodOptional<ZodType<string, ZodTypeDef, string>>;
310
- };
311
- export type PromptCallback<Args extends undefined | PromptArgsRawShape = undefined> = Args extends PromptArgsRawShape ? (args: z.objectOutputType<Args, ZodTypeAny>, extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => GetPromptResult | Promise<GetPromptResult> : (extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => GetPromptResult | Promise<GetPromptResult>;
308
+ type PromptArgsRawShape = ZodRawShapeCompat;
309
+ export type PromptCallback<Args extends undefined | PromptArgsRawShape = undefined> = Args extends PromptArgsRawShape ? (args: ShapeOutput<Args>, extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => GetPromptResult | Promise<GetPromptResult> : (extra: RequestHandlerExtra<ServerRequest, ServerNotification>) => GetPromptResult | Promise<GetPromptResult>;
312
310
  export type RegisteredPrompt = {
313
311
  title?: string;
314
312
  description?: string;
315
- argsSchema?: ZodObject<PromptArgsRawShape>;
313
+ argsSchema?: AnyObjectSchema;
316
314
  callback: PromptCallback<undefined | PromptArgsRawShape>;
317
315
  enabled: boolean;
318
316
  enable(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/server/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/server/mcp.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { Server } from './index.js';
2
- import { zodToJsonSchema } from 'zod-to-json-schema';
3
- import { z } from 'zod';
2
+ import { normalizeObjectSchema, safeParseAsync, getObjectShape, objectFromShape, getParseErrorMessage, getSchemaDescription, isSchemaOptional, getLiteralValue } from './zod-compat.js';
3
+ import { toJsonSchemaCompat } from './zod-json-schema-compat.js';
4
4
  import { McpError, ErrorCode, ListResourceTemplatesRequestSchema, ReadResourceRequestSchema, ListToolsRequestSchema, CallToolRequestSchema, ListResourcesRequestSchema, ListPromptsRequestSchema, GetPromptRequestSchema, CompleteRequestSchema, assertCompleteRequestPrompt, assertCompleteRequestResourceTemplate } from '../types.js';
5
- import { Completable } from './completable.js';
5
+ import { isCompletable, getCompleter } from './completable.js';
6
6
  import { UriTemplate } from '../shared/uriTemplate.js';
7
7
  import { validateAndWarnToolName } from '../shared/toolNameValidation.js';
8
8
  /**
@@ -40,8 +40,8 @@ export class McpServer {
40
40
  if (this._toolHandlersInitialized) {
41
41
  return;
42
42
  }
43
- this.server.assertCanSetRequestHandler(ListToolsRequestSchema.shape.method.value);
44
- this.server.assertCanSetRequestHandler(CallToolRequestSchema.shape.method.value);
43
+ this.server.assertCanSetRequestHandler(getMethodValue(ListToolsRequestSchema));
44
+ this.server.assertCanSetRequestHandler(getMethodValue(CallToolRequestSchema));
45
45
  this.server.registerCapabilities({
46
46
  tools: {
47
47
  listChanged: true
@@ -55,20 +55,26 @@ export class McpServer {
55
55
  name,
56
56
  title: tool.title,
57
57
  description: tool.description,
58
- inputSchema: tool.inputSchema
59
- ? zodToJsonSchema(tool.inputSchema, {
60
- strictUnions: true,
61
- pipeStrategy: 'input'
62
- })
63
- : EMPTY_OBJECT_JSON_SCHEMA,
58
+ inputSchema: (() => {
59
+ const obj = normalizeObjectSchema(tool.inputSchema);
60
+ return obj
61
+ ? toJsonSchemaCompat(obj, {
62
+ strictUnions: true,
63
+ pipeStrategy: 'input'
64
+ })
65
+ : EMPTY_OBJECT_JSON_SCHEMA;
66
+ })(),
64
67
  annotations: tool.annotations,
65
68
  _meta: tool._meta
66
69
  };
67
70
  if (tool.outputSchema) {
68
- toolDefinition.outputSchema = zodToJsonSchema(tool.outputSchema, {
69
- strictUnions: true,
70
- pipeStrategy: 'output'
71
- });
71
+ const obj = normalizeObjectSchema(tool.outputSchema);
72
+ if (obj) {
73
+ toolDefinition.outputSchema = toJsonSchemaCompat(obj, {
74
+ strictUnions: true,
75
+ pipeStrategy: 'output'
76
+ });
77
+ }
72
78
  }
73
79
  return toolDefinition;
74
80
  })
@@ -85,9 +91,13 @@ export class McpServer {
85
91
  }
86
92
  if (tool.inputSchema) {
87
93
  const cb = tool.callback;
88
- const parseResult = await tool.inputSchema.safeParseAsync(request.params.arguments);
94
+ // Try to normalize to object schema first (for raw shapes and object schemas)
95
+ // If that fails, use the schema directly (for union/intersection/etc)
96
+ const inputObj = normalizeObjectSchema(tool.inputSchema);
97
+ const schemaToParse = inputObj !== null && inputObj !== void 0 ? inputObj : tool.inputSchema;
98
+ const parseResult = await safeParseAsync(schemaToParse, request.params.arguments);
89
99
  if (!parseResult.success) {
90
- throw new McpError(ErrorCode.InvalidParams, `Input validation error: Invalid arguments for tool ${request.params.name}: ${parseResult.error.message}`);
100
+ throw new McpError(ErrorCode.InvalidParams, `Input validation error: Invalid arguments for tool ${request.params.name}: ${getParseErrorMessage(parseResult.error)}`);
91
101
  }
92
102
  const args = parseResult.data;
93
103
  result = await Promise.resolve(cb(args, extra));
@@ -101,13 +111,19 @@ export class McpServer {
101
111
  throw new McpError(ErrorCode.InvalidParams, `Output validation error: Tool ${request.params.name} has an output schema but no structured content was provided`);
102
112
  }
103
113
  // if the tool has an output schema, validate structured content
104
- const parseResult = await tool.outputSchema.safeParseAsync(result.structuredContent);
114
+ const outputObj = normalizeObjectSchema(tool.outputSchema);
115
+ const parseResult = await safeParseAsync(outputObj, result.structuredContent);
105
116
  if (!parseResult.success) {
106
- throw new McpError(ErrorCode.InvalidParams, `Output validation error: Invalid structured content for tool ${request.params.name}: ${parseResult.error.message}`);
117
+ throw new McpError(ErrorCode.InvalidParams, `Output validation error: Invalid structured content for tool ${request.params.name}: ${getParseErrorMessage(parseResult.error)}`);
107
118
  }
108
119
  }
109
120
  }
110
121
  catch (error) {
122
+ if (error instanceof McpError) {
123
+ if (error.code === ErrorCode.UrlElicitationRequired) {
124
+ throw error; // Return the error to the caller without wrapping in CallToolResult
125
+ }
126
+ }
111
127
  return this.createToolError(error instanceof Error ? error.message : String(error));
112
128
  }
113
129
  return result;
@@ -135,7 +151,7 @@ export class McpServer {
135
151
  if (this._completionHandlerInitialized) {
136
152
  return;
137
153
  }
138
- this.server.assertCanSetRequestHandler(CompleteRequestSchema.shape.method.value);
154
+ this.server.assertCanSetRequestHandler(getMethodValue(CompleteRequestSchema));
139
155
  this.server.registerCapabilities({
140
156
  completions: {}
141
157
  });
@@ -164,12 +180,16 @@ export class McpServer {
164
180
  if (!prompt.argsSchema) {
165
181
  return EMPTY_COMPLETION_RESULT;
166
182
  }
167
- const field = prompt.argsSchema.shape[request.params.argument.name];
168
- if (!(field instanceof Completable)) {
183
+ const promptShape = getObjectShape(prompt.argsSchema);
184
+ const field = promptShape === null || promptShape === void 0 ? void 0 : promptShape[request.params.argument.name];
185
+ if (!isCompletable(field)) {
169
186
  return EMPTY_COMPLETION_RESULT;
170
187
  }
171
- const def = field._def;
172
- const suggestions = await def.complete(request.params.argument.value, request.params.context);
188
+ const completer = getCompleter(field);
189
+ if (!completer) {
190
+ return EMPTY_COMPLETION_RESULT;
191
+ }
192
+ const suggestions = await completer(request.params.argument.value, request.params.context);
173
193
  return createCompletionResult(suggestions);
174
194
  }
175
195
  async handleResourceCompletion(request, ref) {
@@ -192,9 +212,9 @@ export class McpServer {
192
212
  if (this._resourceHandlersInitialized) {
193
213
  return;
194
214
  }
195
- this.server.assertCanSetRequestHandler(ListResourcesRequestSchema.shape.method.value);
196
- this.server.assertCanSetRequestHandler(ListResourceTemplatesRequestSchema.shape.method.value);
197
- this.server.assertCanSetRequestHandler(ReadResourceRequestSchema.shape.method.value);
215
+ this.server.assertCanSetRequestHandler(getMethodValue(ListResourcesRequestSchema));
216
+ this.server.assertCanSetRequestHandler(getMethodValue(ListResourceTemplatesRequestSchema));
217
+ this.server.assertCanSetRequestHandler(getMethodValue(ReadResourceRequestSchema));
198
218
  this.server.registerCapabilities({
199
219
  resources: {
200
220
  listChanged: true
@@ -258,8 +278,8 @@ export class McpServer {
258
278
  if (this._promptHandlersInitialized) {
259
279
  return;
260
280
  }
261
- this.server.assertCanSetRequestHandler(ListPromptsRequestSchema.shape.method.value);
262
- this.server.assertCanSetRequestHandler(GetPromptRequestSchema.shape.method.value);
281
+ this.server.assertCanSetRequestHandler(getMethodValue(ListPromptsRequestSchema));
282
+ this.server.assertCanSetRequestHandler(getMethodValue(GetPromptRequestSchema));
263
283
  this.server.registerCapabilities({
264
284
  prompts: {
265
285
  listChanged: true
@@ -286,9 +306,10 @@ export class McpServer {
286
306
  throw new McpError(ErrorCode.InvalidParams, `Prompt ${request.params.name} disabled`);
287
307
  }
288
308
  if (prompt.argsSchema) {
289
- const parseResult = await prompt.argsSchema.safeParseAsync(request.params.arguments);
309
+ const argsObj = normalizeObjectSchema(prompt.argsSchema);
310
+ const parseResult = await safeParseAsync(argsObj, request.params.arguments);
290
311
  if (!parseResult.success) {
291
- throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${parseResult.error.message}`);
312
+ throw new McpError(ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${getParseErrorMessage(parseResult.error)}`);
292
313
  }
293
314
  const args = parseResult.data;
294
315
  const cb = prompt.callback;
@@ -415,7 +436,7 @@ export class McpServer {
415
436
  const registeredPrompt = {
416
437
  title,
417
438
  description,
418
- argsSchema: argsSchema === undefined ? undefined : z.object(argsSchema),
439
+ argsSchema: argsSchema === undefined ? undefined : objectFromShape(argsSchema),
419
440
  callback,
420
441
  enabled: true,
421
442
  disable: () => registeredPrompt.update({ enabled: false }),
@@ -432,7 +453,7 @@ export class McpServer {
432
453
  if (typeof updates.description !== 'undefined')
433
454
  registeredPrompt.description = updates.description;
434
455
  if (typeof updates.argsSchema !== 'undefined')
435
- registeredPrompt.argsSchema = z.object(updates.argsSchema);
456
+ registeredPrompt.argsSchema = objectFromShape(updates.argsSchema);
436
457
  if (typeof updates.callback !== 'undefined')
437
458
  registeredPrompt.callback = updates.callback;
438
459
  if (typeof updates.enabled !== 'undefined')
@@ -472,7 +493,7 @@ export class McpServer {
472
493
  if (typeof updates.description !== 'undefined')
473
494
  registeredTool.description = updates.description;
474
495
  if (typeof updates.paramsSchema !== 'undefined')
475
- registeredTool.inputSchema = z.object(updates.paramsSchema);
496
+ registeredTool.inputSchema = objectFromShape(updates.paramsSchema);
476
497
  if (typeof updates.callback !== 'undefined')
477
498
  registeredTool.callback = updates.callback;
478
499
  if (typeof updates.annotations !== 'undefined')
@@ -646,7 +667,7 @@ const EMPTY_OBJECT_JSON_SCHEMA = {
646
667
  type: 'object',
647
668
  properties: {}
648
669
  };
649
- // Helper to check if an object is a Zod schema (ZodRawShape)
670
+ // Helper to check if an object is a Zod schema (ZodRawShapeCompat)
650
671
  function isZodRawShape(obj) {
651
672
  if (typeof obj !== 'object' || obj === null)
652
673
  return false;
@@ -672,16 +693,38 @@ function getZodSchemaObject(schema) {
672
693
  return undefined;
673
694
  }
674
695
  if (isZodRawShape(schema)) {
675
- return z.object(schema);
696
+ return objectFromShape(schema);
676
697
  }
677
698
  return schema;
678
699
  }
679
700
  function promptArgumentsFromSchema(schema) {
680
- return Object.entries(schema.shape).map(([name, field]) => ({
681
- name,
682
- description: field.description,
683
- required: !field.isOptional()
684
- }));
701
+ const shape = getObjectShape(schema);
702
+ if (!shape)
703
+ return [];
704
+ return Object.entries(shape).map(([name, field]) => {
705
+ // Get description - works for both v3 and v4
706
+ const description = getSchemaDescription(field);
707
+ // Check if optional - works for both v3 and v4
708
+ const isOptional = isSchemaOptional(field);
709
+ return {
710
+ name,
711
+ description,
712
+ required: !isOptional
713
+ };
714
+ });
715
+ }
716
+ function getMethodValue(schema) {
717
+ const shape = getObjectShape(schema);
718
+ const methodSchema = shape === null || shape === void 0 ? void 0 : shape.method;
719
+ if (!methodSchema) {
720
+ throw new Error('Schema is missing a method literal');
721
+ }
722
+ // Extract literal value - works for both v3 and v4
723
+ const value = getLiteralValue(methodSchema);
724
+ if (typeof value === 'string') {
725
+ return value;
726
+ }
727
+ throw new Error('Schema method literal must be a string');
685
728
  }
686
729
  function createCompletionResult(suggestions) {
687
730
  return {