@ai-sdk/mcp 1.0.57 → 1.0.59

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @ai-sdk/mcp
2
2
 
3
+ ## 1.0.59
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [0952964]
8
+ - @ai-sdk/provider-utils@4.0.36
9
+
10
+ ## 1.0.58
11
+
12
+ ### Patch Changes
13
+
14
+ - f12f0d3: feat(mcp): expose a json-rpc message validator
15
+
3
16
  ## 1.0.57
4
17
 
5
18
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -66,6 +66,7 @@ declare const JSONRPCMessageSchema: z.ZodUnion<readonly [z.ZodObject<{
66
66
  }, z.core.$strip>;
67
67
  }, z.core.$strict>]>;
68
68
  type JSONRPCMessage = z.infer<typeof JSONRPCMessageSchema>;
69
+ declare function validateJSONRPCMessage(message: unknown): JSONRPCMessage;
69
70
 
70
71
  /**
71
72
  * OAuth 2.1 token response
@@ -619,4 +620,4 @@ interface MCPClient {
619
620
  close: () => Promise<void>;
620
621
  }
621
622
 
622
- export { type CallToolResult, type CompleteRequestParams, type CompleteResult, type Configuration, type ElicitResult, ElicitResultSchema, type ElicitationRequest, ElicitationRequestSchema, type JSONRPCError, type JSONRPCMessage, type JSONRPCNotification, type JSONRPCRequest, type JSONRPCResponse, type ListToolsResult, type MCPClient, type ClientCapabilities as MCPClientCapabilities, type MCPClientConfig, type MCPTransport, type OAuthAuthorizationServerInformation, type OAuthClientInformation, type OAuthClientMetadata, type OAuthClientProvider, type OAuthTokens, UnauthorizedError, auth, createMCPClient, type MCPClient as experimental_MCPClient, type ClientCapabilities as experimental_MCPClientCapabilities, type MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient };
623
+ export { type CallToolResult, type CompleteRequestParams, type CompleteResult, type Configuration, type ElicitResult, ElicitResultSchema, type ElicitationRequest, ElicitationRequestSchema, type JSONRPCError, type JSONRPCMessage, type JSONRPCNotification, type JSONRPCRequest, type JSONRPCResponse, type ListToolsResult, type MCPClient, type ClientCapabilities as MCPClientCapabilities, type MCPClientConfig, type MCPTransport, type OAuthAuthorizationServerInformation, type OAuthClientInformation, type OAuthClientMetadata, type OAuthClientProvider, type OAuthTokens, UnauthorizedError, auth, createMCPClient, type MCPClient as experimental_MCPClient, type ClientCapabilities as experimental_MCPClientCapabilities, type MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient, validateJSONRPCMessage };
package/dist/index.d.ts CHANGED
@@ -66,6 +66,7 @@ declare const JSONRPCMessageSchema: z.ZodUnion<readonly [z.ZodObject<{
66
66
  }, z.core.$strip>;
67
67
  }, z.core.$strict>]>;
68
68
  type JSONRPCMessage = z.infer<typeof JSONRPCMessageSchema>;
69
+ declare function validateJSONRPCMessage(message: unknown): JSONRPCMessage;
69
70
 
70
71
  /**
71
72
  * OAuth 2.1 token response
@@ -619,4 +620,4 @@ interface MCPClient {
619
620
  close: () => Promise<void>;
620
621
  }
621
622
 
622
- export { type CallToolResult, type CompleteRequestParams, type CompleteResult, type Configuration, type ElicitResult, ElicitResultSchema, type ElicitationRequest, ElicitationRequestSchema, type JSONRPCError, type JSONRPCMessage, type JSONRPCNotification, type JSONRPCRequest, type JSONRPCResponse, type ListToolsResult, type MCPClient, type ClientCapabilities as MCPClientCapabilities, type MCPClientConfig, type MCPTransport, type OAuthAuthorizationServerInformation, type OAuthClientInformation, type OAuthClientMetadata, type OAuthClientProvider, type OAuthTokens, UnauthorizedError, auth, createMCPClient, type MCPClient as experimental_MCPClient, type ClientCapabilities as experimental_MCPClientCapabilities, type MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient };
623
+ export { type CallToolResult, type CompleteRequestParams, type CompleteResult, type Configuration, type ElicitResult, ElicitResultSchema, type ElicitationRequest, ElicitationRequestSchema, type JSONRPCError, type JSONRPCMessage, type JSONRPCNotification, type JSONRPCRequest, type JSONRPCResponse, type ListToolsResult, type MCPClient, type ClientCapabilities as MCPClientCapabilities, type MCPClientConfig, type MCPTransport, type OAuthAuthorizationServerInformation, type OAuthClientInformation, type OAuthClientMetadata, type OAuthClientProvider, type OAuthTokens, UnauthorizedError, auth, createMCPClient, type MCPClient as experimental_MCPClient, type ClientCapabilities as experimental_MCPClientCapabilities, type MCPClientConfig as experimental_MCPClientConfig, createMCPClient as experimental_createMCPClient, validateJSONRPCMessage };
package/dist/index.js CHANGED
@@ -35,46 +35,11 @@ __export(index_exports, {
35
35
  UnauthorizedError: () => UnauthorizedError,
36
36
  auth: () => auth,
37
37
  createMCPClient: () => createMCPClient,
38
- experimental_createMCPClient: () => createMCPClient
38
+ experimental_createMCPClient: () => createMCPClient,
39
+ validateJSONRPCMessage: () => validateJSONRPCMessage
39
40
  });
40
41
  module.exports = __toCommonJS(index_exports);
41
42
 
42
- // src/tool/mcp-client.ts
43
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
44
-
45
- // src/error/mcp-client-error.ts
46
- var import_provider = require("@ai-sdk/provider");
47
- var name = "AI_MCPClientError";
48
- var marker = `vercel.ai.error.${name}`;
49
- var symbol = Symbol.for(marker);
50
- var _a, _b;
51
- var MCPClientError = class extends (_b = import_provider.AISDKError, _a = symbol, _b) {
52
- constructor({
53
- name: name3 = "MCPClientError",
54
- message,
55
- cause,
56
- data,
57
- code,
58
- statusCode,
59
- url,
60
- responseBody
61
- }) {
62
- super({ name: name3, message, cause });
63
- this[_a] = true;
64
- this.data = data;
65
- this.code = code;
66
- this.statusCode = statusCode;
67
- this.url = url;
68
- this.responseBody = responseBody;
69
- }
70
- static isInstance(error) {
71
- return import_provider.AISDKError.hasMarker(error, marker);
72
- }
73
- };
74
-
75
- // src/tool/mcp-sse-transport.ts
76
- var import_provider_utils3 = require("@ai-sdk/provider-utils");
77
-
78
43
  // src/tool/json-rpc-message.ts
79
44
  var import_provider_utils = require("@ai-sdk/provider-utils");
80
45
  var import_v42 = require("zod/v4");
@@ -359,10 +324,49 @@ var JSONRPCMessageSchema = import_v42.z.union([
359
324
  JSONRPCResponseSchema,
360
325
  JSONRPCErrorSchema
361
326
  ]);
327
+ function validateJSONRPCMessage(message) {
328
+ return JSONRPCMessageSchema.parse(message);
329
+ }
362
330
  async function parseJSONRPCMessage(text) {
363
- return JSONRPCMessageSchema.parse(await (0, import_provider_utils.parseJSON)({ text }));
331
+ return validateJSONRPCMessage(await (0, import_provider_utils.parseJSON)({ text }));
364
332
  }
365
333
 
334
+ // src/tool/mcp-client.ts
335
+ var import_provider_utils5 = require("@ai-sdk/provider-utils");
336
+
337
+ // src/error/mcp-client-error.ts
338
+ var import_provider = require("@ai-sdk/provider");
339
+ var name = "AI_MCPClientError";
340
+ var marker = `vercel.ai.error.${name}`;
341
+ var symbol = Symbol.for(marker);
342
+ var _a, _b;
343
+ var MCPClientError = class extends (_b = import_provider.AISDKError, _a = symbol, _b) {
344
+ constructor({
345
+ name: name3 = "MCPClientError",
346
+ message,
347
+ cause,
348
+ data,
349
+ code,
350
+ statusCode,
351
+ url,
352
+ responseBody
353
+ }) {
354
+ super({ name: name3, message, cause });
355
+ this[_a] = true;
356
+ this.data = data;
357
+ this.code = code;
358
+ this.statusCode = statusCode;
359
+ this.url = url;
360
+ this.responseBody = responseBody;
361
+ }
362
+ static isInstance(error) {
363
+ return import_provider.AISDKError.hasMarker(error, marker);
364
+ }
365
+ };
366
+
367
+ // src/tool/mcp-sse-transport.ts
368
+ var import_provider_utils3 = require("@ai-sdk/provider-utils");
369
+
366
370
  // src/version.ts
367
371
  var VERSION = typeof __PACKAGE_VERSION__ !== "undefined" ? __PACKAGE_VERSION__ : "0.0.0-test";
368
372
 
@@ -1705,8 +1709,10 @@ var HttpMCPTransport = class {
1705
1709
  const contentType = response.headers.get("content-type") || "";
1706
1710
  if (contentType.includes("application/json")) {
1707
1711
  const data = await response.json();
1708
- const messages = Array.isArray(data) ? data.map((m) => JSONRPCMessageSchema.parse(m)) : [JSONRPCMessageSchema.parse(data)];
1709
- for (const m of messages) (_d = this.onmessage) == null ? void 0 : _d.call(this, m);
1712
+ const messages = Array.isArray(data) ? data.map((message2) => validateJSONRPCMessage(message2)) : [validateJSONRPCMessage(data)];
1713
+ for (const jsonRpcMessage of messages) {
1714
+ (_d = this.onmessage) == null ? void 0 : _d.call(this, jsonRpcMessage);
1715
+ }
1710
1716
  return;
1711
1717
  }
1712
1718
  if (contentType.includes("text/event-stream")) {
@@ -2590,6 +2596,7 @@ var DefaultMCPClient = class {
2590
2596
  UnauthorizedError,
2591
2597
  auth,
2592
2598
  createMCPClient,
2593
- experimental_createMCPClient
2599
+ experimental_createMCPClient,
2600
+ validateJSONRPCMessage
2594
2601
  });
2595
2602
  //# sourceMappingURL=index.js.map