agents 0.0.0-947fd07 → 0.0.0-979394a

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