agents 0.0.0-d7d2876 → 0.0.0-de168a2

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