agents 0.0.0-25aeaf2 → 0.0.0-263787c

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 (48) hide show
  1. package/README.md +128 -22
  2. package/dist/ai-chat-agent.d.ts +35 -6
  3. package/dist/ai-chat-agent.js +149 -117
  4. package/dist/ai-chat-agent.js.map +1 -1
  5. package/dist/ai-react.d.ts +13 -10
  6. package/dist/ai-react.js +27 -29
  7. package/dist/ai-react.js.map +1 -1
  8. package/dist/{chunk-25YDMV4H.js → chunk-HY7ZLHJB.js} +178 -44
  9. package/dist/chunk-HY7ZLHJB.js.map +1 -0
  10. package/dist/chunk-JXN5WZFQ.js +1287 -0
  11. package/dist/chunk-JXN5WZFQ.js.map +1 -0
  12. package/dist/{chunk-RN4SNE73.js → chunk-KUH345EY.js} +17 -34
  13. package/dist/chunk-KUH345EY.js.map +1 -0
  14. package/dist/{chunk-D6UOOELW.js → chunk-PVQZBKN7.js} +15 -15
  15. package/dist/chunk-PVQZBKN7.js.map +1 -0
  16. package/dist/client-DgyzBU_8.d.ts +4601 -0
  17. package/dist/client.d.ts +10 -3
  18. package/dist/client.js +1 -2
  19. package/dist/index-BCJclX6q.d.ts +615 -0
  20. package/dist/index.d.ts +35 -361
  21. package/dist/index.js +10 -5
  22. package/dist/mcp/client.d.ts +9 -781
  23. package/dist/mcp/client.js +1 -2
  24. package/dist/mcp/do-oauth-client-provider.d.ts +3 -3
  25. package/dist/mcp/do-oauth-client-provider.js +1 -2
  26. package/dist/mcp/index.d.ts +48 -11
  27. package/dist/mcp/index.js +317 -180
  28. package/dist/mcp/index.js.map +1 -1
  29. package/dist/observability/index.d.ts +14 -0
  30. package/dist/observability/index.js +10 -0
  31. package/dist/react.d.ts +79 -11
  32. package/dist/react.js +16 -8
  33. package/dist/react.js.map +1 -1
  34. package/dist/schedule.d.ts +10 -10
  35. package/dist/schedule.js +4 -6
  36. package/dist/schedule.js.map +1 -1
  37. package/dist/serializable.d.ts +32 -0
  38. package/dist/serializable.js +1 -0
  39. package/dist/serializable.js.map +1 -0
  40. package/package.json +76 -71
  41. package/src/index.ts +895 -222
  42. package/dist/chunk-25YDMV4H.js.map +0 -1
  43. package/dist/chunk-D6UOOELW.js.map +0 -1
  44. package/dist/chunk-HMLY7DHA.js +0 -16
  45. package/dist/chunk-RN4SNE73.js.map +0 -1
  46. package/dist/chunk-YFPCCSZO.js +0 -787
  47. package/dist/chunk-YFPCCSZO.js.map +0 -1
  48. /package/dist/{chunk-HMLY7DHA.js.map → observability/index.js.map} +0 -0
@@ -1,8 +1,7 @@
1
1
  import {
2
2
  MCPClientManager,
3
3
  getNamespacedData
4
- } from "../chunk-25YDMV4H.js";
5
- import "../chunk-HMLY7DHA.js";
4
+ } from "../chunk-HY7ZLHJB.js";
6
5
  export {
7
6
  MCPClientManager,
8
7
  getNamespacedData
@@ -10,9 +10,9 @@ declare class DurableObjectOAuthClientProvider implements AgentsOAuthProvider {
10
10
  storage: DurableObjectStorage;
11
11
  clientName: string;
12
12
  baseRedirectUrl: string;
13
- private authUrl_;
14
- private serverId_;
15
- private clientId_;
13
+ private _authUrl_;
14
+ private _serverId_;
15
+ private _clientId_;
16
16
  constructor(storage: DurableObjectStorage, clientName: string, baseRedirectUrl: string);
17
17
  get clientMetadata(): OAuthClientMetadata;
18
18
  get redirectUrl(): string;
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  DurableObjectOAuthClientProvider
3
- } from "../chunk-D6UOOELW.js";
4
- import "../chunk-HMLY7DHA.js";
3
+ } from "../chunk-PVQZBKN7.js";
5
4
  export {
6
5
  DurableObjectOAuthClientProvider
7
6
  };
@@ -1,17 +1,20 @@
1
- import { MCPClientManager } from './client.js';
1
+ import { M as MCPClientManager } from '../client-DgyzBU_8.js';
2
+ export { S as SSEEdgeClientTransport, a as StreamableHTTPEdgeClientTransport } from '../client-DgyzBU_8.js';
2
3
  import { DurableObject } from 'cloudflare:workers';
3
- import { Connection, WSMessage } from 'partyserver';
4
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
5
4
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
5
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
+ import { ElicitResult } from '@modelcontextprotocol/sdk/types.js';
7
+ export { ElicitRequest, ElicitRequestSchema, ElicitResult } from '@modelcontextprotocol/sdk/types.js';
8
+ import { Connection, WSMessage } from 'partyserver';
6
9
  import 'zod';
7
- import '@modelcontextprotocol/sdk/types.js';
8
10
  import '@modelcontextprotocol/sdk/client/index.js';
11
+ import '@modelcontextprotocol/sdk/shared/protocol.js';
12
+ import 'ai';
9
13
  import '@modelcontextprotocol/sdk/client/sse.js';
14
+ import '@modelcontextprotocol/sdk/client/streamableHttp.js';
10
15
  import './do-oauth-client-provider.js';
11
16
  import '@modelcontextprotocol/sdk/client/auth.js';
12
17
  import '@modelcontextprotocol/sdk/shared/auth.js';
13
- import '@modelcontextprotocol/sdk/shared/protocol.js';
14
- import 'ai';
15
18
 
16
19
  interface CORSOptions {
17
20
  origin?: string;
@@ -22,7 +25,15 @@ interface CORSOptions {
22
25
  }
23
26
  type MaybePromise<T> = T | Promise<T>;
24
27
  declare abstract class McpAgent<Env = unknown, State = unknown, Props extends Record<string, unknown> = Record<string, unknown>> extends DurableObject<Env> {
25
- #private;
28
+ private _status;
29
+ private _transport?;
30
+ private _transportType;
31
+ private _requestIdToConnectionId;
32
+ /**
33
+ * Since McpAgent's _aren't_ yet real "Agents", let's only expose a couple of the methods
34
+ * to the outer class: initialState/state/setState/onStateUpdate/sql
35
+ */
36
+ private _agent;
26
37
  get mcp(): MCPClientManager;
27
38
  protected constructor(ctx: DurableObjectState, env: Env);
28
39
  /**
@@ -32,6 +43,13 @@ declare abstract class McpAgent<Env = unknown, State = unknown, Props extends Re
32
43
  get state(): State;
33
44
  sql<T = Record<string, string | number | boolean | null>>(strings: TemplateStringsArray, ...values: (string | number | boolean | null)[]): T[];
34
45
  setState(state: State): void;
46
+ /**
47
+ * Elicit user input with a message and schema
48
+ */
49
+ elicitInput(params: {
50
+ message: string;
51
+ requestedSchema: unknown;
52
+ }): Promise<ElicitResult>;
35
53
  onStateUpdate(state: State | undefined, source: Connection | "server"): void;
36
54
  onStart(): Promise<void>;
37
55
  /**
@@ -41,30 +59,49 @@ declare abstract class McpAgent<Env = unknown, State = unknown, Props extends Re
41
59
  props: Props;
42
60
  initRun: boolean;
43
61
  abstract init(): Promise<void>;
62
+ /**
63
+ * Handle errors that occur during initialization or operation.
64
+ * Override this method to provide custom error handling.
65
+ * @param error - The error that occurred
66
+ * @returns An error response object with status code and message
67
+ */
68
+ onError(error: Error): {
69
+ status: number;
70
+ message: string;
71
+ };
44
72
  _init(props: Props): Promise<void>;
45
73
  setInitialized(): Promise<void>;
46
74
  isInitialized(): Promise<boolean>;
75
+ updateProps(props: Props): Promise<void>;
76
+ private _initialize;
47
77
  fetch(request: Request): Promise<Response>;
48
78
  getWebSocket(): WebSocket | null;
49
79
  getWebSocketForResponseID(id: string): WebSocket | null;
50
80
  onMessage(connection: Connection, event: WSMessage): Promise<void>;
51
- onSSEMcpMessage(sessionId: string, request: Request): Promise<Error | null>;
81
+ /**
82
+ * Wait for elicitation response through storage polling
83
+ */
84
+ private _waitForElicitationResponse;
85
+ /**
86
+ * Handle elicitation responses */
87
+ private _handleElicitationResponse;
88
+ onSSEMcpMessage(_sessionId: string, messageBody: unknown): Promise<Error | null>;
52
89
  webSocketMessage(ws: WebSocket, event: ArrayBuffer | string): Promise<void>;
53
90
  webSocketError(ws: WebSocket, error: unknown): Promise<void>;
54
91
  webSocketClose(ws: WebSocket, code: number, reason: string, wasClean: boolean): Promise<void>;
55
- static mount(path: string, { binding, corsOptions, }?: {
92
+ static mount(path: string, { binding, corsOptions }?: {
56
93
  binding?: string;
57
94
  corsOptions?: CORSOptions;
58
95
  }): {
59
96
  fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
60
97
  };
61
- static serveSSE(path: string, { binding, corsOptions, }?: {
98
+ static serveSSE(path: string, { binding, corsOptions }?: {
62
99
  binding?: string;
63
100
  corsOptions?: CORSOptions;
64
101
  }): {
65
102
  fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
66
103
  };
67
- static serve(path: string, { binding, corsOptions, }?: {
104
+ static serve(path: string, { binding, corsOptions }?: {
68
105
  binding?: string;
69
106
  corsOptions?: CORSOptions;
70
107
  }): {