agents 0.0.0-ee727ca → 0.0.0-f59e6a2

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.
@@ -0,0 +1,768 @@
1
+ import * as zod from 'zod';
2
+ import { ClientCapabilities, Tool, Prompt, Resource, ResourceTemplate, ServerCapabilities, CallToolRequest, CallToolResultSchema, CompatibilityCallToolResultSchema, ReadResourceRequest, GetPromptRequest } from '@modelcontextprotocol/sdk/types.js';
3
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
4
+ import { SSEClientTransportOptions } from '@modelcontextprotocol/sdk/client/sse.js';
5
+ import { AgentsOAuthProvider } from './do-oauth-client-provider.js';
6
+ import { RequestOptions } from '@modelcontextprotocol/sdk/shared/protocol.js';
7
+ import { ToolSet } from 'ai';
8
+ import '@modelcontextprotocol/sdk/client/auth.js';
9
+ import '@modelcontextprotocol/sdk/shared/auth.js';
10
+
11
+ declare class MCPClientConnection {
12
+ url: URL;
13
+ options: {
14
+ transport: SSEClientTransportOptions & {
15
+ authProvider?: AgentsOAuthProvider;
16
+ };
17
+ client: ConstructorParameters<typeof Client>[1];
18
+ capabilities: ClientCapabilities;
19
+ };
20
+ client: Client;
21
+ connectionState: "authenticating" | "connecting" | "ready" | "discovering" | "failed";
22
+ instructions?: string;
23
+ tools: Tool[];
24
+ prompts: Prompt[];
25
+ resources: Resource[];
26
+ resourceTemplates: ResourceTemplate[];
27
+ serverCapabilities: ServerCapabilities | undefined;
28
+ constructor(url: URL, info: ConstructorParameters<typeof Client>[0], options?: {
29
+ transport: SSEClientTransportOptions & {
30
+ authProvider?: AgentsOAuthProvider;
31
+ };
32
+ client: ConstructorParameters<typeof Client>[1];
33
+ capabilities: ClientCapabilities;
34
+ });
35
+ /**
36
+ * Initialize a client connection
37
+ *
38
+ * @param code Optional OAuth code to initialize the connection with if auth hasn't been initialized
39
+ * @returns
40
+ */
41
+ init(code?: string, clientId?: string): Promise<void>;
42
+ /**
43
+ * Notification handler registration
44
+ */
45
+ registerTools(): Promise<Tool[]>;
46
+ registerResources(): Promise<Resource[]>;
47
+ registerPrompts(): Promise<Prompt[]>;
48
+ registerResourceTemplates(): Promise<ResourceTemplate[]>;
49
+ fetchTools(): Promise<{
50
+ [x: string]: unknown;
51
+ name: string;
52
+ inputSchema: {
53
+ [x: string]: unknown;
54
+ type: "object";
55
+ properties?: {
56
+ [x: string]: unknown;
57
+ } | undefined;
58
+ };
59
+ description?: string | undefined;
60
+ }[]>;
61
+ fetchResources(): Promise<{
62
+ [x: string]: unknown;
63
+ uri: string;
64
+ name: string;
65
+ mimeType?: string | undefined;
66
+ description?: string | undefined;
67
+ }[]>;
68
+ fetchPrompts(): Promise<{
69
+ [x: string]: unknown;
70
+ name: string;
71
+ description?: string | undefined;
72
+ arguments?: {
73
+ [x: string]: unknown;
74
+ name: string;
75
+ description?: string | undefined;
76
+ required?: boolean | undefined;
77
+ }[] | undefined;
78
+ }[]>;
79
+ fetchResourceTemplates(): Promise<{
80
+ [x: string]: unknown;
81
+ name: string;
82
+ uriTemplate: string;
83
+ mimeType?: string | undefined;
84
+ description?: string | undefined;
85
+ }[]>;
86
+ }
87
+
88
+ /**
89
+ * Utility class that aggregates multiple MCP clients into one
90
+ */
91
+ declare class MCPClientManager {
92
+ private name;
93
+ private version;
94
+ mcpConnections: Record<string, MCPClientConnection>;
95
+ private callbackUrls;
96
+ /**
97
+ * @param name Name of the MCP client
98
+ * @param version Version of the MCP Client
99
+ * @param auth Auth paramters if being used to create a DurableObjectOAuthClientProvider
100
+ */
101
+ constructor(name: string, version: string);
102
+ /**
103
+ * Connect to and register an MCP server
104
+ *
105
+ * @param transportConfig Transport config
106
+ * @param clientConfig Client config
107
+ * @param capabilities Client capabilities (i.e. if the client supports roots/sampling)
108
+ */
109
+ connect(url: string, options?: {
110
+ reconnect?: {
111
+ id: string;
112
+ oauthClientId?: string;
113
+ oauthCode?: string;
114
+ };
115
+ transport?: SSEClientTransportOptions & {
116
+ authProvider?: AgentsOAuthProvider;
117
+ };
118
+ client?: ConstructorParameters<typeof Client>[1];
119
+ capabilities?: ClientCapabilities;
120
+ }): Promise<{
121
+ id: string;
122
+ authUrl: string | undefined;
123
+ }>;
124
+ isCallbackRequest(req: Request): boolean;
125
+ handleCallbackRequest(req: Request): Promise<{
126
+ serverId: string;
127
+ }>;
128
+ /**
129
+ * @returns namespaced list of tools
130
+ */
131
+ listTools(): NamespacedData["tools"];
132
+ /**
133
+ * @returns a set of tools that you can use with the AI SDK
134
+ */
135
+ unstable_getAITools(): ToolSet;
136
+ /**
137
+ * @returns namespaced list of prompts
138
+ */
139
+ listPrompts(): NamespacedData["prompts"];
140
+ /**
141
+ * @returns namespaced list of tools
142
+ */
143
+ listResources(): NamespacedData["resources"];
144
+ /**
145
+ * @returns namespaced list of resource templates
146
+ */
147
+ listResourceTemplates(): NamespacedData["resourceTemplates"];
148
+ /**
149
+ * Namespaced version of callTool
150
+ */
151
+ callTool(params: CallToolRequest["params"] & {
152
+ serverId: string;
153
+ }, resultSchema?: typeof CallToolResultSchema | typeof CompatibilityCallToolResultSchema, options?: RequestOptions): Promise<zod.objectOutputType<{
154
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
155
+ } & {
156
+ content: zod.ZodArray<zod.ZodUnion<[zod.ZodObject<{
157
+ type: zod.ZodLiteral<"text">;
158
+ text: zod.ZodString;
159
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
160
+ type: zod.ZodLiteral<"text">;
161
+ text: zod.ZodString;
162
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
163
+ type: zod.ZodLiteral<"text">;
164
+ text: zod.ZodString;
165
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
166
+ type: zod.ZodLiteral<"image">;
167
+ data: zod.ZodString;
168
+ mimeType: zod.ZodString;
169
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
170
+ type: zod.ZodLiteral<"image">;
171
+ data: zod.ZodString;
172
+ mimeType: zod.ZodString;
173
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
174
+ type: zod.ZodLiteral<"image">;
175
+ data: zod.ZodString;
176
+ mimeType: zod.ZodString;
177
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
178
+ type: zod.ZodLiteral<"audio">;
179
+ data: zod.ZodString;
180
+ mimeType: zod.ZodString;
181
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
182
+ type: zod.ZodLiteral<"audio">;
183
+ data: zod.ZodString;
184
+ mimeType: zod.ZodString;
185
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
186
+ type: zod.ZodLiteral<"audio">;
187
+ data: zod.ZodString;
188
+ mimeType: zod.ZodString;
189
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
190
+ type: zod.ZodLiteral<"resource">;
191
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
192
+ uri: zod.ZodString;
193
+ mimeType: zod.ZodOptional<zod.ZodString>;
194
+ }, {
195
+ text: zod.ZodString;
196
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
197
+ uri: zod.ZodString;
198
+ mimeType: zod.ZodOptional<zod.ZodString>;
199
+ }, {
200
+ text: zod.ZodString;
201
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
202
+ uri: zod.ZodString;
203
+ mimeType: zod.ZodOptional<zod.ZodString>;
204
+ }, {
205
+ text: zod.ZodString;
206
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
207
+ uri: zod.ZodString;
208
+ mimeType: zod.ZodOptional<zod.ZodString>;
209
+ }, {
210
+ blob: zod.ZodString;
211
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
212
+ uri: zod.ZodString;
213
+ mimeType: zod.ZodOptional<zod.ZodString>;
214
+ }, {
215
+ blob: zod.ZodString;
216
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
217
+ uri: zod.ZodString;
218
+ mimeType: zod.ZodOptional<zod.ZodString>;
219
+ }, {
220
+ blob: zod.ZodString;
221
+ }>, zod.ZodTypeAny, "passthrough">>]>;
222
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
223
+ type: zod.ZodLiteral<"resource">;
224
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
225
+ uri: zod.ZodString;
226
+ mimeType: zod.ZodOptional<zod.ZodString>;
227
+ }, {
228
+ text: zod.ZodString;
229
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
230
+ uri: zod.ZodString;
231
+ mimeType: zod.ZodOptional<zod.ZodString>;
232
+ }, {
233
+ text: zod.ZodString;
234
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
235
+ uri: zod.ZodString;
236
+ mimeType: zod.ZodOptional<zod.ZodString>;
237
+ }, {
238
+ text: zod.ZodString;
239
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
240
+ uri: zod.ZodString;
241
+ mimeType: zod.ZodOptional<zod.ZodString>;
242
+ }, {
243
+ blob: zod.ZodString;
244
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
245
+ uri: zod.ZodString;
246
+ mimeType: zod.ZodOptional<zod.ZodString>;
247
+ }, {
248
+ blob: zod.ZodString;
249
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
250
+ uri: zod.ZodString;
251
+ mimeType: zod.ZodOptional<zod.ZodString>;
252
+ }, {
253
+ blob: zod.ZodString;
254
+ }>, zod.ZodTypeAny, "passthrough">>]>;
255
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
256
+ type: zod.ZodLiteral<"resource">;
257
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
258
+ uri: zod.ZodString;
259
+ mimeType: zod.ZodOptional<zod.ZodString>;
260
+ }, {
261
+ text: zod.ZodString;
262
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
263
+ uri: zod.ZodString;
264
+ mimeType: zod.ZodOptional<zod.ZodString>;
265
+ }, {
266
+ text: zod.ZodString;
267
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
268
+ uri: zod.ZodString;
269
+ mimeType: zod.ZodOptional<zod.ZodString>;
270
+ }, {
271
+ text: zod.ZodString;
272
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
273
+ uri: zod.ZodString;
274
+ mimeType: zod.ZodOptional<zod.ZodString>;
275
+ }, {
276
+ blob: zod.ZodString;
277
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
278
+ uri: zod.ZodString;
279
+ mimeType: zod.ZodOptional<zod.ZodString>;
280
+ }, {
281
+ blob: zod.ZodString;
282
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
283
+ uri: zod.ZodString;
284
+ mimeType: zod.ZodOptional<zod.ZodString>;
285
+ }, {
286
+ blob: zod.ZodString;
287
+ }>, zod.ZodTypeAny, "passthrough">>]>;
288
+ }, zod.ZodTypeAny, "passthrough">>]>, "many">;
289
+ isError: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
290
+ }, zod.ZodTypeAny, "passthrough"> | zod.objectOutputType<{
291
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
292
+ } & {
293
+ toolResult: zod.ZodUnknown;
294
+ }, zod.ZodTypeAny, "passthrough">>;
295
+ /**
296
+ * Namespaced version of readResource
297
+ */
298
+ readResource(params: ReadResourceRequest["params"] & {
299
+ serverId: string;
300
+ }, options: RequestOptions): Promise<zod.objectOutputType<{
301
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
302
+ } & {
303
+ contents: zod.ZodArray<zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
304
+ uri: zod.ZodString;
305
+ mimeType: zod.ZodOptional<zod.ZodString>;
306
+ }, {
307
+ text: zod.ZodString;
308
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
309
+ uri: zod.ZodString;
310
+ mimeType: zod.ZodOptional<zod.ZodString>;
311
+ }, {
312
+ text: zod.ZodString;
313
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
314
+ uri: zod.ZodString;
315
+ mimeType: zod.ZodOptional<zod.ZodString>;
316
+ }, {
317
+ text: zod.ZodString;
318
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
319
+ uri: zod.ZodString;
320
+ mimeType: zod.ZodOptional<zod.ZodString>;
321
+ }, {
322
+ blob: zod.ZodString;
323
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
324
+ uri: zod.ZodString;
325
+ mimeType: zod.ZodOptional<zod.ZodString>;
326
+ }, {
327
+ blob: zod.ZodString;
328
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
329
+ uri: zod.ZodString;
330
+ mimeType: zod.ZodOptional<zod.ZodString>;
331
+ }, {
332
+ blob: zod.ZodString;
333
+ }>, zod.ZodTypeAny, "passthrough">>]>, "many">;
334
+ }, zod.ZodTypeAny, "passthrough">>;
335
+ /**
336
+ * Namespaced version of getPrompt
337
+ */
338
+ getPrompt(params: GetPromptRequest["params"] & {
339
+ serverId: string;
340
+ }, options: RequestOptions): Promise<zod.objectOutputType<{
341
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
342
+ } & {
343
+ description: zod.ZodOptional<zod.ZodString>;
344
+ messages: zod.ZodArray<zod.ZodObject<{
345
+ role: zod.ZodEnum<["user", "assistant"]>;
346
+ content: zod.ZodUnion<[zod.ZodObject<{
347
+ type: zod.ZodLiteral<"text">;
348
+ text: zod.ZodString;
349
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
350
+ type: zod.ZodLiteral<"text">;
351
+ text: zod.ZodString;
352
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
353
+ type: zod.ZodLiteral<"text">;
354
+ text: zod.ZodString;
355
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
356
+ type: zod.ZodLiteral<"image">;
357
+ data: zod.ZodString;
358
+ mimeType: zod.ZodString;
359
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
360
+ type: zod.ZodLiteral<"image">;
361
+ data: zod.ZodString;
362
+ mimeType: zod.ZodString;
363
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
364
+ type: zod.ZodLiteral<"image">;
365
+ data: zod.ZodString;
366
+ mimeType: zod.ZodString;
367
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
368
+ type: zod.ZodLiteral<"audio">;
369
+ data: zod.ZodString;
370
+ mimeType: zod.ZodString;
371
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
372
+ type: zod.ZodLiteral<"audio">;
373
+ data: zod.ZodString;
374
+ mimeType: zod.ZodString;
375
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
376
+ type: zod.ZodLiteral<"audio">;
377
+ data: zod.ZodString;
378
+ mimeType: zod.ZodString;
379
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
380
+ type: zod.ZodLiteral<"resource">;
381
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
382
+ uri: zod.ZodString;
383
+ mimeType: zod.ZodOptional<zod.ZodString>;
384
+ }, {
385
+ text: zod.ZodString;
386
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
387
+ uri: zod.ZodString;
388
+ mimeType: zod.ZodOptional<zod.ZodString>;
389
+ }, {
390
+ text: zod.ZodString;
391
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
392
+ uri: zod.ZodString;
393
+ mimeType: zod.ZodOptional<zod.ZodString>;
394
+ }, {
395
+ text: zod.ZodString;
396
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
397
+ uri: zod.ZodString;
398
+ mimeType: zod.ZodOptional<zod.ZodString>;
399
+ }, {
400
+ blob: zod.ZodString;
401
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
402
+ uri: zod.ZodString;
403
+ mimeType: zod.ZodOptional<zod.ZodString>;
404
+ }, {
405
+ blob: zod.ZodString;
406
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
407
+ uri: zod.ZodString;
408
+ mimeType: zod.ZodOptional<zod.ZodString>;
409
+ }, {
410
+ blob: zod.ZodString;
411
+ }>, zod.ZodTypeAny, "passthrough">>]>;
412
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
413
+ type: zod.ZodLiteral<"resource">;
414
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
415
+ uri: zod.ZodString;
416
+ mimeType: zod.ZodOptional<zod.ZodString>;
417
+ }, {
418
+ text: zod.ZodString;
419
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
420
+ uri: zod.ZodString;
421
+ mimeType: zod.ZodOptional<zod.ZodString>;
422
+ }, {
423
+ text: zod.ZodString;
424
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
425
+ uri: zod.ZodString;
426
+ mimeType: zod.ZodOptional<zod.ZodString>;
427
+ }, {
428
+ text: zod.ZodString;
429
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
430
+ uri: zod.ZodString;
431
+ mimeType: zod.ZodOptional<zod.ZodString>;
432
+ }, {
433
+ blob: zod.ZodString;
434
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
435
+ uri: zod.ZodString;
436
+ mimeType: zod.ZodOptional<zod.ZodString>;
437
+ }, {
438
+ blob: zod.ZodString;
439
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
440
+ uri: zod.ZodString;
441
+ mimeType: zod.ZodOptional<zod.ZodString>;
442
+ }, {
443
+ blob: zod.ZodString;
444
+ }>, zod.ZodTypeAny, "passthrough">>]>;
445
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
446
+ type: zod.ZodLiteral<"resource">;
447
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
448
+ uri: zod.ZodString;
449
+ mimeType: zod.ZodOptional<zod.ZodString>;
450
+ }, {
451
+ text: zod.ZodString;
452
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
453
+ uri: zod.ZodString;
454
+ mimeType: zod.ZodOptional<zod.ZodString>;
455
+ }, {
456
+ text: zod.ZodString;
457
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
458
+ uri: zod.ZodString;
459
+ mimeType: zod.ZodOptional<zod.ZodString>;
460
+ }, {
461
+ text: zod.ZodString;
462
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
463
+ uri: zod.ZodString;
464
+ mimeType: zod.ZodOptional<zod.ZodString>;
465
+ }, {
466
+ blob: zod.ZodString;
467
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
468
+ uri: zod.ZodString;
469
+ mimeType: zod.ZodOptional<zod.ZodString>;
470
+ }, {
471
+ blob: zod.ZodString;
472
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
473
+ uri: zod.ZodString;
474
+ mimeType: zod.ZodOptional<zod.ZodString>;
475
+ }, {
476
+ blob: zod.ZodString;
477
+ }>, zod.ZodTypeAny, "passthrough">>]>;
478
+ }, zod.ZodTypeAny, "passthrough">>]>;
479
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
480
+ role: zod.ZodEnum<["user", "assistant"]>;
481
+ content: zod.ZodUnion<[zod.ZodObject<{
482
+ type: zod.ZodLiteral<"text">;
483
+ text: zod.ZodString;
484
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
485
+ type: zod.ZodLiteral<"text">;
486
+ text: zod.ZodString;
487
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
488
+ type: zod.ZodLiteral<"text">;
489
+ text: zod.ZodString;
490
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
491
+ type: zod.ZodLiteral<"image">;
492
+ data: zod.ZodString;
493
+ mimeType: zod.ZodString;
494
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
495
+ type: zod.ZodLiteral<"image">;
496
+ data: zod.ZodString;
497
+ mimeType: zod.ZodString;
498
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
499
+ type: zod.ZodLiteral<"image">;
500
+ data: zod.ZodString;
501
+ mimeType: zod.ZodString;
502
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
503
+ type: zod.ZodLiteral<"audio">;
504
+ data: zod.ZodString;
505
+ mimeType: zod.ZodString;
506
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
507
+ type: zod.ZodLiteral<"audio">;
508
+ data: zod.ZodString;
509
+ mimeType: zod.ZodString;
510
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
511
+ type: zod.ZodLiteral<"audio">;
512
+ data: zod.ZodString;
513
+ mimeType: zod.ZodString;
514
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
515
+ type: zod.ZodLiteral<"resource">;
516
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
517
+ uri: zod.ZodString;
518
+ mimeType: zod.ZodOptional<zod.ZodString>;
519
+ }, {
520
+ text: zod.ZodString;
521
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
522
+ uri: zod.ZodString;
523
+ mimeType: zod.ZodOptional<zod.ZodString>;
524
+ }, {
525
+ text: zod.ZodString;
526
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
527
+ uri: zod.ZodString;
528
+ mimeType: zod.ZodOptional<zod.ZodString>;
529
+ }, {
530
+ text: zod.ZodString;
531
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
532
+ uri: zod.ZodString;
533
+ mimeType: zod.ZodOptional<zod.ZodString>;
534
+ }, {
535
+ blob: zod.ZodString;
536
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
537
+ uri: zod.ZodString;
538
+ mimeType: zod.ZodOptional<zod.ZodString>;
539
+ }, {
540
+ blob: zod.ZodString;
541
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
542
+ uri: zod.ZodString;
543
+ mimeType: zod.ZodOptional<zod.ZodString>;
544
+ }, {
545
+ blob: zod.ZodString;
546
+ }>, zod.ZodTypeAny, "passthrough">>]>;
547
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
548
+ type: zod.ZodLiteral<"resource">;
549
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
550
+ uri: zod.ZodString;
551
+ mimeType: zod.ZodOptional<zod.ZodString>;
552
+ }, {
553
+ text: zod.ZodString;
554
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
555
+ uri: zod.ZodString;
556
+ mimeType: zod.ZodOptional<zod.ZodString>;
557
+ }, {
558
+ text: zod.ZodString;
559
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
560
+ uri: zod.ZodString;
561
+ mimeType: zod.ZodOptional<zod.ZodString>;
562
+ }, {
563
+ text: zod.ZodString;
564
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
565
+ uri: zod.ZodString;
566
+ mimeType: zod.ZodOptional<zod.ZodString>;
567
+ }, {
568
+ blob: zod.ZodString;
569
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
570
+ uri: zod.ZodString;
571
+ mimeType: zod.ZodOptional<zod.ZodString>;
572
+ }, {
573
+ blob: zod.ZodString;
574
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
575
+ uri: zod.ZodString;
576
+ mimeType: zod.ZodOptional<zod.ZodString>;
577
+ }, {
578
+ blob: zod.ZodString;
579
+ }>, zod.ZodTypeAny, "passthrough">>]>;
580
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
581
+ type: zod.ZodLiteral<"resource">;
582
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
583
+ uri: zod.ZodString;
584
+ mimeType: zod.ZodOptional<zod.ZodString>;
585
+ }, {
586
+ text: zod.ZodString;
587
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
588
+ uri: zod.ZodString;
589
+ mimeType: zod.ZodOptional<zod.ZodString>;
590
+ }, {
591
+ text: zod.ZodString;
592
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
593
+ uri: zod.ZodString;
594
+ mimeType: zod.ZodOptional<zod.ZodString>;
595
+ }, {
596
+ text: zod.ZodString;
597
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
598
+ uri: zod.ZodString;
599
+ mimeType: zod.ZodOptional<zod.ZodString>;
600
+ }, {
601
+ blob: zod.ZodString;
602
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
603
+ uri: zod.ZodString;
604
+ mimeType: zod.ZodOptional<zod.ZodString>;
605
+ }, {
606
+ blob: zod.ZodString;
607
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
608
+ uri: zod.ZodString;
609
+ mimeType: zod.ZodOptional<zod.ZodString>;
610
+ }, {
611
+ blob: zod.ZodString;
612
+ }>, zod.ZodTypeAny, "passthrough">>]>;
613
+ }, zod.ZodTypeAny, "passthrough">>]>;
614
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
615
+ role: zod.ZodEnum<["user", "assistant"]>;
616
+ content: zod.ZodUnion<[zod.ZodObject<{
617
+ type: zod.ZodLiteral<"text">;
618
+ text: zod.ZodString;
619
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
620
+ type: zod.ZodLiteral<"text">;
621
+ text: zod.ZodString;
622
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
623
+ type: zod.ZodLiteral<"text">;
624
+ text: zod.ZodString;
625
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
626
+ type: zod.ZodLiteral<"image">;
627
+ data: zod.ZodString;
628
+ mimeType: zod.ZodString;
629
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
630
+ type: zod.ZodLiteral<"image">;
631
+ data: zod.ZodString;
632
+ mimeType: zod.ZodString;
633
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
634
+ type: zod.ZodLiteral<"image">;
635
+ data: zod.ZodString;
636
+ mimeType: zod.ZodString;
637
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
638
+ type: zod.ZodLiteral<"audio">;
639
+ data: zod.ZodString;
640
+ mimeType: zod.ZodString;
641
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
642
+ type: zod.ZodLiteral<"audio">;
643
+ data: zod.ZodString;
644
+ mimeType: zod.ZodString;
645
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
646
+ type: zod.ZodLiteral<"audio">;
647
+ data: zod.ZodString;
648
+ mimeType: zod.ZodString;
649
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
650
+ type: zod.ZodLiteral<"resource">;
651
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
652
+ uri: zod.ZodString;
653
+ mimeType: zod.ZodOptional<zod.ZodString>;
654
+ }, {
655
+ text: zod.ZodString;
656
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
657
+ uri: zod.ZodString;
658
+ mimeType: zod.ZodOptional<zod.ZodString>;
659
+ }, {
660
+ text: zod.ZodString;
661
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
662
+ uri: zod.ZodString;
663
+ mimeType: zod.ZodOptional<zod.ZodString>;
664
+ }, {
665
+ text: zod.ZodString;
666
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
667
+ uri: zod.ZodString;
668
+ mimeType: zod.ZodOptional<zod.ZodString>;
669
+ }, {
670
+ blob: zod.ZodString;
671
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
672
+ uri: zod.ZodString;
673
+ mimeType: zod.ZodOptional<zod.ZodString>;
674
+ }, {
675
+ blob: zod.ZodString;
676
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
677
+ uri: zod.ZodString;
678
+ mimeType: zod.ZodOptional<zod.ZodString>;
679
+ }, {
680
+ blob: zod.ZodString;
681
+ }>, zod.ZodTypeAny, "passthrough">>]>;
682
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
683
+ type: zod.ZodLiteral<"resource">;
684
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
685
+ uri: zod.ZodString;
686
+ mimeType: zod.ZodOptional<zod.ZodString>;
687
+ }, {
688
+ text: zod.ZodString;
689
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
690
+ uri: zod.ZodString;
691
+ mimeType: zod.ZodOptional<zod.ZodString>;
692
+ }, {
693
+ text: zod.ZodString;
694
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
695
+ uri: zod.ZodString;
696
+ mimeType: zod.ZodOptional<zod.ZodString>;
697
+ }, {
698
+ text: zod.ZodString;
699
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
700
+ uri: zod.ZodString;
701
+ mimeType: zod.ZodOptional<zod.ZodString>;
702
+ }, {
703
+ blob: zod.ZodString;
704
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
705
+ uri: zod.ZodString;
706
+ mimeType: zod.ZodOptional<zod.ZodString>;
707
+ }, {
708
+ blob: zod.ZodString;
709
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
710
+ uri: zod.ZodString;
711
+ mimeType: zod.ZodOptional<zod.ZodString>;
712
+ }, {
713
+ blob: zod.ZodString;
714
+ }>, zod.ZodTypeAny, "passthrough">>]>;
715
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
716
+ type: zod.ZodLiteral<"resource">;
717
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
718
+ uri: zod.ZodString;
719
+ mimeType: zod.ZodOptional<zod.ZodString>;
720
+ }, {
721
+ text: zod.ZodString;
722
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
723
+ uri: zod.ZodString;
724
+ mimeType: zod.ZodOptional<zod.ZodString>;
725
+ }, {
726
+ text: zod.ZodString;
727
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
728
+ uri: zod.ZodString;
729
+ mimeType: zod.ZodOptional<zod.ZodString>;
730
+ }, {
731
+ text: zod.ZodString;
732
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
733
+ uri: zod.ZodString;
734
+ mimeType: zod.ZodOptional<zod.ZodString>;
735
+ }, {
736
+ blob: zod.ZodString;
737
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
738
+ uri: zod.ZodString;
739
+ mimeType: zod.ZodOptional<zod.ZodString>;
740
+ }, {
741
+ blob: zod.ZodString;
742
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
743
+ uri: zod.ZodString;
744
+ mimeType: zod.ZodOptional<zod.ZodString>;
745
+ }, {
746
+ blob: zod.ZodString;
747
+ }>, zod.ZodTypeAny, "passthrough">>]>;
748
+ }, zod.ZodTypeAny, "passthrough">>]>;
749
+ }, zod.ZodTypeAny, "passthrough">>, "many">;
750
+ }, zod.ZodTypeAny, "passthrough">>;
751
+ }
752
+ type NamespacedData = {
753
+ tools: (Tool & {
754
+ serverId: string;
755
+ })[];
756
+ prompts: (Prompt & {
757
+ serverId: string;
758
+ })[];
759
+ resources: (Resource & {
760
+ serverId: string;
761
+ })[];
762
+ resourceTemplates: (ResourceTemplate & {
763
+ serverId: string;
764
+ })[];
765
+ };
766
+ declare function getNamespacedData<T extends keyof NamespacedData>(mcpClients: Record<string, MCPClientConnection>, type: T): NamespacedData[T];
767
+
768
+ export { MCPClientManager, getNamespacedData };