agents 0.0.0-d72c6a2 → 0.0.0-d7a460e

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 (81) hide show
  1. package/dist/ai-chat-agent.d.ts +16 -17
  2. package/dist/ai-chat-agent.js +532 -351
  3. package/dist/ai-chat-agent.js.map +1 -1
  4. package/dist/ai-chat-v5-migration-DBHGW4Hv.js +155 -0
  5. package/dist/ai-chat-v5-migration-DBHGW4Hv.js.map +1 -0
  6. package/dist/ai-chat-v5-migration.d.ts +7 -4
  7. package/dist/ai-chat-v5-migration.js +3 -19
  8. package/dist/ai-react.d.ts +20 -23
  9. package/dist/ai-react.js +259 -304
  10. package/dist/ai-react.js.map +1 -1
  11. package/dist/ai-types-B3aQaFv3.js +20 -0
  12. package/dist/ai-types-B3aQaFv3.js.map +1 -0
  13. package/dist/ai-types-D5YoPrBZ.d.ts +95 -0
  14. package/dist/ai-types.d.ts +6 -91
  15. package/dist/ai-types.js +3 -7
  16. package/dist/client-9Ld2_lnt.js +786 -0
  17. package/dist/client-9Ld2_lnt.js.map +1 -0
  18. package/dist/client-BfiZ3HQd.js +117 -0
  19. package/dist/client-BfiZ3HQd.js.map +1 -0
  20. package/dist/client-CbWe9FBd.d.ts +104 -0
  21. package/dist/client-Csp_m13H.d.ts +5315 -0
  22. package/dist/client.d.ts +11 -92
  23. package/dist/client.js +4 -12
  24. package/dist/codemode/ai.d.ts +27 -0
  25. package/dist/codemode/ai.js +151 -0
  26. package/dist/codemode/ai.js.map +1 -0
  27. package/dist/do-oauth-client-provider-CswoD5Lu.js +93 -0
  28. package/dist/do-oauth-client-provider-CswoD5Lu.js.map +1 -0
  29. package/dist/do-oauth-client-provider-DGc5pP0l.d.ts +55 -0
  30. package/dist/index-DFqsR7mb.d.ts +560 -0
  31. package/dist/index-DhJCaDWd.d.ts +58 -0
  32. package/dist/index.d.ts +56 -550
  33. package/dist/index.js +7 -31
  34. package/dist/mcp/client.d.ts +4 -11
  35. package/dist/mcp/client.js +3 -9
  36. package/dist/mcp/do-oauth-client-provider.d.ts +2 -42
  37. package/dist/mcp/do-oauth-client-provider.js +3 -7
  38. package/dist/mcp/index.d.ts +149 -92
  39. package/dist/mcp/index.js +1352 -1012
  40. package/dist/mcp/index.js.map +1 -1
  41. package/dist/mcp/x402.d.ts +34 -0
  42. package/dist/mcp/x402.js +194 -0
  43. package/dist/mcp/x402.js.map +1 -0
  44. package/dist/mcp-Dw5vDrY8.d.ts +61 -0
  45. package/dist/observability/index.d.ts +3 -46
  46. package/dist/observability/index.js +7 -11
  47. package/dist/react-NCPvtyCY.d.ts +115 -0
  48. package/dist/react.d.ts +10 -123
  49. package/dist/react.js +183 -112
  50. package/dist/react.js.map +1 -1
  51. package/dist/schedule.d.ts +13 -10
  52. package/dist/schedule.js +43 -31
  53. package/dist/schedule.js.map +1 -1
  54. package/dist/serializable-CymX8ovI.d.ts +39 -0
  55. package/dist/serializable.d.ts +7 -32
  56. package/dist/serializable.js +1 -1
  57. package/dist/src-Dz0H9hSU.js +1200 -0
  58. package/dist/src-Dz0H9hSU.js.map +1 -0
  59. package/package.json +36 -12
  60. package/dist/ai-chat-v5-migration.js.map +0 -1
  61. package/dist/ai-types.js.map +0 -1
  62. package/dist/chunk-AVYJQSLW.js +0 -17
  63. package/dist/chunk-AVYJQSLW.js.map +0 -1
  64. package/dist/chunk-LL2AFX7V.js +0 -109
  65. package/dist/chunk-LL2AFX7V.js.map +0 -1
  66. package/dist/chunk-MH46VMM4.js +0 -612
  67. package/dist/chunk-MH46VMM4.js.map +0 -1
  68. package/dist/chunk-QEVM4BVL.js +0 -116
  69. package/dist/chunk-QEVM4BVL.js.map +0 -1
  70. package/dist/chunk-UJVEAURM.js +0 -150
  71. package/dist/chunk-UJVEAURM.js.map +0 -1
  72. package/dist/chunk-YDUDMOL6.js +0 -1296
  73. package/dist/chunk-YDUDMOL6.js.map +0 -1
  74. package/dist/client-CvaJdLQA.d.ts +0 -5015
  75. package/dist/client.js.map +0 -1
  76. package/dist/index.js.map +0 -1
  77. package/dist/mcp/client.js.map +0 -1
  78. package/dist/mcp/do-oauth-client-provider.js.map +0 -1
  79. package/dist/observability/index.js.map +0 -1
  80. package/dist/serializable.js.map +0 -1
  81. package/src/index.ts +0 -1947
@@ -1,42 +1,2 @@
1
- import { OAuthClientProvider } from '@modelcontextprotocol/sdk/client/auth.js';
2
- import { OAuthClientMetadata, OAuthClientInformation, OAuthClientInformationFull, OAuthTokens } from '@modelcontextprotocol/sdk/shared/auth.js';
3
-
4
- interface AgentsOAuthProvider extends OAuthClientProvider {
5
- authUrl: string | undefined;
6
- clientId: string | undefined;
7
- serverId: string | undefined;
8
- }
9
- declare class DurableObjectOAuthClientProvider implements AgentsOAuthProvider {
10
- storage: DurableObjectStorage;
11
- clientName: string;
12
- baseRedirectUrl: string;
13
- private _authUrl_;
14
- private _serverId_;
15
- private _clientId_;
16
- constructor(storage: DurableObjectStorage, clientName: string, baseRedirectUrl: string);
17
- get clientMetadata(): OAuthClientMetadata;
18
- get clientUri(): string;
19
- get redirectUrl(): string;
20
- get clientId(): string;
21
- set clientId(clientId_: string);
22
- get serverId(): string;
23
- set serverId(serverId_: string);
24
- keyPrefix(clientId: string): string;
25
- clientInfoKey(clientId: string): string;
26
- clientInformation(): Promise<OAuthClientInformation | undefined>;
27
- saveClientInformation(clientInformation: OAuthClientInformationFull): Promise<void>;
28
- tokenKey(clientId: string): string;
29
- tokens(): Promise<OAuthTokens | undefined>;
30
- saveTokens(tokens: OAuthTokens): Promise<void>;
31
- get authUrl(): string | undefined;
32
- /**
33
- * Because this operates on the server side (but we need browser auth), we send this url back to the user
34
- * and require user interact to initiate the redirect flow
35
- */
36
- redirectToAuthorization(authUrl: URL): Promise<void>;
37
- codeVerifierKey(clientId: string): string;
38
- saveCodeVerifier(verifier: string): Promise<void>;
39
- codeVerifier(): Promise<string>;
40
- }
41
-
42
- export { type AgentsOAuthProvider, DurableObjectOAuthClientProvider };
1
+ import { n as DurableObjectOAuthClientProvider, t as AgentsOAuthProvider } from "../do-oauth-client-provider-DGc5pP0l.js";
2
+ export { AgentsOAuthProvider, DurableObjectOAuthClientProvider };
@@ -1,7 +1,3 @@
1
- import {
2
- DurableObjectOAuthClientProvider
3
- } from "../chunk-LL2AFX7V.js";
4
- export {
5
- DurableObjectOAuthClientProvider
6
- };
7
- //# sourceMappingURL=do-oauth-client-provider.js.map
1
+ import { t as DurableObjectOAuthClientProvider } from "../do-oauth-client-provider-CswoD5Lu.js";
2
+
3
+ export { DurableObjectOAuthClientProvider };
@@ -1,97 +1,154 @@
1
- import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
- import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
3
- import { JSONRPCMessage, ElicitResult } from '@modelcontextprotocol/sdk/types.js';
4
- export { ElicitRequest, ElicitRequestSchema, ElicitResult } from '@modelcontextprotocol/sdk/types.js';
5
- import { Agent, AgentContext } from '../index.js';
6
- export { S as SSEEdgeClientTransport, a as StreamableHTTPEdgeClientTransport } from '../client-CvaJdLQA.js';
7
- import { Connection, ConnectionContext, WSMessage } from 'partyserver';
8
- import 'cloudflare:workers';
9
- import '@modelcontextprotocol/sdk/client/index.js';
10
- import '../observability/index.js';
11
- import '../ai-types.js';
12
- import 'ai';
13
- import 'zod';
14
- import '@modelcontextprotocol/sdk/shared/protocol.js';
15
- import '@modelcontextprotocol/sdk/client/sse.js';
16
- import '@modelcontextprotocol/sdk/client/streamableHttp.js';
17
- import './do-oauth-client-provider.js';
18
- import '@modelcontextprotocol/sdk/client/auth.js';
19
- import '@modelcontextprotocol/sdk/shared/auth.js';
1
+ import { c as MaybePromise, d as StreamableHTTPEdgeClientTransport, f as SSEEdgeClientTransport, l as ServeOptions, n as MCPClientOAuthCallbackConfig, o as BaseTransportType, r as MCPClientOAuthResult, s as CORSOptions } from "../client-Csp_m13H.js";
2
+ import "../mcp-Dw5vDrY8.js";
3
+ import "../do-oauth-client-provider-DGc5pP0l.js";
4
+ import "../index-DhJCaDWd.js";
5
+ import "../ai-types-D5YoPrBZ.js";
6
+ import { c as ConnectionContext, s as Connection, t as Agent } from "../index-DFqsR7mb.js";
7
+ import { ElicitRequest, ElicitRequestSchema, ElicitResult, ElicitResult as ElicitResult$1, JSONRPCMessage } from "@modelcontextprotocol/sdk/types.js";
8
+ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
9
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
10
+ import { Transport } from "@modelcontextprotocol/sdk/shared/transport.js";
20
11
 
21
- type MaybePromise<T> = T | Promise<T>;
22
- type TransportType = "sse" | "streamable-http";
23
- interface CORSOptions {
24
- origin?: string;
25
- methods?: string;
26
- headers?: string;
27
- maxAge?: number;
28
- exposeHeaders?: string;
12
+ //#region src/mcp/worker-transport.d.ts
13
+ interface WorkerTransportOptions {
14
+ sessionIdGenerator?: () => string;
15
+ enableJsonResponse?: boolean;
16
+ onsessioninitialized?: (sessionId: string) => void;
17
+ corsOptions?: CORSOptions;
29
18
  }
30
- interface ServeOptions {
31
- binding?: string;
32
- corsOptions?: CORSOptions;
33
- transport?: TransportType;
19
+ declare class WorkerTransport implements Transport {
20
+ private started;
21
+ private initialized;
22
+ private sessionIdGenerator?;
23
+ private enableJsonResponse;
24
+ private onsessioninitialized?;
25
+ private standaloneSseStreamId;
26
+ private streamMapping;
27
+ private requestToStreamMapping;
28
+ private requestResponseMap;
29
+ private corsOptions?;
30
+ private protocolVersion?;
31
+ sessionId?: string;
32
+ onclose?: () => void;
33
+ onerror?: (error: Error) => void;
34
+ onmessage?: (message: JSONRPCMessage) => void;
35
+ constructor(options?: WorkerTransportOptions);
36
+ start(): Promise<void>;
37
+ private validateProtocolVersion;
38
+ private getHeaders;
39
+ handleRequest(request: Request, parsedBody?: unknown): Promise<Response>;
40
+ private handleGetRequest;
41
+ private handlePostRequest;
42
+ private handleDeleteRequest;
43
+ private handleOptionsRequest;
44
+ private handleUnsupportedRequest;
45
+ private validateSession;
46
+ close(): Promise<void>;
47
+ send(message: JSONRPCMessage): Promise<void>;
34
48
  }
35
-
49
+ //#endregion
50
+ //#region src/mcp/handler.d.ts
51
+ interface CreateMcpHandlerOptions extends WorkerTransportOptions {
52
+ /**
53
+ * The route path that this MCP handler should respond to.
54
+ * If specified, the handler will only process requests that match this route.
55
+ * @default "/mcp"
56
+ */
57
+ route?: string;
58
+ /**
59
+ * CORS configuration options for handling cross-origin requests.
60
+ * These options are passed to the WorkerTransport which handles adding
61
+ * CORS headers to all responses.
62
+ *
63
+ * Default values are:
64
+ * - origin: "*"
65
+ * - headers: "Content-Type, Accept, Authorization, mcp-session-id, MCP-Protocol-Version"
66
+ * - methods: "GET, POST, DELETE, OPTIONS"
67
+ * - exposeHeaders: "mcp-session-id"
68
+ * - maxAge: 86400
69
+ *
70
+ * Provided options will overwrite the defaults.
71
+ */
72
+ corsOptions?: CORSOptions;
73
+ }
74
+ type OAuthExecutionContext = ExecutionContext & {
75
+ props?: Record<string, unknown>;
76
+ };
77
+ declare function createMcpHandler(server: McpServer | Server, options?: CreateMcpHandlerOptions): (request: Request, env: unknown, ctx: ExecutionContext) => Promise<Response>;
78
+ /**
79
+ * @deprecated This has been renamed to createMcpHandler, and experimental_createMcpHandler will be removed in the next major version
80
+ */
81
+ declare function experimental_createMcpHandler(server: McpServer | Server, options?: CreateMcpHandlerOptions): (request: Request, env: unknown, ctx: ExecutionContext) => Promise<Response>;
82
+ //#endregion
83
+ //#region src/mcp/auth-context.d.ts
84
+ interface McpAuthContext {
85
+ props: Record<string, unknown>;
86
+ }
87
+ declare function getMcpAuthContext(): McpAuthContext | undefined;
88
+ //#endregion
89
+ //#region src/mcp/index.d.ts
36
90
  declare abstract class McpAgent<Env = unknown, State = unknown, Props extends Record<string, unknown> = Record<string, unknown>> extends Agent<Env, State, Props> {
37
- private _transport?;
38
- private _requestIdToConnectionId;
39
- private _standaloneSseConnectionId?;
40
- props?: Props;
41
- abstract server: MaybePromise<McpServer | Server>;
42
- abstract init(): Promise<void>;
43
- constructor(ctx: AgentContext, env: Env);
44
- setInitializeRequest(initializeRequest: JSONRPCMessage): Promise<void>;
45
- getInitializeRequest(): Promise<JSONRPCMessage | undefined>;
46
- /** Read the transport type for this agent.
47
- * This relies on the naming scheme being `sse:${sessionId}`
48
- * or `streamable-http:${sessionId}`.
49
- */
50
- getTransportType(): TransportType;
51
- /** Get the WebSocket for the standalone SSE if any. Streamable HTTP only. */
52
- private getWebSocketForStandaloneSse;
53
- /** Get the unique WebSocket. SSE transport only. */
54
- private getWebSocket;
55
- /** Get the corresponding WebSocket for a responseId. Streamable HTTP only. */
56
- private getWebSocketForResponseID;
57
- /** Returns a new transport matching the type of the Agent. */
58
- private initTransport;
59
- /** Update and store the props */
60
- updateProps(props?: Props): Promise<void>;
61
- /** Sets up the MCP transport and server every time the Agent is started.*/
62
- onStart(props?: Props): Promise<void>;
63
- /** Validates new WebSocket connections. */
64
- onConnect(conn: Connection, _: ConnectionContext): Promise<void>;
65
- /** Handles MCP Messages for Streamable HTTP. */
66
- onMessage(connection: Connection, event: WSMessage): Promise<void>;
67
- /** Remove clients from our cache when they disconnect */
68
- onClose(conn: Connection, _code: number, _reason: string, _wasClean: boolean): Promise<void>;
69
- /** Handles MCP Messages for the legacy SSE transport. */
70
- onSSEMcpMessage(_sessionId: string, messageBody: unknown): Promise<Error | null>;
71
- /** Elicit user input with a message and schema */
72
- elicitInput(params: {
73
- message: string;
74
- requestedSchema: unknown;
75
- }): Promise<ElicitResult>;
76
- /** Wait for elicitation response through storage polling */
77
- private _waitForElicitationResponse;
78
- /** Handle elicitation responses */
79
- private _handleElicitationResponse;
80
- /** Return a handler for the given path for this MCP.
81
- * Defaults to Streamable HTTP transport.
82
- */
83
- static serve(path: string, { binding, corsOptions, transport }?: ServeOptions): {
84
- fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
85
- };
86
- /**
87
- * Legacy api
88
- **/
89
- static mount(path: string, opts?: Omit<ServeOptions, "transport">): {
90
- fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
91
- };
92
- static serveSSE(path: string, opts?: Omit<ServeOptions, "transport">): {
93
- fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
94
- };
91
+ private _transport?;
92
+ props?: Props;
93
+ abstract server: MaybePromise<McpServer | Server>;
94
+ abstract init(): Promise<void>;
95
+ setInitializeRequest(initializeRequest: JSONRPCMessage): Promise<void>;
96
+ getInitializeRequest(): Promise<JSONRPCMessage | undefined>;
97
+ /** Read the transport type for this agent.
98
+ * This relies on the naming scheme being `sse:${sessionId}`
99
+ * or `streamable-http:${sessionId}`.
100
+ */
101
+ getTransportType(): BaseTransportType;
102
+ /** Read the sessionId for this agent.
103
+ * This relies on the naming scheme being `sse:${sessionId}`
104
+ * or `streamable-http:${sessionId}`.
105
+ */
106
+ getSessionId(): string;
107
+ /** Get the unique WebSocket. SSE transport only. */
108
+ private getWebSocket;
109
+ /** Returns a new transport matching the type of the Agent. */
110
+ private initTransport;
111
+ /** Update and store the props */
112
+ updateProps(props?: Props): Promise<void>;
113
+ reinitializeServer(): Promise<void>;
114
+ /** Sets up the MCP transport and server every time the Agent is started.*/
115
+ onStart(props?: Props): Promise<void>;
116
+ /** Validates new WebSocket connections. */
117
+ onConnect(conn: Connection, {
118
+ request: req
119
+ }: ConnectionContext): Promise<void>;
120
+ /** Handles MCP Messages for the legacy SSE transport. */
121
+ onSSEMcpMessage(_sessionId: string, messageBody: unknown): Promise<Error | null>;
122
+ /** Elicit user input with a message and schema */
123
+ elicitInput(params: {
124
+ message: string;
125
+ requestedSchema: unknown;
126
+ }): Promise<ElicitResult$1>;
127
+ /** Wait for elicitation response through storage polling */
128
+ private _waitForElicitationResponse;
129
+ /** Handle elicitation responses */
130
+ private _handleElicitationResponse;
131
+ /** Return a handler for the given path for this MCP.
132
+ * Defaults to Streamable HTTP transport.
133
+ */
134
+ static serve(path: string, {
135
+ binding,
136
+ corsOptions,
137
+ transport,
138
+ jurisdiction
139
+ }?: ServeOptions): {
140
+ fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
141
+ };
142
+ /**
143
+ * Legacy api
144
+ **/
145
+ static mount(path: string, opts?: Omit<ServeOptions, "transport">): {
146
+ fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
147
+ };
148
+ static serveSSE(path: string, opts?: Omit<ServeOptions, "transport">): {
149
+ fetch<Env>(this: void, request: Request, env: Env, ctx: ExecutionContext): Promise<Response>;
150
+ };
95
151
  }
96
-
97
- export { McpAgent };
152
+ //#endregion
153
+ export { type CreateMcpHandlerOptions, type ElicitRequest, ElicitRequestSchema, type ElicitResult, type MCPClientOAuthCallbackConfig, type MCPClientOAuthResult, McpAgent, type McpAuthContext, type OAuthExecutionContext, SSEEdgeClientTransport, StreamableHTTPEdgeClientTransport, WorkerTransport, type WorkerTransportOptions, createMcpHandler, experimental_createMcpHandler, getMcpAuthContext };
154
+ //# sourceMappingURL=index.d.ts.map