@ai-sdk/mcp 2.0.72 → 2.0.73

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,17 @@
1
1
  # @ai-sdk/mcp
2
2
 
3
+ ## 2.0.73
4
+
5
+ ### Patch Changes
6
+
7
+ - b5b0416: Give experimental managed event adapters a synchronous `createAdapter({ transport })` method that receives the configured MCP transport type and URL and returns bound subscription operations. Applications no longer need to configure the endpoint twice.
8
+
9
+ **Breaking change to the experimental API:** the configured integration is now `Experimental_MCPEventAdapter` and must implement `createAdapter`. The former `Experimental_MCPEventsAdapter` subscription operations interface is renamed to `Experimental_MCPEventOperations`. Update imports and operation type annotations, and wrap existing operations with `{ createAdapter: () => operations }` instead of passing them directly to `experimental_events.adapter`.
10
+
11
+ `createAdapter` must synchronously return an object implementing `subscribe`, `getSubscription`, `listSubscriptions`, and `unsubscribe`. Missing or non-callable operations, nullish results, and Promise/thenable results now reject `createMCPClient` with `MCPClientError` before the transport starts.
12
+
13
+ The adapter receives a fresh `transport: { type: 'http' | 'sse', url: string }` description for built-in transport configurations or `transport: { type: 'custom' }` for custom instances. Credentials, callbacks, and live transport methods are not forwarded.
14
+
3
15
  ## 2.0.72
4
16
 
5
17
  ### Patch Changes
package/README.md CHANGED
@@ -188,8 +188,11 @@ Please check out the
188
188
  [AI SDK MCP documentation](https://ai-sdk.dev/docs/ai-sdk-core/mcp-tools) for
189
189
  more information.
190
190
 
191
- Managed backends can implement `Experimental_MCPEventsAdapter` and configure
192
- `experimental_events: { adapter }` instead of a store. Catalog discovery still
191
+ Managed backends can implement `Experimental_MCPEventAdapter` and configure
192
+ `experimental_events: { adapter }` instead of a store. Its `createAdapter()`
193
+ method receives `{ transport }` metadata (HTTP/SSE type and URL, or
194
+ `{ type: 'custom' }` for custom transports) and returns `Experimental_MCPEventOperations`
195
+ bound to the authorized account. Catalog discovery still
193
196
  uses the authenticated MCP transport; subscribe/get/list/unsubscribe delegate
194
197
  to the backend, which owns renewal and webhook delivery. Managed clients do not
195
198
  expose `refresh()`. See the [managed subscription reference](https://ai-sdk.dev/docs/reference/ai-sdk-core/mcp-events#managed-subscriptions).
package/dist/index.d.ts CHANGED
@@ -623,7 +623,7 @@ type MCPEventsConfig = {
623
623
  arguments: JSONObject;
624
624
  }) => void | PromiseLike<void>;
625
625
  } | {
626
- adapter: MCPEventsAdapter;
626
+ adapter: MCPEventAdapter;
627
627
  store?: never;
628
628
  validateArguments?: never;
629
629
  };
@@ -698,7 +698,7 @@ type ManagedSubscribeInput = {
698
698
  * Implementations must honor request options and preserve actionable errors.
699
699
  * Cancelling a request does not cancel an already accepted remote subscription.
700
700
  */
701
- interface MCPEventsAdapter {
701
+ interface MCPEventOperations {
702
702
  subscribe(input: ManagedSubscribeInput): Promise<ManagedSubscription>;
703
703
  getSubscription(input: {
704
704
  id: string;
@@ -718,8 +718,24 @@ interface MCPEventsAdapter {
718
718
  options?: RequestOptions;
719
719
  }): Promise<ManagedSubscription>;
720
720
  }
721
+ /**
722
+ * Creates bound subscription operations once per client, before the transport starts.
723
+ * Receives transport metadata, not credentials or a live transport instance.
724
+ * HTTP/SSE URLs are the configured endpoints, not resolved redirect targets.
725
+ * Custom transports have no standard URL and receive only their type.
726
+ */
727
+ interface MCPEventAdapter {
728
+ createAdapter(context: {
729
+ transport: {
730
+ type: 'http' | 'sse';
731
+ url: string;
732
+ } | {
733
+ type: 'custom';
734
+ };
735
+ }): MCPEventOperations;
736
+ }
721
737
  /** Catalog discovery uses MCP; all subscription operations use the adapter. */
722
- interface ManagedMCPEvents extends MCPEventsAdapter {
738
+ interface ManagedMCPEvents extends MCPEventOperations {
723
739
  list: MCPEvents['list'];
724
740
  }
725
741
  //#endregion
@@ -1126,7 +1142,7 @@ type ManagedMCPClient = Omit<MCPClient, 'experimental_events'> & {
1126
1142
  };
1127
1143
  export declare function createMCPClient(config: MCPClientConfig & {
1128
1144
  experimental_events: {
1129
- adapter: MCPEventsAdapter;
1145
+ adapter: MCPEventAdapter;
1130
1146
  };
1131
1147
  }): Promise<ManagedMCPClient>;
1132
1148
  export declare function createMCPClient(config: MCPClientConfig & {
@@ -1389,5 +1405,5 @@ type MCPEventWebhookOptions = {
1389
1405
  */
1390
1406
  declare function createMCPEventWebhook({ store, validatePayload, onEvent, onGap, onTerminated, onError }: MCPEventWebhookOptions): (request: Request) => Promise<Response>;
1391
1407
  //#endregion
1392
- export { type CallToolResult, type CompleteRequestParams, type CompleteResult, type Configuration, type ElicitResult, type ElicitationRequest, type ListEventsResult as Experimental_ListEventsResult, type MCPEvent as Experimental_MCPEvent, type MCPEventControl as Experimental_MCPEventControl, type MCPEventDefinition as Experimental_MCPEventDefinition, type MCPEventStore as Experimental_MCPEventStore, type MCPEventSubscription as Experimental_MCPEventSubscription, type MCPEventSubscriptionInfo as Experimental_MCPEventSubscriptionInfo, type MCPEventWebhookOptions as Experimental_MCPEventWebhookOptions, type MCPEvents as Experimental_MCPEvents, type MCPEventsAdapter as Experimental_MCPEventsAdapter, type MCPEventsConfig as Experimental_MCPEventsConfig, type ManagedMCPClient as Experimental_ManagedMCPClient, type ManagedMCPEvents as Experimental_ManagedMCPEvents, type ManagedSubscribeInput as Experimental_ManagedSubscribeInput, type ManagedSubscription as Experimental_ManagedSubscription, type SubscribeEventOptions as Experimental_SubscribeEventOptions, type SubscribeEventResult as Experimental_SubscribeEventResult, type InitializeResult, type JSONRPCError, type JSONRPCMessage, type JSONRPCNotification, type JSONRPCRequest, type JSONRPCResponse, type ListToolsResult, type MCPAppResource, type MCPAppResourceCSP, type MCPAppResourceMeta, type MCPClient, type MCPClient as experimental_MCPClient, type ClientCapabilities as MCPClientCapabilities, type ClientCapabilities as experimental_MCPClientCapabilities, type MCPClientConfig, type MCPClientConfig as experimental_MCPClientConfig, type MCPTransport, type MCPTransportCloseOptions, type MCPTransportSendOptions, type McpProviderMetadata, type McpToolAnnotations, type OAuthAuthorizationServerInformation, type OAuthClientInformation, type OAuthClientMetadata, type OAuthClientProvider, type OAuthTokens, createMCPClient as experimental_createMCPClient, createMCPEventWebhook as experimental_createMCPEventWebhook };
1408
+ export { type CallToolResult, type CompleteRequestParams, type CompleteResult, type Configuration, type ElicitResult, type ElicitationRequest, type ListEventsResult as Experimental_ListEventsResult, type MCPEvent as Experimental_MCPEvent, type MCPEventAdapter as Experimental_MCPEventAdapter, type MCPEventControl as Experimental_MCPEventControl, type MCPEventDefinition as Experimental_MCPEventDefinition, type MCPEventOperations as Experimental_MCPEventOperations, type MCPEventStore as Experimental_MCPEventStore, type MCPEventSubscription as Experimental_MCPEventSubscription, type MCPEventSubscriptionInfo as Experimental_MCPEventSubscriptionInfo, type MCPEventWebhookOptions as Experimental_MCPEventWebhookOptions, type MCPEvents as Experimental_MCPEvents, type MCPEventsConfig as Experimental_MCPEventsConfig, type ManagedMCPClient as Experimental_ManagedMCPClient, type ManagedMCPEvents as Experimental_ManagedMCPEvents, type ManagedSubscribeInput as Experimental_ManagedSubscribeInput, type ManagedSubscription as Experimental_ManagedSubscription, type SubscribeEventOptions as Experimental_SubscribeEventOptions, type SubscribeEventResult as Experimental_SubscribeEventResult, type InitializeResult, type JSONRPCError, type JSONRPCMessage, type JSONRPCNotification, type JSONRPCRequest, type JSONRPCResponse, type ListToolsResult, type MCPAppResource, type MCPAppResourceCSP, type MCPAppResourceMeta, type MCPClient, type MCPClient as experimental_MCPClient, type ClientCapabilities as MCPClientCapabilities, type ClientCapabilities as experimental_MCPClientCapabilities, type MCPClientConfig, type MCPClientConfig as experimental_MCPClientConfig, type MCPTransport, type MCPTransportCloseOptions, type MCPTransportSendOptions, type McpProviderMetadata, type McpToolAnnotations, type OAuthAuthorizationServerInformation, type OAuthClientInformation, type OAuthClientMetadata, type OAuthClientProvider, type OAuthTokens, createMCPClient as experimental_createMCPClient, createMCPEventWebhook as experimental_createMCPEventWebhook };
1393
1409
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":["Request","symbol"],"sources":["../src/tool/json-rpc-message.ts","../src/tool/types.ts","../src/tool/mcp-event-types.ts","../src/tool/mcp-events-adapter.ts","../src/tool/oauth-types.ts","../src/error/oauth-error.ts","../src/tool/oauth.ts","../src/tool/mcp-transport.ts","../src/tool/mcp-client.ts","../src/tool/mcp-apps.ts","../src/tool/mcp-app-fingerprint.ts","../src/error/mcp-client-error.ts","../src/tool/mcp-event-webhook.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":["Request","symbol"],"sources":["../src/tool/json-rpc-message.ts","../src/tool/types.ts","../src/tool/mcp-event-types.ts","../src/tool/mcp-events-adapter.ts","../src/tool/oauth-types.ts","../src/error/oauth-error.ts","../src/tool/oauth.ts","../src/tool/mcp-transport.ts","../src/tool/mcp-client.ts","../src/tool/mcp-apps.ts","../src/tool/mcp-app-fingerprint.ts","../src/error/mcp-client-error.ts","../src/tool/mcp-event-webhook.ts"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -507,18 +507,26 @@ function createMCPEvents({ request, store, validateArguments }) {
507
507
  }
508
508
  //#endregion
509
509
  //#region src/tool/mcp-events-adapter.ts
510
- function createManagedMCPEvents(adapter, list) {
510
+ /** Validate JavaScript integrations before opening the MCP transport. */
511
+ function validateMCPEventOperations(operations) {
512
+ if (operations != null && (typeof operations === "object" || typeof operations === "function") && "then" in operations && typeof operations.then === "function") {
513
+ Promise.resolve(operations).catch(() => {});
514
+ throw new MCPClientError({ message: "experimental_events.adapter.createAdapter() must return operations synchronously. Promise and thenable results are not supported." });
515
+ }
516
+ if (typeof operations !== "object" || operations === null || !("subscribe" in operations) || typeof operations.subscribe !== "function" || !("getSubscription" in operations) || typeof operations.getSubscription !== "function" || !("listSubscriptions" in operations) || typeof operations.listSubscriptions !== "function" || !("unsubscribe" in operations) || typeof operations.unsubscribe !== "function") throw new MCPClientError({ message: "experimental_events.adapter.createAdapter() must return an object implementing subscribe, getSubscription, listSubscriptions, and unsubscribe." });
517
+ }
518
+ function createManagedMCPEvents(operations, list) {
511
519
  return {
512
520
  list,
513
- subscribe: (input) => adapter.subscribe(input),
514
- getSubscription: (input) => adapter.getSubscription(input),
515
- listSubscriptions: (input) => adapter.listSubscriptions(input),
516
- unsubscribe: (input) => adapter.unsubscribe(input)
521
+ subscribe: (input) => operations.subscribe(input),
522
+ getSubscription: (input) => operations.getSubscription(input),
523
+ listSubscriptions: (input) => operations.listSubscriptions(input),
524
+ unsubscribe: (input) => operations.unsubscribe(input)
517
525
  };
518
526
  }
519
527
  //#endregion
520
528
  //#region src/version.ts
521
- const VERSION = "2.0.72";
529
+ const VERSION = "2.0.73";
522
530
  //#endregion
523
531
  //#region src/tool/oauth-types.ts
524
532
  /**
@@ -2341,6 +2349,12 @@ var DefaultMCPClient = class {
2341
2349
  this.toolHeaderBindings = /* @__PURE__ */ new Map();
2342
2350
  this.isClosed = true;
2343
2351
  if (events?.adapter !== void 0 && (events.store !== void 0 || events.validateArguments !== void 0)) throw new MCPClientError({ message: "Configure experimental_events with either an adapter or a store, not both. Managed adapters own argument validation." });
2352
+ if (events?.adapter !== void 0 && typeof events.adapter?.createAdapter !== "function") throw new MCPClientError({ message: "experimental_events.adapter must implement createAdapter. Wrap bound operations with { createAdapter: () => operations }." });
2353
+ const operations = events?.adapter?.createAdapter({ transport: isCustomMcpTransport(transportConfig) ? { type: "custom" } : {
2354
+ type: transportConfig.type,
2355
+ url: transportConfig.url
2356
+ } });
2357
+ if (events?.adapter !== void 0) validateMCPEventOperations(operations);
2344
2358
  this.onUncaughtError = onUncaughtError;
2345
2359
  this.maxRetries = prepareMaxRetries(maxRetries);
2346
2360
  this.clientCapabilities = capabilities ?? {};
@@ -2368,7 +2382,7 @@ var DefaultMCPClient = class {
2368
2382
  store: events?.store,
2369
2383
  validateArguments: events?.validateArguments
2370
2384
  });
2371
- this.experimental_events = events?.adapter ? createManagedMCPEvents(events.adapter, directEvents.list) : directEvents;
2385
+ this.experimental_events = operations ? createManagedMCPEvents(operations, directEvents.list) : directEvents;
2372
2386
  }
2373
2387
  get serverInfo() {
2374
2388
  return this._serverInfo;