@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,11 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ResourceTemplate = exports.McpServer = void 0;
4
4
  const index_js_1 = require("./index.js");
5
- const zod_to_json_schema_1 = require("zod-to-json-schema");
6
- const zod_1 = require("zod");
5
+ const zod_compat_js_1 = require("./zod-compat.js");
6
+ const zod_json_schema_compat_js_1 = require("./zod-json-schema-compat.js");
7
7
  const types_js_1 = require("../types.js");
8
8
  const completable_js_1 = require("./completable.js");
9
9
  const uriTemplate_js_1 = require("../shared/uriTemplate.js");
10
+ const toolNameValidation_js_1 = require("../shared/toolNameValidation.js");
10
11
  /**
11
12
  * High-level MCP server that provides a simpler API for working with resources, tools, and prompts.
12
13
  * For advanced usage (like sending notifications or setting custom request handlers), use the underlying
@@ -42,8 +43,8 @@ class McpServer {
42
43
  if (this._toolHandlersInitialized) {
43
44
  return;
44
45
  }
45
- this.server.assertCanSetRequestHandler(types_js_1.ListToolsRequestSchema.shape.method.value);
46
- this.server.assertCanSetRequestHandler(types_js_1.CallToolRequestSchema.shape.method.value);
46
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.ListToolsRequestSchema));
47
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.CallToolRequestSchema));
47
48
  this.server.registerCapabilities({
48
49
  tools: {
49
50
  listChanged: true
@@ -57,20 +58,26 @@ class McpServer {
57
58
  name,
58
59
  title: tool.title,
59
60
  description: tool.description,
60
- inputSchema: tool.inputSchema
61
- ? (0, zod_to_json_schema_1.zodToJsonSchema)(tool.inputSchema, {
62
- strictUnions: true,
63
- pipeStrategy: 'input'
64
- })
65
- : EMPTY_OBJECT_JSON_SCHEMA,
61
+ inputSchema: (() => {
62
+ const obj = (0, zod_compat_js_1.normalizeObjectSchema)(tool.inputSchema);
63
+ return obj
64
+ ? (0, zod_json_schema_compat_js_1.toJsonSchemaCompat)(obj, {
65
+ strictUnions: true,
66
+ pipeStrategy: 'input'
67
+ })
68
+ : EMPTY_OBJECT_JSON_SCHEMA;
69
+ })(),
66
70
  annotations: tool.annotations,
67
71
  _meta: tool._meta
68
72
  };
69
73
  if (tool.outputSchema) {
70
- toolDefinition.outputSchema = (0, zod_to_json_schema_1.zodToJsonSchema)(tool.outputSchema, {
71
- strictUnions: true,
72
- pipeStrategy: 'output'
73
- });
74
+ const obj = (0, zod_compat_js_1.normalizeObjectSchema)(tool.outputSchema);
75
+ if (obj) {
76
+ toolDefinition.outputSchema = (0, zod_json_schema_compat_js_1.toJsonSchemaCompat)(obj, {
77
+ strictUnions: true,
78
+ pipeStrategy: 'output'
79
+ });
80
+ }
74
81
  }
75
82
  return toolDefinition;
76
83
  })
@@ -87,9 +94,13 @@ class McpServer {
87
94
  }
88
95
  if (tool.inputSchema) {
89
96
  const cb = tool.callback;
90
- const parseResult = await tool.inputSchema.safeParseAsync(request.params.arguments);
97
+ // Try to normalize to object schema first (for raw shapes and object schemas)
98
+ // If that fails, use the schema directly (for union/intersection/etc)
99
+ const inputObj = (0, zod_compat_js_1.normalizeObjectSchema)(tool.inputSchema);
100
+ const schemaToParse = inputObj !== null && inputObj !== void 0 ? inputObj : tool.inputSchema;
101
+ const parseResult = await (0, zod_compat_js_1.safeParseAsync)(schemaToParse, request.params.arguments);
91
102
  if (!parseResult.success) {
92
- throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Input validation error: Invalid arguments for tool ${request.params.name}: ${parseResult.error.message}`);
103
+ throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Input validation error: Invalid arguments for tool ${request.params.name}: ${(0, zod_compat_js_1.getParseErrorMessage)(parseResult.error)}`);
93
104
  }
94
105
  const args = parseResult.data;
95
106
  result = await Promise.resolve(cb(args, extra));
@@ -103,13 +114,19 @@ class McpServer {
103
114
  throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Output validation error: Tool ${request.params.name} has an output schema but no structured content was provided`);
104
115
  }
105
116
  // if the tool has an output schema, validate structured content
106
- const parseResult = await tool.outputSchema.safeParseAsync(result.structuredContent);
117
+ const outputObj = (0, zod_compat_js_1.normalizeObjectSchema)(tool.outputSchema);
118
+ const parseResult = await (0, zod_compat_js_1.safeParseAsync)(outputObj, result.structuredContent);
107
119
  if (!parseResult.success) {
108
- throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Output validation error: Invalid structured content for tool ${request.params.name}: ${parseResult.error.message}`);
120
+ throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Output validation error: Invalid structured content for tool ${request.params.name}: ${(0, zod_compat_js_1.getParseErrorMessage)(parseResult.error)}`);
109
121
  }
110
122
  }
111
123
  }
112
124
  catch (error) {
125
+ if (error instanceof types_js_1.McpError) {
126
+ if (error.code === types_js_1.ErrorCode.UrlElicitationRequired) {
127
+ throw error; // Return the error to the caller without wrapping in CallToolResult
128
+ }
129
+ }
113
130
  return this.createToolError(error instanceof Error ? error.message : String(error));
114
131
  }
115
132
  return result;
@@ -137,15 +154,17 @@ class McpServer {
137
154
  if (this._completionHandlerInitialized) {
138
155
  return;
139
156
  }
140
- this.server.assertCanSetRequestHandler(types_js_1.CompleteRequestSchema.shape.method.value);
157
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.CompleteRequestSchema));
141
158
  this.server.registerCapabilities({
142
159
  completions: {}
143
160
  });
144
161
  this.server.setRequestHandler(types_js_1.CompleteRequestSchema, async (request) => {
145
162
  switch (request.params.ref.type) {
146
163
  case 'ref/prompt':
164
+ (0, types_js_1.assertCompleteRequestPrompt)(request);
147
165
  return this.handlePromptCompletion(request, request.params.ref);
148
166
  case 'ref/resource':
167
+ (0, types_js_1.assertCompleteRequestResourceTemplate)(request);
149
168
  return this.handleResourceCompletion(request, request.params.ref);
150
169
  default:
151
170
  throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Invalid completion reference: ${request.params.ref}`);
@@ -164,12 +183,16 @@ class McpServer {
164
183
  if (!prompt.argsSchema) {
165
184
  return EMPTY_COMPLETION_RESULT;
166
185
  }
167
- const field = prompt.argsSchema.shape[request.params.argument.name];
168
- if (!(field instanceof completable_js_1.Completable)) {
186
+ const promptShape = (0, zod_compat_js_1.getObjectShape)(prompt.argsSchema);
187
+ const field = promptShape === null || promptShape === void 0 ? void 0 : promptShape[request.params.argument.name];
188
+ if (!(0, completable_js_1.isCompletable)(field)) {
169
189
  return EMPTY_COMPLETION_RESULT;
170
190
  }
171
- const def = field._def;
172
- const suggestions = await def.complete(request.params.argument.value, request.params.context);
191
+ const completer = (0, completable_js_1.getCompleter)(field);
192
+ if (!completer) {
193
+ return EMPTY_COMPLETION_RESULT;
194
+ }
195
+ const suggestions = await completer(request.params.argument.value, request.params.context);
173
196
  return createCompletionResult(suggestions);
174
197
  }
175
198
  async handleResourceCompletion(request, ref) {
@@ -192,9 +215,9 @@ class McpServer {
192
215
  if (this._resourceHandlersInitialized) {
193
216
  return;
194
217
  }
195
- this.server.assertCanSetRequestHandler(types_js_1.ListResourcesRequestSchema.shape.method.value);
196
- this.server.assertCanSetRequestHandler(types_js_1.ListResourceTemplatesRequestSchema.shape.method.value);
197
- this.server.assertCanSetRequestHandler(types_js_1.ReadResourceRequestSchema.shape.method.value);
218
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.ListResourcesRequestSchema));
219
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.ListResourceTemplatesRequestSchema));
220
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.ReadResourceRequestSchema));
198
221
  this.server.registerCapabilities({
199
222
  resources: {
200
223
  listChanged: true
@@ -258,8 +281,8 @@ class McpServer {
258
281
  if (this._promptHandlersInitialized) {
259
282
  return;
260
283
  }
261
- this.server.assertCanSetRequestHandler(types_js_1.ListPromptsRequestSchema.shape.method.value);
262
- this.server.assertCanSetRequestHandler(types_js_1.GetPromptRequestSchema.shape.method.value);
284
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.ListPromptsRequestSchema));
285
+ this.server.assertCanSetRequestHandler(getMethodValue(types_js_1.GetPromptRequestSchema));
263
286
  this.server.registerCapabilities({
264
287
  prompts: {
265
288
  listChanged: true
@@ -286,9 +309,10 @@ class McpServer {
286
309
  throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Prompt ${request.params.name} disabled`);
287
310
  }
288
311
  if (prompt.argsSchema) {
289
- const parseResult = await prompt.argsSchema.safeParseAsync(request.params.arguments);
312
+ const argsObj = (0, zod_compat_js_1.normalizeObjectSchema)(prompt.argsSchema);
313
+ const parseResult = await (0, zod_compat_js_1.safeParseAsync)(argsObj, request.params.arguments);
290
314
  if (!parseResult.success) {
291
- throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${parseResult.error.message}`);
315
+ throw new types_js_1.McpError(types_js_1.ErrorCode.InvalidParams, `Invalid arguments for prompt ${request.params.name}: ${(0, zod_compat_js_1.getParseErrorMessage)(parseResult.error)}`);
292
316
  }
293
317
  const args = parseResult.data;
294
318
  const cb = prompt.callback;
@@ -415,7 +439,7 @@ class McpServer {
415
439
  const registeredPrompt = {
416
440
  title,
417
441
  description,
418
- argsSchema: argsSchema === undefined ? undefined : zod_1.z.object(argsSchema),
442
+ argsSchema: argsSchema === undefined ? undefined : (0, zod_compat_js_1.objectFromShape)(argsSchema),
419
443
  callback,
420
444
  enabled: true,
421
445
  disable: () => registeredPrompt.update({ enabled: false }),
@@ -432,7 +456,7 @@ class McpServer {
432
456
  if (typeof updates.description !== 'undefined')
433
457
  registeredPrompt.description = updates.description;
434
458
  if (typeof updates.argsSchema !== 'undefined')
435
- registeredPrompt.argsSchema = zod_1.z.object(updates.argsSchema);
459
+ registeredPrompt.argsSchema = (0, zod_compat_js_1.objectFromShape)(updates.argsSchema);
436
460
  if (typeof updates.callback !== 'undefined')
437
461
  registeredPrompt.callback = updates.callback;
438
462
  if (typeof updates.enabled !== 'undefined')
@@ -444,11 +468,13 @@ class McpServer {
444
468
  return registeredPrompt;
445
469
  }
446
470
  _createRegisteredTool(name, title, description, inputSchema, outputSchema, annotations, _meta, callback) {
471
+ // Validate tool name according to SEP specification
472
+ (0, toolNameValidation_js_1.validateAndWarnToolName)(name);
447
473
  const registeredTool = {
448
474
  title,
449
475
  description,
450
- inputSchema: inputSchema === undefined ? undefined : zod_1.z.object(inputSchema),
451
- outputSchema: outputSchema === undefined ? undefined : zod_1.z.object(outputSchema),
476
+ inputSchema: getZodSchemaObject(inputSchema),
477
+ outputSchema: getZodSchemaObject(outputSchema),
452
478
  annotations,
453
479
  _meta,
454
480
  callback,
@@ -458,6 +484,9 @@ class McpServer {
458
484
  remove: () => registeredTool.update({ name: null }),
459
485
  update: updates => {
460
486
  if (typeof updates.name !== 'undefined' && updates.name !== name) {
487
+ if (typeof updates.name === 'string') {
488
+ (0, toolNameValidation_js_1.validateAndWarnToolName)(updates.name);
489
+ }
461
490
  delete this._registeredTools[name];
462
491
  if (updates.name)
463
492
  this._registeredTools[updates.name] = registeredTool;
@@ -467,7 +496,7 @@ class McpServer {
467
496
  if (typeof updates.description !== 'undefined')
468
497
  registeredTool.description = updates.description;
469
498
  if (typeof updates.paramsSchema !== 'undefined')
470
- registeredTool.inputSchema = zod_1.z.object(updates.paramsSchema);
499
+ registeredTool.inputSchema = (0, zod_compat_js_1.objectFromShape)(updates.paramsSchema);
471
500
  if (typeof updates.callback !== 'undefined')
472
501
  registeredTool.callback = updates.callback;
473
502
  if (typeof updates.annotations !== 'undefined')
@@ -643,7 +672,7 @@ const EMPTY_OBJECT_JSON_SCHEMA = {
643
672
  type: 'object',
644
673
  properties: {}
645
674
  };
646
- // Helper to check if an object is a Zod schema (ZodRawShape)
675
+ // Helper to check if an object is a Zod schema (ZodRawShapeCompat)
647
676
  function isZodRawShape(obj) {
648
677
  if (typeof obj !== 'object' || obj === null)
649
678
  return false;
@@ -660,12 +689,47 @@ function isZodTypeLike(value) {
660
689
  'safeParse' in value &&
661
690
  typeof value.safeParse === 'function');
662
691
  }
692
+ /**
693
+ * Converts a provided Zod schema to a Zod object if it is a ZodRawShape,
694
+ * otherwise returns the schema as is.
695
+ */
696
+ function getZodSchemaObject(schema) {
697
+ if (!schema) {
698
+ return undefined;
699
+ }
700
+ if (isZodRawShape(schema)) {
701
+ return (0, zod_compat_js_1.objectFromShape)(schema);
702
+ }
703
+ return schema;
704
+ }
663
705
  function promptArgumentsFromSchema(schema) {
664
- return Object.entries(schema.shape).map(([name, field]) => ({
665
- name,
666
- description: field.description,
667
- required: !field.isOptional()
668
- }));
706
+ const shape = (0, zod_compat_js_1.getObjectShape)(schema);
707
+ if (!shape)
708
+ return [];
709
+ return Object.entries(shape).map(([name, field]) => {
710
+ // Get description - works for both v3 and v4
711
+ const description = (0, zod_compat_js_1.getSchemaDescription)(field);
712
+ // Check if optional - works for both v3 and v4
713
+ const isOptional = (0, zod_compat_js_1.isSchemaOptional)(field);
714
+ return {
715
+ name,
716
+ description,
717
+ required: !isOptional
718
+ };
719
+ });
720
+ }
721
+ function getMethodValue(schema) {
722
+ const shape = (0, zod_compat_js_1.getObjectShape)(schema);
723
+ const methodSchema = shape === null || shape === void 0 ? void 0 : shape.method;
724
+ if (!methodSchema) {
725
+ throw new Error('Schema is missing a method literal');
726
+ }
727
+ // Extract literal value - works for both v3 and v4
728
+ const value = (0, zod_compat_js_1.getLiteralValue)(methodSchema);
729
+ if (typeof value === 'string') {
730
+ return value;
731
+ }
732
+ throw new Error('Schema method literal must be a string');
669
733
  }
670
734
  function createCompletionResult(suggestions) {
671
735
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/server/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/server/mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,82 @@
1
+ import type * as z3 from 'zod/v3';
2
+ import type * as z4 from 'zod/v4/core';
3
+ export type AnySchema = z3.ZodTypeAny | z4.$ZodType;
4
+ export type AnyObjectSchema = z3.AnyZodObject | z4.$ZodObject | AnySchema;
5
+ export type ZodRawShapeCompat = Record<string, AnySchema>;
6
+ export interface ZodV3Internal {
7
+ _def?: {
8
+ typeName?: string;
9
+ value?: unknown;
10
+ values?: unknown[];
11
+ shape?: Record<string, AnySchema> | (() => Record<string, AnySchema>);
12
+ description?: string;
13
+ };
14
+ shape?: Record<string, AnySchema> | (() => Record<string, AnySchema>);
15
+ value?: unknown;
16
+ }
17
+ export interface ZodV4Internal {
18
+ _zod?: {
19
+ def?: {
20
+ typeName?: string;
21
+ value?: unknown;
22
+ values?: unknown[];
23
+ shape?: Record<string, AnySchema> | (() => Record<string, AnySchema>);
24
+ description?: string;
25
+ };
26
+ };
27
+ value?: unknown;
28
+ }
29
+ export type SchemaOutput<S> = S extends z3.ZodTypeAny ? z3.infer<S> : S extends z4.$ZodType ? z4.output<S> : never;
30
+ export type SchemaInput<S> = S extends z3.ZodTypeAny ? z3.input<S> : S extends z4.$ZodType ? z4.input<S> : never;
31
+ /**
32
+ * Infers the output type from a ZodRawShapeCompat (raw shape object).
33
+ * Maps over each key in the shape and infers the output type from each schema.
34
+ */
35
+ export type ShapeOutput<Shape extends ZodRawShapeCompat> = {
36
+ [K in keyof Shape]: SchemaOutput<Shape[K]>;
37
+ };
38
+ export declare function isZ4Schema(s: AnySchema): s is z4.$ZodType;
39
+ export declare function objectFromShape(shape: ZodRawShapeCompat): AnyObjectSchema;
40
+ export declare function safeParse<S extends AnySchema>(schema: S, data: unknown): {
41
+ success: true;
42
+ data: SchemaOutput<S>;
43
+ } | {
44
+ success: false;
45
+ error: unknown;
46
+ };
47
+ export declare function safeParseAsync<S extends AnySchema>(schema: S, data: unknown): Promise<{
48
+ success: true;
49
+ data: SchemaOutput<S>;
50
+ } | {
51
+ success: false;
52
+ error: unknown;
53
+ }>;
54
+ export declare function getObjectShape(schema: AnyObjectSchema | undefined): Record<string, AnySchema> | undefined;
55
+ /**
56
+ * Normalizes a schema to an object schema. Handles both:
57
+ * - Already-constructed object schemas (v3 or v4)
58
+ * - Raw shapes that need to be wrapped into object schemas
59
+ */
60
+ export declare function normalizeObjectSchema(schema: AnySchema | ZodRawShapeCompat | undefined): AnyObjectSchema | undefined;
61
+ /**
62
+ * Safely extracts an error message from a parse result error.
63
+ * Zod errors can have different structures, so we handle various cases.
64
+ */
65
+ export declare function getParseErrorMessage(error: unknown): string;
66
+ /**
67
+ * Gets the description from a schema, if available.
68
+ * Works with both Zod v3 and v4.
69
+ */
70
+ export declare function getSchemaDescription(schema: AnySchema): string | undefined;
71
+ /**
72
+ * Checks if a schema is optional.
73
+ * Works with both Zod v3 and v4.
74
+ */
75
+ export declare function isSchemaOptional(schema: AnySchema): boolean;
76
+ /**
77
+ * Gets the literal value from a schema, if it's a literal schema.
78
+ * Works with both Zod v3 and v4.
79
+ * Returns undefined if the schema is not a literal or the value cannot be determined.
80
+ */
81
+ export declare function getLiteralValue(schema: AnySchema): unknown;
82
+ //# sourceMappingURL=zod-compat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zod-compat.d.ts","sourceRoot":"","sources":["../../../src/server/zod-compat.ts"],"names":[],"mappings":"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"}