agents 0.0.0-dfa677f → 0.0.0-e2d7b5c

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,777 @@
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
+ * Closes all connections to MCP servers
138
+ */
139
+ closeAllConnections(): Promise<void[]>;
140
+ /**
141
+ * Closes a connection to an MCP server
142
+ * @param id The id of the connection to close
143
+ */
144
+ closeConnection(id: string): Promise<void>;
145
+ /**
146
+ * @returns namespaced list of prompts
147
+ */
148
+ listPrompts(): NamespacedData["prompts"];
149
+ /**
150
+ * @returns namespaced list of tools
151
+ */
152
+ listResources(): NamespacedData["resources"];
153
+ /**
154
+ * @returns namespaced list of resource templates
155
+ */
156
+ listResourceTemplates(): NamespacedData["resourceTemplates"];
157
+ /**
158
+ * Namespaced version of callTool
159
+ */
160
+ callTool(params: CallToolRequest["params"] & {
161
+ serverId: string;
162
+ }, resultSchema?: typeof CallToolResultSchema | typeof CompatibilityCallToolResultSchema, options?: RequestOptions): Promise<zod.objectOutputType<{
163
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
164
+ } & {
165
+ content: zod.ZodArray<zod.ZodUnion<[zod.ZodObject<{
166
+ type: zod.ZodLiteral<"text">;
167
+ text: zod.ZodString;
168
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
169
+ type: zod.ZodLiteral<"text">;
170
+ text: zod.ZodString;
171
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
172
+ type: zod.ZodLiteral<"text">;
173
+ text: zod.ZodString;
174
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
175
+ type: zod.ZodLiteral<"image">;
176
+ data: zod.ZodString;
177
+ mimeType: zod.ZodString;
178
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
179
+ type: zod.ZodLiteral<"image">;
180
+ data: zod.ZodString;
181
+ mimeType: zod.ZodString;
182
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
183
+ type: zod.ZodLiteral<"image">;
184
+ data: zod.ZodString;
185
+ mimeType: zod.ZodString;
186
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
187
+ type: zod.ZodLiteral<"audio">;
188
+ data: zod.ZodString;
189
+ mimeType: zod.ZodString;
190
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
191
+ type: zod.ZodLiteral<"audio">;
192
+ data: zod.ZodString;
193
+ mimeType: zod.ZodString;
194
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
195
+ type: zod.ZodLiteral<"audio">;
196
+ data: zod.ZodString;
197
+ mimeType: zod.ZodString;
198
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
199
+ type: zod.ZodLiteral<"resource">;
200
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
201
+ uri: zod.ZodString;
202
+ mimeType: zod.ZodOptional<zod.ZodString>;
203
+ }, {
204
+ text: zod.ZodString;
205
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
206
+ uri: zod.ZodString;
207
+ mimeType: zod.ZodOptional<zod.ZodString>;
208
+ }, {
209
+ text: zod.ZodString;
210
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
211
+ uri: zod.ZodString;
212
+ mimeType: zod.ZodOptional<zod.ZodString>;
213
+ }, {
214
+ text: zod.ZodString;
215
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
216
+ uri: zod.ZodString;
217
+ mimeType: zod.ZodOptional<zod.ZodString>;
218
+ }, {
219
+ blob: zod.ZodString;
220
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
221
+ uri: zod.ZodString;
222
+ mimeType: zod.ZodOptional<zod.ZodString>;
223
+ }, {
224
+ blob: zod.ZodString;
225
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
226
+ uri: zod.ZodString;
227
+ mimeType: zod.ZodOptional<zod.ZodString>;
228
+ }, {
229
+ blob: zod.ZodString;
230
+ }>, zod.ZodTypeAny, "passthrough">>]>;
231
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
232
+ type: zod.ZodLiteral<"resource">;
233
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
234
+ uri: zod.ZodString;
235
+ mimeType: zod.ZodOptional<zod.ZodString>;
236
+ }, {
237
+ text: zod.ZodString;
238
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
239
+ uri: zod.ZodString;
240
+ mimeType: zod.ZodOptional<zod.ZodString>;
241
+ }, {
242
+ text: zod.ZodString;
243
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
244
+ uri: zod.ZodString;
245
+ mimeType: zod.ZodOptional<zod.ZodString>;
246
+ }, {
247
+ text: zod.ZodString;
248
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
249
+ uri: zod.ZodString;
250
+ mimeType: zod.ZodOptional<zod.ZodString>;
251
+ }, {
252
+ blob: zod.ZodString;
253
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
254
+ uri: zod.ZodString;
255
+ mimeType: zod.ZodOptional<zod.ZodString>;
256
+ }, {
257
+ blob: zod.ZodString;
258
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
259
+ uri: zod.ZodString;
260
+ mimeType: zod.ZodOptional<zod.ZodString>;
261
+ }, {
262
+ blob: zod.ZodString;
263
+ }>, zod.ZodTypeAny, "passthrough">>]>;
264
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
265
+ type: zod.ZodLiteral<"resource">;
266
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
267
+ uri: zod.ZodString;
268
+ mimeType: zod.ZodOptional<zod.ZodString>;
269
+ }, {
270
+ text: zod.ZodString;
271
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
272
+ uri: zod.ZodString;
273
+ mimeType: zod.ZodOptional<zod.ZodString>;
274
+ }, {
275
+ text: zod.ZodString;
276
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
277
+ uri: zod.ZodString;
278
+ mimeType: zod.ZodOptional<zod.ZodString>;
279
+ }, {
280
+ text: zod.ZodString;
281
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
282
+ uri: zod.ZodString;
283
+ mimeType: zod.ZodOptional<zod.ZodString>;
284
+ }, {
285
+ blob: zod.ZodString;
286
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
287
+ uri: zod.ZodString;
288
+ mimeType: zod.ZodOptional<zod.ZodString>;
289
+ }, {
290
+ blob: zod.ZodString;
291
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
292
+ uri: zod.ZodString;
293
+ mimeType: zod.ZodOptional<zod.ZodString>;
294
+ }, {
295
+ blob: zod.ZodString;
296
+ }>, zod.ZodTypeAny, "passthrough">>]>;
297
+ }, zod.ZodTypeAny, "passthrough">>]>, "many">;
298
+ isError: zod.ZodOptional<zod.ZodDefault<zod.ZodBoolean>>;
299
+ }, zod.ZodTypeAny, "passthrough"> | zod.objectOutputType<{
300
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
301
+ } & {
302
+ toolResult: zod.ZodUnknown;
303
+ }, zod.ZodTypeAny, "passthrough">>;
304
+ /**
305
+ * Namespaced version of readResource
306
+ */
307
+ readResource(params: ReadResourceRequest["params"] & {
308
+ serverId: string;
309
+ }, options: RequestOptions): Promise<zod.objectOutputType<{
310
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
311
+ } & {
312
+ contents: zod.ZodArray<zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
313
+ uri: zod.ZodString;
314
+ mimeType: zod.ZodOptional<zod.ZodString>;
315
+ }, {
316
+ text: zod.ZodString;
317
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
318
+ uri: zod.ZodString;
319
+ mimeType: zod.ZodOptional<zod.ZodString>;
320
+ }, {
321
+ text: zod.ZodString;
322
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
323
+ uri: zod.ZodString;
324
+ mimeType: zod.ZodOptional<zod.ZodString>;
325
+ }, {
326
+ text: zod.ZodString;
327
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
328
+ uri: zod.ZodString;
329
+ mimeType: zod.ZodOptional<zod.ZodString>;
330
+ }, {
331
+ blob: zod.ZodString;
332
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
333
+ uri: zod.ZodString;
334
+ mimeType: zod.ZodOptional<zod.ZodString>;
335
+ }, {
336
+ blob: zod.ZodString;
337
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
338
+ uri: zod.ZodString;
339
+ mimeType: zod.ZodOptional<zod.ZodString>;
340
+ }, {
341
+ blob: zod.ZodString;
342
+ }>, zod.ZodTypeAny, "passthrough">>]>, "many">;
343
+ }, zod.ZodTypeAny, "passthrough">>;
344
+ /**
345
+ * Namespaced version of getPrompt
346
+ */
347
+ getPrompt(params: GetPromptRequest["params"] & {
348
+ serverId: string;
349
+ }, options: RequestOptions): Promise<zod.objectOutputType<{
350
+ _meta: zod.ZodOptional<zod.ZodObject<{}, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{}, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{}, zod.ZodTypeAny, "passthrough">>>;
351
+ } & {
352
+ description: zod.ZodOptional<zod.ZodString>;
353
+ messages: zod.ZodArray<zod.ZodObject<{
354
+ role: zod.ZodEnum<["user", "assistant"]>;
355
+ content: zod.ZodUnion<[zod.ZodObject<{
356
+ type: zod.ZodLiteral<"text">;
357
+ text: zod.ZodString;
358
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
359
+ type: zod.ZodLiteral<"text">;
360
+ text: zod.ZodString;
361
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
362
+ type: zod.ZodLiteral<"text">;
363
+ text: zod.ZodString;
364
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
365
+ type: zod.ZodLiteral<"image">;
366
+ data: zod.ZodString;
367
+ mimeType: zod.ZodString;
368
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
369
+ type: zod.ZodLiteral<"image">;
370
+ data: zod.ZodString;
371
+ mimeType: zod.ZodString;
372
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
373
+ type: zod.ZodLiteral<"image">;
374
+ data: zod.ZodString;
375
+ mimeType: zod.ZodString;
376
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
377
+ type: zod.ZodLiteral<"audio">;
378
+ data: zod.ZodString;
379
+ mimeType: zod.ZodString;
380
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
381
+ type: zod.ZodLiteral<"audio">;
382
+ data: zod.ZodString;
383
+ mimeType: zod.ZodString;
384
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
385
+ type: zod.ZodLiteral<"audio">;
386
+ data: zod.ZodString;
387
+ mimeType: zod.ZodString;
388
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
389
+ type: zod.ZodLiteral<"resource">;
390
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
391
+ uri: zod.ZodString;
392
+ mimeType: zod.ZodOptional<zod.ZodString>;
393
+ }, {
394
+ text: zod.ZodString;
395
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
396
+ uri: zod.ZodString;
397
+ mimeType: zod.ZodOptional<zod.ZodString>;
398
+ }, {
399
+ text: zod.ZodString;
400
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
401
+ uri: zod.ZodString;
402
+ mimeType: zod.ZodOptional<zod.ZodString>;
403
+ }, {
404
+ text: zod.ZodString;
405
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
406
+ uri: zod.ZodString;
407
+ mimeType: zod.ZodOptional<zod.ZodString>;
408
+ }, {
409
+ blob: zod.ZodString;
410
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
411
+ uri: zod.ZodString;
412
+ mimeType: zod.ZodOptional<zod.ZodString>;
413
+ }, {
414
+ blob: zod.ZodString;
415
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
416
+ uri: zod.ZodString;
417
+ mimeType: zod.ZodOptional<zod.ZodString>;
418
+ }, {
419
+ blob: zod.ZodString;
420
+ }>, zod.ZodTypeAny, "passthrough">>]>;
421
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
422
+ type: zod.ZodLiteral<"resource">;
423
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
424
+ uri: zod.ZodString;
425
+ mimeType: zod.ZodOptional<zod.ZodString>;
426
+ }, {
427
+ text: zod.ZodString;
428
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
429
+ uri: zod.ZodString;
430
+ mimeType: zod.ZodOptional<zod.ZodString>;
431
+ }, {
432
+ text: zod.ZodString;
433
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
434
+ uri: zod.ZodString;
435
+ mimeType: zod.ZodOptional<zod.ZodString>;
436
+ }, {
437
+ text: zod.ZodString;
438
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
439
+ uri: zod.ZodString;
440
+ mimeType: zod.ZodOptional<zod.ZodString>;
441
+ }, {
442
+ blob: zod.ZodString;
443
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
444
+ uri: zod.ZodString;
445
+ mimeType: zod.ZodOptional<zod.ZodString>;
446
+ }, {
447
+ blob: zod.ZodString;
448
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
449
+ uri: zod.ZodString;
450
+ mimeType: zod.ZodOptional<zod.ZodString>;
451
+ }, {
452
+ blob: zod.ZodString;
453
+ }>, zod.ZodTypeAny, "passthrough">>]>;
454
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
455
+ type: zod.ZodLiteral<"resource">;
456
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
457
+ uri: zod.ZodString;
458
+ mimeType: zod.ZodOptional<zod.ZodString>;
459
+ }, {
460
+ text: zod.ZodString;
461
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
462
+ uri: zod.ZodString;
463
+ mimeType: zod.ZodOptional<zod.ZodString>;
464
+ }, {
465
+ text: zod.ZodString;
466
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
467
+ uri: zod.ZodString;
468
+ mimeType: zod.ZodOptional<zod.ZodString>;
469
+ }, {
470
+ text: zod.ZodString;
471
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
472
+ uri: zod.ZodString;
473
+ mimeType: zod.ZodOptional<zod.ZodString>;
474
+ }, {
475
+ blob: zod.ZodString;
476
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
477
+ uri: zod.ZodString;
478
+ mimeType: zod.ZodOptional<zod.ZodString>;
479
+ }, {
480
+ blob: zod.ZodString;
481
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
482
+ uri: zod.ZodString;
483
+ mimeType: zod.ZodOptional<zod.ZodString>;
484
+ }, {
485
+ blob: zod.ZodString;
486
+ }>, zod.ZodTypeAny, "passthrough">>]>;
487
+ }, zod.ZodTypeAny, "passthrough">>]>;
488
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
489
+ role: zod.ZodEnum<["user", "assistant"]>;
490
+ content: zod.ZodUnion<[zod.ZodObject<{
491
+ type: zod.ZodLiteral<"text">;
492
+ text: zod.ZodString;
493
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
494
+ type: zod.ZodLiteral<"text">;
495
+ text: zod.ZodString;
496
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
497
+ type: zod.ZodLiteral<"text">;
498
+ text: zod.ZodString;
499
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
500
+ type: zod.ZodLiteral<"image">;
501
+ data: zod.ZodString;
502
+ mimeType: zod.ZodString;
503
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
504
+ type: zod.ZodLiteral<"image">;
505
+ data: zod.ZodString;
506
+ mimeType: zod.ZodString;
507
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
508
+ type: zod.ZodLiteral<"image">;
509
+ data: zod.ZodString;
510
+ mimeType: zod.ZodString;
511
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
512
+ type: zod.ZodLiteral<"audio">;
513
+ data: zod.ZodString;
514
+ mimeType: zod.ZodString;
515
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
516
+ type: zod.ZodLiteral<"audio">;
517
+ data: zod.ZodString;
518
+ mimeType: zod.ZodString;
519
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
520
+ type: zod.ZodLiteral<"audio">;
521
+ data: zod.ZodString;
522
+ mimeType: zod.ZodString;
523
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
524
+ type: zod.ZodLiteral<"resource">;
525
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
526
+ uri: zod.ZodString;
527
+ mimeType: zod.ZodOptional<zod.ZodString>;
528
+ }, {
529
+ text: zod.ZodString;
530
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
531
+ uri: zod.ZodString;
532
+ mimeType: zod.ZodOptional<zod.ZodString>;
533
+ }, {
534
+ text: zod.ZodString;
535
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
536
+ uri: zod.ZodString;
537
+ mimeType: zod.ZodOptional<zod.ZodString>;
538
+ }, {
539
+ text: zod.ZodString;
540
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
541
+ uri: zod.ZodString;
542
+ mimeType: zod.ZodOptional<zod.ZodString>;
543
+ }, {
544
+ blob: zod.ZodString;
545
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
546
+ uri: zod.ZodString;
547
+ mimeType: zod.ZodOptional<zod.ZodString>;
548
+ }, {
549
+ blob: zod.ZodString;
550
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
551
+ uri: zod.ZodString;
552
+ mimeType: zod.ZodOptional<zod.ZodString>;
553
+ }, {
554
+ blob: zod.ZodString;
555
+ }>, zod.ZodTypeAny, "passthrough">>]>;
556
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
557
+ type: zod.ZodLiteral<"resource">;
558
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
559
+ uri: zod.ZodString;
560
+ mimeType: zod.ZodOptional<zod.ZodString>;
561
+ }, {
562
+ text: zod.ZodString;
563
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
564
+ uri: zod.ZodString;
565
+ mimeType: zod.ZodOptional<zod.ZodString>;
566
+ }, {
567
+ text: zod.ZodString;
568
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
569
+ uri: zod.ZodString;
570
+ mimeType: zod.ZodOptional<zod.ZodString>;
571
+ }, {
572
+ text: zod.ZodString;
573
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
574
+ uri: zod.ZodString;
575
+ mimeType: zod.ZodOptional<zod.ZodString>;
576
+ }, {
577
+ blob: zod.ZodString;
578
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
579
+ uri: zod.ZodString;
580
+ mimeType: zod.ZodOptional<zod.ZodString>;
581
+ }, {
582
+ blob: zod.ZodString;
583
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
584
+ uri: zod.ZodString;
585
+ mimeType: zod.ZodOptional<zod.ZodString>;
586
+ }, {
587
+ blob: zod.ZodString;
588
+ }>, zod.ZodTypeAny, "passthrough">>]>;
589
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
590
+ type: zod.ZodLiteral<"resource">;
591
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
592
+ uri: zod.ZodString;
593
+ mimeType: zod.ZodOptional<zod.ZodString>;
594
+ }, {
595
+ text: zod.ZodString;
596
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
597
+ uri: zod.ZodString;
598
+ mimeType: zod.ZodOptional<zod.ZodString>;
599
+ }, {
600
+ text: zod.ZodString;
601
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
602
+ uri: zod.ZodString;
603
+ mimeType: zod.ZodOptional<zod.ZodString>;
604
+ }, {
605
+ text: zod.ZodString;
606
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
607
+ uri: zod.ZodString;
608
+ mimeType: zod.ZodOptional<zod.ZodString>;
609
+ }, {
610
+ blob: zod.ZodString;
611
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
612
+ uri: zod.ZodString;
613
+ mimeType: zod.ZodOptional<zod.ZodString>;
614
+ }, {
615
+ blob: zod.ZodString;
616
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
617
+ uri: zod.ZodString;
618
+ mimeType: zod.ZodOptional<zod.ZodString>;
619
+ }, {
620
+ blob: zod.ZodString;
621
+ }>, zod.ZodTypeAny, "passthrough">>]>;
622
+ }, zod.ZodTypeAny, "passthrough">>]>;
623
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
624
+ role: zod.ZodEnum<["user", "assistant"]>;
625
+ content: zod.ZodUnion<[zod.ZodObject<{
626
+ type: zod.ZodLiteral<"text">;
627
+ text: zod.ZodString;
628
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
629
+ type: zod.ZodLiteral<"text">;
630
+ text: zod.ZodString;
631
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
632
+ type: zod.ZodLiteral<"text">;
633
+ text: zod.ZodString;
634
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
635
+ type: zod.ZodLiteral<"image">;
636
+ data: zod.ZodString;
637
+ mimeType: zod.ZodString;
638
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
639
+ type: zod.ZodLiteral<"image">;
640
+ data: zod.ZodString;
641
+ mimeType: zod.ZodString;
642
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
643
+ type: zod.ZodLiteral<"image">;
644
+ data: zod.ZodString;
645
+ mimeType: zod.ZodString;
646
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
647
+ type: zod.ZodLiteral<"audio">;
648
+ data: zod.ZodString;
649
+ mimeType: zod.ZodString;
650
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
651
+ type: zod.ZodLiteral<"audio">;
652
+ data: zod.ZodString;
653
+ mimeType: zod.ZodString;
654
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
655
+ type: zod.ZodLiteral<"audio">;
656
+ data: zod.ZodString;
657
+ mimeType: zod.ZodString;
658
+ }, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<{
659
+ type: zod.ZodLiteral<"resource">;
660
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
661
+ uri: zod.ZodString;
662
+ mimeType: zod.ZodOptional<zod.ZodString>;
663
+ }, {
664
+ text: zod.ZodString;
665
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
666
+ uri: zod.ZodString;
667
+ mimeType: zod.ZodOptional<zod.ZodString>;
668
+ }, {
669
+ text: zod.ZodString;
670
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
671
+ uri: zod.ZodString;
672
+ mimeType: zod.ZodOptional<zod.ZodString>;
673
+ }, {
674
+ text: zod.ZodString;
675
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
676
+ uri: zod.ZodString;
677
+ mimeType: zod.ZodOptional<zod.ZodString>;
678
+ }, {
679
+ blob: zod.ZodString;
680
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
681
+ uri: zod.ZodString;
682
+ mimeType: zod.ZodOptional<zod.ZodString>;
683
+ }, {
684
+ blob: zod.ZodString;
685
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
686
+ uri: zod.ZodString;
687
+ mimeType: zod.ZodOptional<zod.ZodString>;
688
+ }, {
689
+ blob: zod.ZodString;
690
+ }>, zod.ZodTypeAny, "passthrough">>]>;
691
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
692
+ type: zod.ZodLiteral<"resource">;
693
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
694
+ uri: zod.ZodString;
695
+ mimeType: zod.ZodOptional<zod.ZodString>;
696
+ }, {
697
+ text: zod.ZodString;
698
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
699
+ uri: zod.ZodString;
700
+ mimeType: zod.ZodOptional<zod.ZodString>;
701
+ }, {
702
+ text: zod.ZodString;
703
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
704
+ uri: zod.ZodString;
705
+ mimeType: zod.ZodOptional<zod.ZodString>;
706
+ }, {
707
+ text: zod.ZodString;
708
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
709
+ uri: zod.ZodString;
710
+ mimeType: zod.ZodOptional<zod.ZodString>;
711
+ }, {
712
+ blob: zod.ZodString;
713
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
714
+ uri: zod.ZodString;
715
+ mimeType: zod.ZodOptional<zod.ZodString>;
716
+ }, {
717
+ blob: zod.ZodString;
718
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
719
+ uri: zod.ZodString;
720
+ mimeType: zod.ZodOptional<zod.ZodString>;
721
+ }, {
722
+ blob: zod.ZodString;
723
+ }>, zod.ZodTypeAny, "passthrough">>]>;
724
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
725
+ type: zod.ZodLiteral<"resource">;
726
+ resource: zod.ZodUnion<[zod.ZodObject<zod.objectUtil.extendShape<{
727
+ uri: zod.ZodString;
728
+ mimeType: zod.ZodOptional<zod.ZodString>;
729
+ }, {
730
+ text: zod.ZodString;
731
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
732
+ uri: zod.ZodString;
733
+ mimeType: zod.ZodOptional<zod.ZodString>;
734
+ }, {
735
+ text: zod.ZodString;
736
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
737
+ uri: zod.ZodString;
738
+ mimeType: zod.ZodOptional<zod.ZodString>;
739
+ }, {
740
+ text: zod.ZodString;
741
+ }>, zod.ZodTypeAny, "passthrough">>, zod.ZodObject<zod.objectUtil.extendShape<{
742
+ uri: zod.ZodString;
743
+ mimeType: zod.ZodOptional<zod.ZodString>;
744
+ }, {
745
+ blob: zod.ZodString;
746
+ }>, "passthrough", zod.ZodTypeAny, zod.objectOutputType<zod.objectUtil.extendShape<{
747
+ uri: zod.ZodString;
748
+ mimeType: zod.ZodOptional<zod.ZodString>;
749
+ }, {
750
+ blob: zod.ZodString;
751
+ }>, zod.ZodTypeAny, "passthrough">, zod.objectInputType<zod.objectUtil.extendShape<{
752
+ uri: zod.ZodString;
753
+ mimeType: zod.ZodOptional<zod.ZodString>;
754
+ }, {
755
+ blob: zod.ZodString;
756
+ }>, zod.ZodTypeAny, "passthrough">>]>;
757
+ }, zod.ZodTypeAny, "passthrough">>]>;
758
+ }, zod.ZodTypeAny, "passthrough">>, "many">;
759
+ }, zod.ZodTypeAny, "passthrough">>;
760
+ }
761
+ type NamespacedData = {
762
+ tools: (Tool & {
763
+ serverId: string;
764
+ })[];
765
+ prompts: (Prompt & {
766
+ serverId: string;
767
+ })[];
768
+ resources: (Resource & {
769
+ serverId: string;
770
+ })[];
771
+ resourceTemplates: (ResourceTemplate & {
772
+ serverId: string;
773
+ })[];
774
+ };
775
+ declare function getNamespacedData<T extends keyof NamespacedData>(mcpClients: Record<string, MCPClientConnection>, type: T): NamespacedData[T];
776
+
777
+ export { MCPClientManager, getNamespacedData };