@mcp-use/client 2.2.4 → 2.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/.tsbuildinfo +1 -0
  2. package/dist/auth/browser.d.ts +218 -0
  3. package/dist/auth/browser.d.ts.map +1 -0
  4. package/dist/auth/callback.d.ts +9 -0
  5. package/dist/auth/callback.d.ts.map +1 -0
  6. package/dist/auth/flow.d.ts +32 -0
  7. package/dist/auth/flow.d.ts.map +1 -0
  8. package/dist/auth/node.d.ts +212 -0
  9. package/dist/auth/node.d.ts.map +1 -0
  10. package/dist/auth/popup.d.ts +67 -0
  11. package/dist/auth/popup.d.ts.map +1 -0
  12. package/dist/auth/session-store.d.ts +125 -0
  13. package/dist/auth/session-store.d.ts.map +1 -0
  14. package/dist/auth/storage-file.d.ts +18 -0
  15. package/dist/auth/storage-file.d.ts.map +1 -0
  16. package/dist/auth/storage.d.ts +34 -0
  17. package/dist/auth/storage.d.ts.map +1 -0
  18. package/dist/auth/url.d.ts +17 -0
  19. package/dist/auth/url.d.ts.map +1 -0
  20. package/dist/code-mode/connector.d.ts +27 -0
  21. package/dist/code-mode/connector.d.ts.map +1 -0
  22. package/dist/code-mode/executor-e2b.d.ts +46 -0
  23. package/dist/code-mode/executor-e2b.d.ts.map +1 -0
  24. package/dist/code-mode/executor-vm.d.ts +39 -0
  25. package/dist/code-mode/executor-vm.d.ts.map +1 -0
  26. package/dist/code-mode/executor.d.ts +81 -0
  27. package/dist/code-mode/executor.d.ts.map +1 -0
  28. package/dist/core/base.d.ts +423 -0
  29. package/dist/core/base.d.ts.map +1 -0
  30. package/dist/core/browser.d.ts +32 -0
  31. package/dist/core/browser.d.ts.map +1 -0
  32. package/dist/core/config.d.ts +225 -0
  33. package/dist/core/config.d.ts.map +1 -0
  34. package/dist/core/node.d.ts +437 -0
  35. package/dist/core/node.d.ts.map +1 -0
  36. package/dist/core/session.d.ts +792 -0
  37. package/dist/core/session.d.ts.map +1 -0
  38. package/dist/core/skills.d.ts +47 -0
  39. package/dist/core/skills.d.ts.map +1 -0
  40. package/dist/index-browser.d.ts +26 -0
  41. package/dist/index-browser.d.ts.map +1 -0
  42. package/dist/index-browser.js +4767 -0
  43. package/dist/index-browser.js.map +1 -0
  44. package/dist/index.d.ts +23 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js +6113 -0
  47. package/dist/index.js.map +1 -0
  48. package/dist/react/McpClientProvider.d.ts +254 -0
  49. package/dist/react/McpClientProvider.d.ts.map +1 -0
  50. package/dist/react/index.d.ts +39 -0
  51. package/dist/react/index.d.ts.map +1 -0
  52. package/dist/react/index.js +9444 -0
  53. package/dist/react/index.js.map +1 -0
  54. package/dist/react/rpc-logger.d.ts +47 -0
  55. package/dist/react/rpc-logger.d.ts.map +1 -0
  56. package/dist/react/storage.d.ts +98 -0
  57. package/dist/react/storage.d.ts.map +1 -0
  58. package/dist/react/token-expiry.d.ts +9 -0
  59. package/dist/react/token-expiry.d.ts.map +1 -0
  60. package/dist/react/types.d.ts +727 -0
  61. package/dist/react/types.d.ts.map +1 -0
  62. package/dist/react/useMcp-helpers.d.ts +99 -0
  63. package/dist/react/useMcp-helpers.d.ts.map +1 -0
  64. package/dist/react/useMcp-operations.d.ts +180 -0
  65. package/dist/react/useMcp-operations.d.ts.map +1 -0
  66. package/dist/react/useMcp.d.ts +48 -0
  67. package/dist/react/useMcp.d.ts.map +1 -0
  68. package/dist/react/useMcpServerQueues.d.ts +403 -0
  69. package/dist/react/useMcpServerQueues.d.ts.map +1 -0
  70. package/dist/react/view/ViewRenderer.d.ts +20 -0
  71. package/dist/react/view/ViewRenderer.d.ts.map +1 -0
  72. package/dist/react/view/ext-apps-bridge.d.ts +3 -0
  73. package/dist/react/view/ext-apps-bridge.d.ts.map +1 -0
  74. package/dist/react/view/initialized-sync.d.ts +13 -0
  75. package/dist/react/view/initialized-sync.d.ts.map +1 -0
  76. package/dist/react/view/inject-openai-file-apis.d.ts +9 -0
  77. package/dist/react/view/inject-openai-file-apis.d.ts.map +1 -0
  78. package/dist/react/view/parse-custom-props.d.ts +10 -0
  79. package/dist/react/view/parse-custom-props.d.ts.map +1 -0
  80. package/dist/react/view/resolve-view-resource.d.ts +22 -0
  81. package/dist/react/view/resolve-view-resource.d.ts.map +1 -0
  82. package/dist/react/view/sandbox-blob-url.d.ts +27 -0
  83. package/dist/react/view/sandbox-blob-url.d.ts.map +1 -0
  84. package/dist/react/view/types.d.ts +220 -0
  85. package/dist/react/view/types.d.ts.map +1 -0
  86. package/dist/react/view/use-display-mode.d.ts +19 -0
  87. package/dist/react/view/use-display-mode.d.ts.map +1 -0
  88. package/dist/react/view/view-detection.d.ts +22 -0
  89. package/dist/react/view/view-detection.d.ts.map +1 -0
  90. package/dist/react/view/view-host-policy.d.ts +61 -0
  91. package/dist/react/view/view-host-policy.d.ts.map +1 -0
  92. package/dist/sandbox.d.ts +2 -0
  93. package/dist/sandbox.d.ts.map +1 -0
  94. package/dist/sandbox.js +288 -0
  95. package/dist/sandbox.js.map +1 -0
  96. package/dist/telemetry/client-telemetry.d.ts +13 -0
  97. package/dist/telemetry/client-telemetry.d.ts.map +1 -0
  98. package/dist/telemetry/configure-browser.d.ts +2 -0
  99. package/dist/telemetry/configure-browser.d.ts.map +1 -0
  100. package/dist/telemetry/configure-node.d.ts +2 -0
  101. package/dist/telemetry/configure-node.d.ts.map +1 -0
  102. package/dist/telemetry/connector-telemetry.d.ts +8 -0
  103. package/dist/telemetry/connector-telemetry.d.ts.map +1 -0
  104. package/dist/telemetry/events.d.ts +91 -0
  105. package/dist/telemetry/events.d.ts.map +1 -0
  106. package/dist/telemetry/index.d.ts +3 -0
  107. package/dist/telemetry/index.d.ts.map +1 -0
  108. package/dist/telemetry/tel-fetch.d.ts +19 -0
  109. package/dist/telemetry/tel-fetch.d.ts.map +1 -0
  110. package/dist/telemetry/telemetry-browser.d.ts +6 -0
  111. package/dist/telemetry/telemetry-browser.d.ts.map +1 -0
  112. package/dist/telemetry/telemetry-node.d.ts +8 -0
  113. package/dist/telemetry/telemetry-node.d.ts.map +1 -0
  114. package/dist/telemetry/telemetry.d.ts +75 -0
  115. package/dist/telemetry/telemetry.d.ts.map +1 -0
  116. package/dist/transport/base.d.ts +656 -0
  117. package/dist/transport/base.d.ts.map +1 -0
  118. package/dist/transport/connection-manager.d.ts +59 -0
  119. package/dist/transport/connection-manager.d.ts.map +1 -0
  120. package/dist/transport/http.d.ts +137 -0
  121. package/dist/transport/http.d.ts.map +1 -0
  122. package/dist/transport/stdio.d.ts +97 -0
  123. package/dist/transport/stdio.d.ts.map +1 -0
  124. package/dist/utils/elicitation.d.ts +54 -0
  125. package/dist/utils/elicitation.d.ts.map +1 -0
  126. package/dist/utils/favicon.d.ts +6 -0
  127. package/dist/utils/favicon.d.ts.map +1 -0
  128. package/dist/utils/json-schema-validator.d.ts +13 -0
  129. package/dist/utils/json-schema-validator.d.ts.map +1 -0
  130. package/dist/utils/logging.d.ts +33 -0
  131. package/dist/utils/logging.d.ts.map +1 -0
  132. package/dist/utils/version.d.ts +9 -0
  133. package/dist/utils/version.d.ts.map +1 -0
  134. package/package.json +1 -1
@@ -0,0 +1,403 @@
1
+ import type { ElicitRequestFormParams, ElicitRequestURLParams, ElicitResult, Notification } from "@modelcontextprotocol/client";
2
+ import type { SamplingCreateMessageParams, SamplingCreateMessageResult } from "../core/config.js";
3
+ import type { McpNotification, PendingElicitationRequest, PendingSamplingRequest } from "./types.js";
4
+ /** Per-server UI queues for notifications, sampling, and elicitation. */
5
+ export declare function useMcpServerQueues(params: {
6
+ serverId: string;
7
+ serverName: string;
8
+ onNotificationReceived?: (notification: McpNotification) => void;
9
+ onSamplingRequest?: (request: PendingSamplingRequest) => void;
10
+ onElicitationRequest?: (request: PendingElicitationRequest) => void;
11
+ onGlobalSamplingRequest?: (request: PendingSamplingRequest, serverId: string, serverName: string, approve: (requestId: string, result: SamplingCreateMessageResult) => void, reject: (requestId: string, error?: string) => void) => void;
12
+ onGlobalElicitationRequest?: (request: PendingElicitationRequest, serverId: string, serverName: string, approve: (requestId: string, result: ElicitResult) => void, reject: (requestId: string, error?: string) => void) => void;
13
+ }): {
14
+ notifications: McpNotification[];
15
+ pendingSamplingRequests: PendingSamplingRequest[];
16
+ pendingElicitationRequests: PendingElicitationRequest[];
17
+ unreadNotificationCount: number;
18
+ markNotificationRead: (id: string) => void;
19
+ markAllNotificationsRead: () => void;
20
+ clearNotifications: () => void;
21
+ approveSampling: (id: string, result: SamplingCreateMessageResult) => void;
22
+ rejectSampling: (id: string, error?: string) => void;
23
+ approveElicitation: (id: string, result: ElicitResult) => void;
24
+ rejectElicitation: (id: string, error?: string) => void;
25
+ onNotification: (notification: Notification) => void;
26
+ onSampling: (requestParams: SamplingCreateMessageParams) => Promise<{
27
+ [x: string]: unknown;
28
+ model: string;
29
+ role: "user" | "assistant";
30
+ content: {
31
+ type: "text";
32
+ text: string;
33
+ annotations?: {
34
+ audience?: ("user" | "assistant")[] | undefined;
35
+ priority?: number | undefined;
36
+ lastModified?: string | undefined;
37
+ } | undefined;
38
+ _meta?: {
39
+ [x: string]: unknown;
40
+ } | undefined;
41
+ } | {
42
+ type: "image";
43
+ data: string;
44
+ mimeType: string;
45
+ annotations?: {
46
+ audience?: ("user" | "assistant")[] | undefined;
47
+ priority?: number | undefined;
48
+ lastModified?: string | undefined;
49
+ } | undefined;
50
+ _meta?: {
51
+ [x: string]: unknown;
52
+ } | undefined;
53
+ } | {
54
+ type: "audio";
55
+ data: string;
56
+ mimeType: string;
57
+ annotations?: {
58
+ audience?: ("user" | "assistant")[] | undefined;
59
+ priority?: number | undefined;
60
+ lastModified?: string | undefined;
61
+ } | undefined;
62
+ _meta?: {
63
+ [x: string]: unknown;
64
+ } | undefined;
65
+ };
66
+ _meta?: {
67
+ [x: string]: unknown;
68
+ "io.modelcontextprotocol/serverInfo"?: {
69
+ version: string;
70
+ name: string;
71
+ websiteUrl?: string | undefined;
72
+ description?: string | undefined;
73
+ icons?: {
74
+ src: string;
75
+ mimeType?: string | undefined;
76
+ sizes?: string[] | undefined;
77
+ theme?: "light" | "dark" | undefined;
78
+ }[] | undefined;
79
+ title?: string | undefined;
80
+ } | undefined;
81
+ } | undefined;
82
+ stopReason?: string | undefined;
83
+ } | {
84
+ [x: string]: unknown;
85
+ model: string;
86
+ role: "user" | "assistant";
87
+ content: {
88
+ type: "text";
89
+ text: string;
90
+ annotations?: {
91
+ audience?: ("user" | "assistant")[] | undefined;
92
+ priority?: number | undefined;
93
+ lastModified?: string | undefined;
94
+ } | undefined;
95
+ _meta?: {
96
+ [x: string]: unknown;
97
+ } | undefined;
98
+ } | {
99
+ type: "image";
100
+ data: string;
101
+ mimeType: string;
102
+ annotations?: {
103
+ audience?: ("user" | "assistant")[] | undefined;
104
+ priority?: number | undefined;
105
+ lastModified?: string | undefined;
106
+ } | undefined;
107
+ _meta?: {
108
+ [x: string]: unknown;
109
+ } | undefined;
110
+ } | {
111
+ type: "audio";
112
+ data: string;
113
+ mimeType: string;
114
+ annotations?: {
115
+ audience?: ("user" | "assistant")[] | undefined;
116
+ priority?: number | undefined;
117
+ lastModified?: string | undefined;
118
+ } | undefined;
119
+ _meta?: {
120
+ [x: string]: unknown;
121
+ } | undefined;
122
+ } | {
123
+ type: "tool_use";
124
+ name: string;
125
+ id: string;
126
+ input: {
127
+ [x: string]: unknown;
128
+ };
129
+ _meta?: {
130
+ [x: string]: unknown;
131
+ } | undefined;
132
+ } | {
133
+ type: "tool_result";
134
+ toolUseId: string;
135
+ content: ({
136
+ type: "text";
137
+ text: string;
138
+ annotations?: {
139
+ audience?: ("user" | "assistant")[] | undefined;
140
+ priority?: number | undefined;
141
+ lastModified?: string | undefined;
142
+ } | undefined;
143
+ _meta?: {
144
+ [x: string]: unknown;
145
+ } | undefined;
146
+ } | {
147
+ type: "image";
148
+ data: string;
149
+ mimeType: string;
150
+ annotations?: {
151
+ audience?: ("user" | "assistant")[] | undefined;
152
+ priority?: number | undefined;
153
+ lastModified?: string | undefined;
154
+ } | undefined;
155
+ _meta?: {
156
+ [x: string]: unknown;
157
+ } | undefined;
158
+ } | {
159
+ type: "audio";
160
+ data: string;
161
+ mimeType: string;
162
+ annotations?: {
163
+ audience?: ("user" | "assistant")[] | undefined;
164
+ priority?: number | undefined;
165
+ lastModified?: string | undefined;
166
+ } | undefined;
167
+ _meta?: {
168
+ [x: string]: unknown;
169
+ } | undefined;
170
+ } | {
171
+ uri: string;
172
+ name: string;
173
+ type: "resource_link";
174
+ description?: string | undefined;
175
+ mimeType?: string | undefined;
176
+ size?: number | undefined;
177
+ annotations?: {
178
+ audience?: ("user" | "assistant")[] | undefined;
179
+ priority?: number | undefined;
180
+ lastModified?: string | undefined;
181
+ } | undefined;
182
+ _meta?: {
183
+ [x: string]: unknown;
184
+ } | undefined;
185
+ icons?: {
186
+ src: string;
187
+ mimeType?: string | undefined;
188
+ sizes?: string[] | undefined;
189
+ theme?: "light" | "dark" | undefined;
190
+ }[] | undefined;
191
+ title?: string | undefined;
192
+ } | {
193
+ type: "resource";
194
+ resource: {
195
+ uri: string;
196
+ text: string;
197
+ mimeType?: string | undefined;
198
+ _meta?: {
199
+ [x: string]: unknown;
200
+ } | undefined;
201
+ } | {
202
+ uri: string;
203
+ blob: string;
204
+ mimeType?: string | undefined;
205
+ _meta?: {
206
+ [x: string]: unknown;
207
+ } | undefined;
208
+ };
209
+ annotations?: {
210
+ audience?: ("user" | "assistant")[] | undefined;
211
+ priority?: number | undefined;
212
+ lastModified?: string | undefined;
213
+ } | undefined;
214
+ _meta?: {
215
+ [x: string]: unknown;
216
+ } | undefined;
217
+ })[];
218
+ structuredContent?: unknown;
219
+ isError?: boolean | undefined;
220
+ _meta?: {
221
+ [x: string]: unknown;
222
+ } | undefined;
223
+ } | ({
224
+ type: "text";
225
+ text: string;
226
+ annotations?: {
227
+ audience?: ("user" | "assistant")[] | undefined;
228
+ priority?: number | undefined;
229
+ lastModified?: string | undefined;
230
+ } | undefined;
231
+ _meta?: {
232
+ [x: string]: unknown;
233
+ } | undefined;
234
+ } | {
235
+ type: "image";
236
+ data: string;
237
+ mimeType: string;
238
+ annotations?: {
239
+ audience?: ("user" | "assistant")[] | undefined;
240
+ priority?: number | undefined;
241
+ lastModified?: string | undefined;
242
+ } | undefined;
243
+ _meta?: {
244
+ [x: string]: unknown;
245
+ } | undefined;
246
+ } | {
247
+ type: "audio";
248
+ data: string;
249
+ mimeType: string;
250
+ annotations?: {
251
+ audience?: ("user" | "assistant")[] | undefined;
252
+ priority?: number | undefined;
253
+ lastModified?: string | undefined;
254
+ } | undefined;
255
+ _meta?: {
256
+ [x: string]: unknown;
257
+ } | undefined;
258
+ } | {
259
+ type: "tool_use";
260
+ name: string;
261
+ id: string;
262
+ input: {
263
+ [x: string]: unknown;
264
+ };
265
+ _meta?: {
266
+ [x: string]: unknown;
267
+ } | undefined;
268
+ } | {
269
+ type: "tool_result";
270
+ toolUseId: string;
271
+ content: ({
272
+ type: "text";
273
+ text: string;
274
+ annotations?: {
275
+ audience?: ("user" | "assistant")[] | undefined;
276
+ priority?: number | undefined;
277
+ lastModified?: string | undefined;
278
+ } | undefined;
279
+ _meta?: {
280
+ [x: string]: unknown;
281
+ } | undefined;
282
+ } | {
283
+ type: "image";
284
+ data: string;
285
+ mimeType: string;
286
+ annotations?: {
287
+ audience?: ("user" | "assistant")[] | undefined;
288
+ priority?: number | undefined;
289
+ lastModified?: string | undefined;
290
+ } | undefined;
291
+ _meta?: {
292
+ [x: string]: unknown;
293
+ } | undefined;
294
+ } | {
295
+ type: "audio";
296
+ data: string;
297
+ mimeType: string;
298
+ annotations?: {
299
+ audience?: ("user" | "assistant")[] | undefined;
300
+ priority?: number | undefined;
301
+ lastModified?: string | undefined;
302
+ } | undefined;
303
+ _meta?: {
304
+ [x: string]: unknown;
305
+ } | undefined;
306
+ } | {
307
+ uri: string;
308
+ name: string;
309
+ type: "resource_link";
310
+ description?: string | undefined;
311
+ mimeType?: string | undefined;
312
+ size?: number | undefined;
313
+ annotations?: {
314
+ audience?: ("user" | "assistant")[] | undefined;
315
+ priority?: number | undefined;
316
+ lastModified?: string | undefined;
317
+ } | undefined;
318
+ _meta?: {
319
+ [x: string]: unknown;
320
+ } | undefined;
321
+ icons?: {
322
+ src: string;
323
+ mimeType?: string | undefined;
324
+ sizes?: string[] | undefined;
325
+ theme?: "light" | "dark" | undefined;
326
+ }[] | undefined;
327
+ title?: string | undefined;
328
+ } | {
329
+ type: "resource";
330
+ resource: {
331
+ uri: string;
332
+ text: string;
333
+ mimeType?: string | undefined;
334
+ _meta?: {
335
+ [x: string]: unknown;
336
+ } | undefined;
337
+ } | {
338
+ uri: string;
339
+ blob: string;
340
+ mimeType?: string | undefined;
341
+ _meta?: {
342
+ [x: string]: unknown;
343
+ } | undefined;
344
+ };
345
+ annotations?: {
346
+ audience?: ("user" | "assistant")[] | undefined;
347
+ priority?: number | undefined;
348
+ lastModified?: string | undefined;
349
+ } | undefined;
350
+ _meta?: {
351
+ [x: string]: unknown;
352
+ } | undefined;
353
+ })[];
354
+ structuredContent?: unknown;
355
+ isError?: boolean | undefined;
356
+ _meta?: {
357
+ [x: string]: unknown;
358
+ } | undefined;
359
+ })[];
360
+ _meta?: {
361
+ [x: string]: unknown;
362
+ "io.modelcontextprotocol/serverInfo"?: {
363
+ version: string;
364
+ name: string;
365
+ websiteUrl?: string | undefined;
366
+ description?: string | undefined;
367
+ icons?: {
368
+ src: string;
369
+ mimeType?: string | undefined;
370
+ sizes?: string[] | undefined;
371
+ theme?: "light" | "dark" | undefined;
372
+ }[] | undefined;
373
+ title?: string | undefined;
374
+ } | undefined;
375
+ } | undefined;
376
+ stopReason?: string | undefined;
377
+ }>;
378
+ onElicitation: (requestParams: ElicitRequestFormParams | ElicitRequestURLParams) => Promise<{
379
+ [x: string]: unknown;
380
+ action: "cancel" | "accept" | "decline";
381
+ _meta?: {
382
+ [x: string]: unknown;
383
+ "io.modelcontextprotocol/serverInfo"?: {
384
+ version: string;
385
+ name: string;
386
+ websiteUrl?: string | undefined;
387
+ description?: string | undefined;
388
+ icons?: {
389
+ src: string;
390
+ mimeType?: string | undefined;
391
+ sizes?: string[] | undefined;
392
+ theme?: "light" | "dark" | undefined;
393
+ }[] | undefined;
394
+ title?: string | undefined;
395
+ } | undefined;
396
+ } | undefined;
397
+ content?: {
398
+ [x: string]: string | number | boolean | string[];
399
+ } | undefined;
400
+ }>;
401
+ rejectAll: (reason: string) => void;
402
+ };
403
+ //# sourceMappingURL=useMcpServerQueues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMcpServerQueues.d.ts","sourceRoot":"","sources":["../../src/react/useMcpServerQueues.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACb,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EACV,2BAA2B,EAC3B,2BAA2B,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAWpB,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB,CAAC,EAAE,CAAC,YAAY,EAAE,eAAe,KAAK,IAAI,CAAC;IACjE,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,CAAC;IAC9D,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,KAAK,IAAI,CAAC;IACpE,uBAAuB,CAAC,EAAE,CACxB,OAAO,EAAE,sBAAsB,EAC/B,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,2BAA2B,KAAK,IAAI,EACzE,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,KAChD,IAAI,CAAC;IACV,0BAA0B,CAAC,EAAE,CAC3B,OAAO,EAAE,yBAAyB,EAClC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,KAAK,IAAI,EAC1D,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,KAChD,IAAI,CAAC;CACX;;;;;+BA8J+C,MAAM;;;0BAtG7C,MAAM,UAAU,2BAA2B;yBAaV,MAAM,UAAU,MAAM;6BAuClB,MAAM,UAAU,YAAY;4BAW7B,MAAM,UAAU,MAAM;mCAjFhD,YAAY;gCA2CX,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAkD3B,uBAAuB,GAAG,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;wBAlH3B,MAAM;EA+K9C"}
@@ -0,0 +1,20 @@
1
+ import React from "react";
2
+ import type { ViewRendererProps } from "./types.js";
3
+ declare function ViewRendererBase({ viewId, source, sandboxUrl, toolName, toolInput, toolOutput, partialToolInput, customProps, cancelled, hostInfo, hostContext, hostCapabilities, messageCapabilities, modelContextCapabilities, cspMode, displayMode: displayModeProp, onDisplayModeChange, inlineMaxWidth, chromeless, onMessage, onSamplingRequest, onDownloadFile, onAppToolsChanged, onModelContextUpdate, onLog, onReady, onLifecycleChange, onError, onCspViolation, onResourceResolved, wrapTransport, toolCallTimeout, mockOpenAiFileApis, onInlineHeightChange, fullscreenHeader, renderFullscreenClose, className, testId, invoking, invoked, }: ViewRendererProps): React.JSX.Element;
4
+ /**
5
+ * Renders an MCP App inside an isolated iframe and bridges host capabilities.
6
+ *
7
+ * The renderer resolves live MCP resources or accepts preloaded HTML, applies
8
+ * the selected CSP policy, and forwards tool state and host callbacks through
9
+ * the MCP Apps bridge.
10
+ */
11
+ export declare const ViewRenderer: React.MemoExoticComponent<typeof ViewRendererBase>;
12
+ export type { ViewRendererProps } from "./types.js";
13
+ export { resolveViewResource } from "./resolve-view-resource.js";
14
+ export { getViewResourceUri, isViewResource, isViewTool, } from "./view-detection.js";
15
+ export { isToolVisibleToModel } from "./view-host-policy.js";
16
+ export { parseCustomProps } from "./parse-custom-props.js";
17
+ export { buildSandboxProxyBlobHtml, buildViewSandboxBlobUrl, buildViewSandboxUrl, } from "./sandbox-blob-url.js";
18
+ export type { ViewConnection, ViewDisplayMode, ViewCspMode, ViewRendererSource, ResolvedViewResource, ViewCspViolation, ViewLifecycleEvent, ViewLifecycleStatus, ViewAppToolConnection, } from "./types.js";
19
+ export type { McpUiDownloadFileRequest, McpUiDownloadFileResult, McpUiHostCapabilities, McpUiHostContext, McpUiResourceCsp, McpUiResourcePermissions, McpUiSupportedContentBlockModalities, } from "./ext-apps-bridge.js";
20
+ //# sourceMappingURL=ViewRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViewRenderer.d.ts","sourceRoot":"","sources":["../../../src/react/view/ViewRenderer.tsx"],"names":[],"mappings":"AAmBA,OAAO,KAQN,MAAM,OAAO,CAAC;AAMf,OAAO,KAAK,EAGV,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAmEpB,iBAAS,gBAAgB,CAAC,EACxB,MAAM,EACN,MAAM,EACN,UAAU,EACV,QAAiB,EACjB,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,QAA4B,EAC5B,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,OAA2B,EAC3B,WAAW,EAAE,eAAe,EAC5B,mBAAmB,EACnB,cAAoB,EACpB,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,EACL,OAAO,EACP,iBAAiB,EACjB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,eAA2C,EAC3C,kBAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,qBAAqB,EACrB,SAAS,EACT,MAAwB,EACxB,QAAQ,EACR,OAAO,GACR,EAAE,iBAAiB,qBA00BnB;AAoCD;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,oDAA+C,CAAC;AAEzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,UAAU,GACX,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,cAAc,EACd,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACxB,oCAAoC,GACrC,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { AppBridge, PostMessageTransport, buildAllowAttribute, RESOURCE_MIME_TYPE, } from "@modelcontextprotocol/ext-apps/app-bridge";
2
+ export type { McpUiDownloadFileRequest, McpUiDownloadFileResult, McpUiHostCapabilities, McpUiHostContext, McpUiMessageRequest, McpUiOpenLinkRequest, McpUiRequestDisplayModeRequest, McpUiResourceCsp, McpUiResourcePermissions, McpUiSizeChangedNotification, McpUiSupportedContentBlockModalities, McpUiUpdateModelContextRequest, } from "@modelcontextprotocol/ext-apps/app-bridge";
3
+ //# sourceMappingURL=ext-apps-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ext-apps-bridge.d.ts","sourceRoot":"","sources":["../../../src/react/view/ext-apps-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,2CAA2C,CAAC;AAEnD,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,8BAA8B,EAC9B,gBAAgB,EAChB,wBAAwB,EACxB,4BAA4B,EAC5B,oCAAoC,EACpC,8BAA8B,GAC/B,MAAM,2CAA2C,CAAC"}
@@ -0,0 +1,13 @@
1
+ interface InitializableBridge<TArgs extends unknown[]> {
2
+ oninitialized: ((...args: TArgs) => void) | undefined;
3
+ }
4
+ /**
5
+ * Synchronize host state after every guest initialize handshake.
6
+ *
7
+ * Vite HMR and React development runtimes can replace the guest App instance
8
+ * inside the same iframe. Each replacement initializes again and needs the
9
+ * invocation's one-shot input/result notifications replayed.
10
+ */
11
+ export declare function installInitializedSync<TArgs extends unknown[]>(bridge: InitializableBridge<TArgs>, synchronize: () => void | Promise<void>, onLaterError: (error: unknown) => void): Promise<void>;
12
+ export {};
13
+ //# sourceMappingURL=initialized-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialized-sync.d.ts","sourceRoot":"","sources":["../../../src/react/view/initialized-sync.ts"],"names":[],"mappings":"AAAA,UAAU,mBAAmB,CAAC,KAAK,SAAS,OAAO,EAAE;IACnD,aAAa,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACvD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,SAAS,OAAO,EAAE,EAC5D,MAAM,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAClC,WAAW,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACvC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GACrC,OAAO,CAAC,IAAI,CAAC,CAkBf"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Prepend the shared ChatGPT Apps SDK compatibility aliases and
3
+ * Inspector-supported file helpers. Native V2 views keep using MCP Apps;
4
+ * legacy useWidget() bundles receive the same tool lifecycle and host actions
5
+ * through window.openai. Unsupported ChatGPT-only extensions remain absent so
6
+ * apps can feature-detect them as documented.
7
+ */
8
+ export declare function injectOpenAiFileApis(html: string): string;
9
+ //# sourceMappingURL=inject-openai-file-apis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject-openai-file-apis.d.ts","sourceRoot":"","sources":["../../../src/react/view/inject-openai-file-apis.ts"],"names":[],"mappings":"AAwMA;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsBzD"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Parses JSON object and array values from string-valued custom properties.
3
+ *
4
+ * Invalid JSON and scalar-looking strings are preserved unchanged.
5
+ *
6
+ * @param customProps - Properties supplied by a host integration.
7
+ * @returns A new record containing parsed object and array values.
8
+ */
9
+ export declare function parseCustomProps(customProps?: Record<string, string>): Record<string, unknown>;
10
+ //# sourceMappingURL=parse-custom-props.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-custom-props.d.ts","sourceRoot":"","sources":["../../../src/react/view/parse-custom-props.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAkBzB"}
@@ -0,0 +1,22 @@
1
+ import type { ResolvedViewResource, ViewCspMode } from "./types.js";
2
+ /**
3
+ * Normalizes a resource response into HTML and effective MCP App policy.
4
+ *
5
+ * Content-level UI metadata overrides listing metadata. In permissive mode the
6
+ * declared CSP is reported but not enforced.
7
+ *
8
+ * @param options - Resource response, listing metadata, CSP policy, and URI.
9
+ * @returns The normalized view resource.
10
+ * @throws When the first content block contains no text or base64 HTML.
11
+ */
12
+ export declare function resolveViewResource(options: {
13
+ resourceResult: unknown;
14
+ listingResource?: {
15
+ _meta?: {
16
+ ui?: unknown;
17
+ };
18
+ } | null;
19
+ cspMode: ViewCspMode;
20
+ resourceUri?: string;
21
+ }): ResolvedViewResource;
22
+ //# sourceMappingURL=resolve-view-resource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-view-resource.d.ts","sourceRoot":"","sources":["../../../src/react/view/resolve-view-resource.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AASpE;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE;IAC3C,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE;YAAE,EAAE,CAAC,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACtD,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,GAAG,oBAAoB,CAkEvB"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * MCP Apps sandbox-proxy HTML for ViewRenderer blob URLs.
3
+ *
4
+ * Browser-only — no Node/Hono imports. The host iframe loads this document
5
+ * from a blob: URL; it proxies postMessage to the inner widget srcdoc iframe.
6
+ */
7
+ import type { McpUiResourceCsp, McpUiResourcePermissions } from "./ext-apps-bridge.js";
8
+ import type { ViewCspMode } from "./types.js";
9
+ type ViewSandboxBlobUrlOptions = {
10
+ cspMode: ViewCspMode;
11
+ permissions?: McpUiResourcePermissions;
12
+ widgetCsp?: McpUiResourceCsp;
13
+ };
14
+ /** Build a configured HTTP(S) sandbox proxy URL. */
15
+ export declare function buildViewSandboxUrl(sandboxDocumentUrl: URL, options: ViewSandboxBlobUrlOptions): URL;
16
+ /** Build a blob: sandbox iframe URL (no backend sandbox-proxy route). */
17
+ export declare function buildViewSandboxBlobUrl(options: ViewSandboxBlobUrlOptions): URL;
18
+ /**
19
+ * Build sandbox-proxy HTML for a Blob URL, injecting search params that Blob
20
+ * URLs cannot carry reliably.
21
+ *
22
+ * JSON-escapes the search string (incl. `<` → `\\u003c`) so it cannot break
23
+ * out of the inline script tag.
24
+ */
25
+ export declare function buildSandboxProxyBlobHtml(search: string): string;
26
+ export {};
27
+ //# sourceMappingURL=sandbox-blob-url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sandbox-blob-url.d.ts","sourceRoot":"","sources":["../../../src/react/view/sandbox-blob-url.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,KAAK,yBAAyB,GAAG;IAC/B,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,CAAC,EAAE,wBAAwB,CAAC;IACvC,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B,CAAC;AAEF,oDAAoD;AACpD,wBAAgB,mBAAmB,CACjC,kBAAkB,EAAE,GAAG,EACvB,OAAO,EAAE,yBAAyB,GACjC,GAAG,CAIL;AAoBD,yEAAyE;AACzE,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,yBAAyB,GACjC,GAAG,CAKL;AAWD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQhE"}