@mcp-native/mcp 0.4.0 → 0.6.0

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.
package/README.md CHANGED
@@ -12,9 +12,14 @@
12
12
 
13
13
  > **Compatibility:** SDK v2 is the correct implementation line for MCP `2026-07-28`. The initial tool/resource boundary preserves official fields and is covered through the SDK's current HTTP handler/fetch path, but the package does not yet claim complete MCP conformance.
14
14
 
15
- `@mcp-native/mcp` adapts a connected [`Client`](https://github.com/modelcontextprotocol/typescript-sdk/blob/main/docs/client.md) from `@modelcontextprotocol/client` v2 to the transport-neutral `McpClient` interface in `@mcp-native/core`.
15
+ `@mcp-native/mcp` adapts a connected [`Client`](https://github.com/modelcontextprotocol/typescript-sdk/blob/main/docs/client.md) from `@modelcontextprotocol/client` v2 to the transport-neutral `McpClient` interface in `@mcp-native/core`. It also provides the native host boundary for interactive OAuth on protected Streamable HTTP connections.
16
16
 
17
- The adapter deliberately does not create a transport, manage credentials, or own the SDK client's lifecycle. The host chooses and connects the official client, then hands it to MCP Native.
17
+ The result adapter does not own SDK wire behavior. The host still chooses and constructs the
18
+ official client and transport. `createMcpNativeConnectionLifecycle()` optionally coordinates their
19
+ bounded timeout, cancellation, retry/backoff, offline, reconnection, state, diagnostics, and shutdown
20
+ around fresh host-owned SDK connection units. For protected HTTP, the package also creates the exact
21
+ official transport/profile while the host owns its secure credential store, browser handoff, and
22
+ user consent.
18
23
 
19
24
  ## Install
20
25
 
@@ -74,6 +79,141 @@ const adapter = new McpSdkClientAdapter(client, { clientExtensions });
74
79
 
75
80
  The official SDK places these settings in the `2026-07-28` per-request capability envelope. After connection, `McpSdkClientAdapter.getClientExtensionSettings()` returns the advertised snapshot passed into the adapter, and `getServerExtensionSettings()` returns the validated server declaration from `server/discover`. Pass those two maps to a core or extension-specific negotiator, or call `runtime.negotiateExtension(id)` so negotiation stays tied to what was actually advertised. The `2025-11-25` lane has no extension support claim.
76
81
 
82
+ ## Protected Streamable HTTP
83
+
84
+ `createMcpNativeOAuthProvider()` implements the security-sensitive host seams needed by the official
85
+ SDK's interactive OAuth flow:
86
+
87
+ ```ts
88
+ import { Client, UnauthorizedError } from "@modelcontextprotocol/client";
89
+ import { createMcpNativeClientOptions } from "@mcp-native/mcp";
90
+ import {
91
+ createMcpNativeOAuthAuthorizationSession,
92
+ createMcpNativeOAuthPlatformSecureStore,
93
+ createMcpNativeOAuthProvider,
94
+ createMcpNativeOAuthTransport,
95
+ } from "@mcp-native/mcp/oauth";
96
+
97
+ const serverUrl = new URL("https://mcp.example.com/mcp");
98
+ const redirectUrl = "my-app://oauth/callback";
99
+ const secureOAuthStore = createMcpNativeOAuthPlatformSecureStore({
100
+ namespace: "com.example.myapp.production",
101
+ backend: keychainOrKeystoreBackend,
102
+ });
103
+ const authorizationSession = createMcpNativeOAuthAuthorizationSession({
104
+ redirectUrl,
105
+ open: openSystemAuthenticationSession,
106
+ });
107
+ const provider = createMcpNativeOAuthProvider({
108
+ serverUrl,
109
+ redirectUrl,
110
+ clientMetadata: { client_name: "My app", redirect_uris: [redirectUrl] },
111
+ storage: secureOAuthStore,
112
+ scopeStore: durableResourceBoundScopeStore,
113
+ createState: () => createCryptographicallyRandomState(),
114
+ openAuthorization: authorizationSession.openAuthorization,
115
+ approveReauthorization: (request) => consentAndCheckRetryBudget(request),
116
+ });
117
+ const client = new Client(
118
+ { name: "my-app", version: "1.0.0" },
119
+ createMcpNativeClientOptions("modern-only"),
120
+ );
121
+ const transport = createMcpNativeOAuthTransport(serverUrl, provider, {
122
+ scopeEscalation: "host-approved",
123
+ });
124
+
125
+ try {
126
+ await client.connect(transport);
127
+ } catch (error) {
128
+ if (!(error instanceof UnauthorizedError)) throw error;
129
+ await authorizationSession.finishAuthorization(provider, transport);
130
+ // Reconnect on a fresh official transport after successful completion.
131
+ }
132
+ ```
133
+
134
+ `McpNativeOAuthSecureStore` must be implemented with OS keychain/keystore-grade encrypted storage.
135
+ Its contract includes a pending-authorization record bound to the protected resource, the issuer
136
+ when known, and the exact requested scopes. The record lives only for the reserved state/verifier
137
+ attempt; `verifier` and `all` invalidation must remove it. This lets a process-recovery callback
138
+ retain an omitted token-response scope without letting an unrelated refresh inherit browser-requested
139
+ scopes.
140
+ `createMcpNativeOAuthPlatformSecureStore()` supplies the bounded serialization, fixed app-owned
141
+ service slots, exact issuer binding, and exclusive state reservation, claim, and release serialized
142
+ across store objects using the same namespace in one JS runtime over a narrow native secret backend;
143
+ it cannot make AsyncStorage or a plain file secure. The provider validates stored values
144
+ before returning them to the SDK, bounds complete registration, discovery, and token structures—including
145
+ token extension fields—before schema parsing, persistence, or reuse, validates every registered redirect URI,
146
+ rejects duplicate registered redirect query names, redirects without enough bounded callback
147
+ capacity, and literal fragment delimiters on server,
148
+ redirect, authorization, and callback URLs, requires every actionable discovery endpoint to use
149
+ HTTPS or an HTTP loopback address and contain no fragment before caching or reuse, refreshes
150
+ discovery after the callback so authorization-server migrations cannot reuse old credentials, pins
151
+ RFC 8707 resource indicators to one MCP endpoint, compares callback location and state before code
152
+ redemption, bounds authorization URLs before reparsing and browser handoff, accepts IPv4 loopback
153
+ addresses throughout `127.0.0.0/8`, and never exposes attacker-controlled callback error descriptions.
154
+
155
+ `createMcpNativeOAuthAuthorizationSession()` normalizes an app-owned
156
+ `ASWebAuthenticationSession`/Android Custom Tab bridge into one exact callback. It rejects overlap,
157
+ callback substitution, oversized or malformed results, and reuse. A cancellation result clears
158
+ pending state and PKCE material without deleting registrations or tokens; direct provider
159
+ cancellation is rejected while the system handoff, state setup, or callback completion is active. The
160
+ provider reserves one interactive attempt before state persistence, the store rejects a second
161
+ reservation for the same namespace, and only that provider can cancel or clear the live attempt.
162
+ The browser handoff requires that reservation and exactly one saved PKCE verifier.
163
+ After a process restart, when no live owner remains, cancellation can claim and release the stale
164
+ reservation. Callback validation claims rather than deletes the state, keeping the namespace occupied
165
+ until verifier cleanup succeeds. Full and verifier credential invalidation observe the same
166
+ active-flow and ownership checks as cancellation. The same total and per-parameter callback budgets apply to the
167
+ direct process-recovery path. See the [native OAuth host integration
168
+ guide](https://github.com/pablospaniard/mcp-native/blob/main/docs/native-oauth-testing.md) for an
169
+ Expo Go-compatible reference mapping and production-host responsibilities.
170
+
171
+ `createMcpNativeOAuthTransport()` rejects manual credential headers and configures
172
+ `insufficient_scope` to throw by default. Setting `scopeEscalation: "host-approved"` is accepted only
173
+ when the provider has an `approveReauthorization` callback. That callback receives the exact
174
+ protected resource and runs for every new authorization request while credentials or persisted scope
175
+ history exist, even when a hostile resource repeats the same scope;
176
+ the transport permits at most one SDK step-up retry per request. The host must maintain any stricter
177
+ cross-request budget. Supply `scopeStore` to retain a validated issuer/resource-bound scope record
178
+ across token invalidation and provider instances; full credential invalidation removes it. All 25
179
+ scored pinned official `2026-07-28` authorization client scenarios
180
+ pass. Native-library integration is demonstrated separately through non-blocking app-level PoCs.
181
+
182
+ ## Production connection lifecycle
183
+
184
+ Wrap fresh official SDK ownership units when the host needs a common production state machine:
185
+
186
+ ```ts
187
+ import { createMcpNativeConnectionLifecycle } from "@mcp-native/mcp";
188
+
189
+ const lifecycle = createMcpNativeConnectionLifecycle({
190
+ createConnection() {
191
+ const client = createOfficialClient();
192
+ const transport = createOfficialTransport();
193
+ return {
194
+ connect: () => client.connect(transport),
195
+ close: () => client.close(),
196
+ closed: observeOneUnexpectedTransportClose(transport),
197
+ };
198
+ },
199
+ classifyError: (error) => classifyWithoutRetainingRawError(error),
200
+ onStateChange: renderConnectionState,
201
+ diagnostics: operationalSink,
202
+ });
203
+
204
+ await lifecycle.start();
205
+ await lifecycle.setOnline(false);
206
+ await lifecycle.setOnline(true);
207
+ await lifecycle.shutdown();
208
+ ```
209
+
210
+ Attempts, timeouts, exponential backoff, and close waits have hard maximums. Cancellation aborts the
211
+ host callback and closes its ownership unit; the host must make `connect(signal)` respond promptly.
212
+ The optional `closed` promise triggers reconnection through a fresh unit. Fixed operational events
213
+ contain only outcome, timing, attempt, and stable host-classified code fields, so they can feed logs,
214
+ metrics, and traces without accepting raw errors, URLs, credentials, tokens, server data, or user
215
+ data. See the [production host checklist](https://github.com/pablospaniard/mcp-native/blob/main/docs/host-integration-checklist.md).
216
+
77
217
  ## Mapping
78
218
 
79
219
  | Official SDK operation | MCP Native result |
@@ -84,6 +224,12 @@ The official SDK places these settings in the `2026-07-28` per-request capabilit
84
224
 
85
225
  SDK content blocks retain MCP's official discriminated shapes: text, image, audio, resource link, and embedded resource. Tool definitions preserve titles, icons, complete input/output schemas, annotations, and JSON-safe `_meta`. Resource reads preserve text and blob items as separate entries.
86
226
 
227
+ The adapter validates and reconstructs each complete SDK result before mapping it. One result may
228
+ contain at most 1,024 top-level tools, content blocks, or resource contents, with at most 64 icons
229
+ or icon sizes per value and the core cumulative JSON string/key budget across the entire result.
230
+ SDK objects may materialize omitted optional properties as `undefined`; those object properties are
231
+ discarded, while `undefined` array entries and all other non-JSON values fail closed.
232
+
87
233
  Install `@mcp-native/a2ui` to resolve an `application/a2ui+json` `resource_link` from an adapted tool result into a validated declarative surface.
88
234
 
89
235
  ## Validation boundary
@@ -112,14 +258,36 @@ This adapter never evaluates server-provided code and never resolves a server-pr
112
258
  | `createMcpNativeClientOptions`, `McpNativeProtocolMode` | Exact official SDK options for automatic, modern-only, or legacy-only operation. |
113
259
  | `McpNativeClientCapabilityOptions` | Explicit host-approved extension settings accepted by the options helper. |
114
260
  | `MCP_NATIVE_PROTOCOL_REVISION`, `MCP_NATIVE_LEGACY_PROTOCOL_REVISION`, `MCP_NATIVE_SUPPORTED_PROTOCOL_REVISIONS` | The current target and deliberately tested revision list. |
261
+ | `McpNativeConnectionLifecycle`, `createMcpNativeConnectionLifecycle` | Bounded host coordination around fresh official SDK connections. |
262
+ | `McpNativeHostState`, `McpNativeOperationalEvent`, `McpNativeOperationalSink` | Actionable UI states and a fixed redacted observability boundary. |
263
+ | `McpNativeConnectionLifecycleError` | Stable timeout/cancellation category passed only to the host classifier. |
264
+ | The protected-HTTP exports below live at the explicit `@mcp-native/mcp/oauth` subpath so importing |
265
+ | the result adapter does not load a transport implementation: |
266
+
267
+ | Export | Purpose |
268
+ | -------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
269
+ | `McpNativeOAuthClientProvider`, `createMcpNativeOAuthProvider` | Issuer-bound official SDK OAuth provider with native host seams. |
270
+ | `McpNativeOAuthSecureStore` | Host keychain/keystore persistence contract for credentials and redirect state. |
271
+ | `McpNativeOAuthPlatformSecureStore`, `createMcpNativeOAuthPlatformSecureStore` | Bounded adapter over an app-owned native secret backend. |
272
+ | `McpNativeOAuthAuthorizationSession`, `createMcpNativeOAuthAuthorizationSession` | Closed OS browser-session callback adapter. |
273
+ | `McpNativeOAuthReauthorizationRequest` | Frozen host decision input for bounded interactive reauthorization. |
274
+ | `McpNativeOAuthScopeStore`, `McpNativeOAuthScopeRecord` | Persistent resource/issuer-bound scope-upgrade history. |
275
+ | `createMcpNativeOAuthTransport` | Protected HTTP transport with resource pinning and host-gated scope escalation. |
276
+ | `McpNativeOAuthError` | Fail-closed categories without attacker-controlled callback details. |
115
277
 
116
278
  ## Scope
117
279
 
118
280
  - Official SDK client v2 integration only.
119
281
  - Integration tests pin `2026-07-28` through the official SDK HTTP handler/fetch path and verify `auto` fallback to exactly `2025-11-25` through the linked in-memory transport.
120
- - Seven applicable official client scenarios cover tool calls, request metadata and version retry, standard and custom HTTP headers, invalid header annotations, safe `$ref` handling, and JSON Schema 2020-12 preservation. See the [pinned coverage report](https://github.com/pablospaniard/mcp-native/blob/main/docs/mcp-conformance.md).
282
+ - Thirty-two applicable official client scenarios cover every scored `2026-07-28` authorization
283
+ client scenario plus tool calls, request metadata and version retry, standard and custom HTTP
284
+ headers, invalid header annotations, safe `$ref` handling, and JSON Schema 2020-12 preservation.
285
+ See the [pinned coverage report](https://github.com/pablospaniard/mcp-native/blob/main/docs/mcp-conformance.md).
121
286
  - The conformance gate accounts for every scored client requirement in the pinned official fixture, while shared-store tests verify that private cache entries stay principal-partitioned and public entries are reused only for the same server identity and request.
122
- - Hosts retain connection setup, transport selection, authentication, retries, and shutdown.
287
+ - Hosts retain SDK construction and wire behavior, consent, platform authentication-session
288
+ presentation, and secure-storage implementation. The optional lifecycle controller coordinates
289
+ bounded host operations around those SDK objects; the protected-HTTP helper owns only the exact
290
+ OAuth/transport policy boundary documented above.
123
291
  - Generic JSON-safe `_meta` is preserved across the adapter boundary.
124
292
  - Generic extension discovery and settings are implemented and verified on the modern SDK path.
125
293
  - The adapter package remains independent of React Native, A2UI, and WebView packages.
package/dist/.tsbuildinfo CHANGED
@@ -1 +1 @@
1
- {"version":"7.0.2","root":[146],"packageJsons":["../../../node_modules/@modelcontextprotocol/client/package.json","../../../node_modules/@modelcontextprotocol/core/package.json","../../../node_modules/eventsource/package.json","../../../node_modules/zod/package.json","../../../node_modules/zod/v4/classic/package.json","../../../node_modules/zod/v4/core/package.json","../../../node_modules/zod/v4/locales/package.json","../../../node_modules/zod/v4/package.json","../../core/package.json","../package.json"],"missingPackageJsons":["../../../node_modules/@modelcontextprotocol/client/dist/package.json","../../../node_modules/@modelcontextprotocol/core/dist/package.json","../../../node_modules/@modelcontextprotocol/core/internal/package.json","../../../node_modules/eventsource/dist/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../../../node_modules/zod/v4/core/json-schema.d.cts","../../../node_modules/zod/v4/core/standard-schema.d.cts","../../../node_modules/zod/v4/core/registries.d.cts","../../../node_modules/zod/v4/core/to-json-schema.d.cts","../../../node_modules/zod/v4/core/util.d.cts","../../../node_modules/zod/v4/core/versions.d.cts","../../../node_modules/zod/v4/core/schemas.d.cts","../../../node_modules/zod/v4/core/checks.d.cts","../../../node_modules/zod/v4/core/errors.d.cts","../../../node_modules/zod/v4/core/core.d.cts","../../../node_modules/zod/v4/core/parse.d.cts","../../../node_modules/zod/v4/core/regexes.d.cts","../../../node_modules/zod/v4/locales/ar.d.cts","../../../node_modules/zod/v4/locales/az.d.cts","../../../node_modules/zod/v4/locales/be.d.cts","../../../node_modules/zod/v4/locales/bg.d.cts","../../../node_modules/zod/v4/locales/ca.d.cts","../../../node_modules/zod/v4/locales/cs.d.cts","../../../node_modules/zod/v4/locales/da.d.cts","../../../node_modules/zod/v4/locales/de.d.cts","../../../node_modules/zod/v4/locales/el.d.cts","../../../node_modules/zod/v4/locales/en.d.cts","../../../node_modules/zod/v4/locales/eo.d.cts","../../../node_modules/zod/v4/locales/es.d.cts","../../../node_modules/zod/v4/locales/fa.d.cts","../../../node_modules/zod/v4/locales/fi.d.cts","../../../node_modules/zod/v4/locales/fr.d.cts","../../../node_modules/zod/v4/locales/fr-CA.d.cts","../../../node_modules/zod/v4/locales/he.d.cts","../../../node_modules/zod/v4/locales/hr.d.cts","../../../node_modules/zod/v4/locales/hu.d.cts","../../../node_modules/zod/v4/locales/hy.d.cts","../../../node_modules/zod/v4/locales/id.d.cts","../../../node_modules/zod/v4/locales/is.d.cts","../../../node_modules/zod/v4/locales/it.d.cts","../../../node_modules/zod/v4/locales/ja.d.cts","../../../node_modules/zod/v4/locales/ka.d.cts","../../../node_modules/zod/v4/locales/kh.d.cts","../../../node_modules/zod/v4/locales/km.d.cts","../../../node_modules/zod/v4/locales/ko.d.cts","../../../node_modules/zod/v4/locales/lt.d.cts","../../../node_modules/zod/v4/locales/mk.d.cts","../../../node_modules/zod/v4/locales/ms.d.cts","../../../node_modules/zod/v4/locales/nl.d.cts","../../../node_modules/zod/v4/locales/no.d.cts","../../../node_modules/zod/v4/locales/ota.d.cts","../../../node_modules/zod/v4/locales/ps.d.cts","../../../node_modules/zod/v4/locales/pl.d.cts","../../../node_modules/zod/v4/locales/pt.d.cts","../../../node_modules/zod/v4/locales/ro.d.cts","../../../node_modules/zod/v4/locales/ru.d.cts","../../../node_modules/zod/v4/locales/sl.d.cts","../../../node_modules/zod/v4/locales/sv.d.cts","../../../node_modules/zod/v4/locales/ta.d.cts","../../../node_modules/zod/v4/locales/th.d.cts","../../../node_modules/zod/v4/locales/tr.d.cts","../../../node_modules/zod/v4/locales/ua.d.cts","../../../node_modules/zod/v4/locales/uk.d.cts","../../../node_modules/zod/v4/locales/ur.d.cts","../../../node_modules/zod/v4/locales/uz.d.cts","../../../node_modules/zod/v4/locales/vi.d.cts","../../../node_modules/zod/v4/locales/zh-CN.d.cts","../../../node_modules/zod/v4/locales/zh-TW.d.cts","../../../node_modules/zod/v4/locales/yo.d.cts","../../../node_modules/zod/v4/locales/index.d.cts","../../../node_modules/zod/v4/core/doc.d.cts","../../../node_modules/zod/v4/core/api.d.cts","../../../node_modules/zod/v4/core/json-schema-processors.d.cts","../../../node_modules/zod/v4/core/json-schema-generator.d.cts","../../../node_modules/zod/v4/core/index.d.cts","../../../node_modules/zod/v4/classic/errors.d.cts","../../../node_modules/zod/v4/classic/parse.d.cts","../../../node_modules/zod/v4/classic/schemas.d.cts","../../../node_modules/zod/v4/classic/checks.d.cts","../../../node_modules/zod/v4/classic/compat.d.cts","../../../node_modules/zod/v4/classic/from-json-schema.d.cts","../../../node_modules/zod/v4/classic/iso.d.cts","../../../node_modules/zod/v4/classic/coerce.d.cts","../../../node_modules/zod/v4/classic/external.d.cts","../../../node_modules/zod/v4/classic/index.d.cts","../../../node_modules/zod/v4/index.d.cts","../../../node_modules/@modelcontextprotocol/core/dist/auth-BWdKR39I.d.mts","../../../node_modules/@modelcontextprotocol/core/dist/internal.d.mts","../../../node_modules/@modelcontextprotocol/client/dist/index-D4xIIEF6.d.mts","../../../node_modules/@modelcontextprotocol/client/dist/types-mS0yxCL0.d.mts","../../../node_modules/eventsource/dist/index.d.ts","../../../node_modules/@modelcontextprotocol/client/dist/index.d.mts","../../core/dist/index.d.ts","../src/index.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},"5f3c015bce4302b247acedb9ec20e302","a9fe29dcdd4288cacf574947747a4572","daada721cfdc43aa8e7c2e2d14d760de","c4d7f2ab9358166b1815281a9e767232","7703400f3e9d14c1e0670e37a530daf7","4158e698aebfc1ac453549ca68cf2301","15182d7d355f2cb580529a728a1c2149","8fb36d5345606a6ec0bcaae424f48c41","631ac96cecb09bd46857ff6ad032a8dc","ffd8c3d2e39447925561777d1ebcdc02","2b76267afeb2e83dff758e3fba2faa8a","c910e5cd97770188797f8ff632e19735","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","224881373d4d18c065b09acb9a85cc5f","a21f1b172546b6a64cc7ddea394b54ea","7096aabc39a3b833dbdb0dee5ef12fca","8bdf05c98551836db89f23d60d176f56","5b3f18777c97e7ed444a39661c4462ba","cd3b63580b271a0e93649c0d92a1b098","1cc59f020b9d62d875bdb28a6e2f745b","a06c5977df8ff3f289f16a7505c8d539","8dd06ad8dc54dd7826195cfa6bfdc744","f04158c558df8c51d46a1fb44c832c1c","d1ab6402ad42100de1cf3f5d15aa9d27","96b06af537c71de0a80e9ed880958afd","dec40354e62d8ca81f5996c1760bc6da","a9356de7c324c6f49c15587032b1f65f","c3c6b4257e011eff227a8970bed8b3c3","f06e385eca707a7f458b12579fac7033","36e44d66b242e6176176dc6d1ee825ea",{"version":"69930d0b6495700237df397f041faf23","impliedNodeFormat":99},{"version":"6ff86dd202b3ccfbb32f63c84814220b","impliedNodeFormat":99},{"version":"641d6bec26f68f2cc37241d68370d42f","impliedNodeFormat":99},{"version":"cecbf8f1c2d5688b5f3713f381fc31c2","impliedNodeFormat":99},{"version":"5668cf0192f00795267d9353c0ff2091","impliedNodeFormat":99},{"version":"2a16e7c752e73d66f3f28be3d4d77a84","impliedNodeFormat":99},{"version":"dfc9f4a7a2cb95d01c0b76f7dd581ce0","impliedNodeFormat":99},{"version":"a6d6248452074bfd425efbce6441310f","signature":"3f42063243ccd5520af6e469ef93a7d4","impliedNodeFormat":99}],"fileIdsList":[[138,140],[141,142,143],[138],[139],[127],[127,130],[62,122,125,127,128,129,130,131,132,133,134,135],[58,60,130],[136],[127,128],[59,127,129],[60,62,64,65,66,67],[62,64,66,67],[62,64,66],[59,62,64,65,67],[58,60,61,62,63,64,65,66,67,68,69,122,123,124,125,126],[58,60,61,64],[60,61,64],[64,67],[58,59,61,62,63,65,66,67],[58,59,60,64,127],[64,65,66,67],[137],[66],[70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121],[144,145]],"options":{"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noFallthroughCasesInSwitch":true,"noUncheckedIndexedAccess":true,"noImplicitOverride":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"strict":true,"sourceMap":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[141,1],[144,2],[139,3],[140,4],[131,5],[135,6],[132,6],[128,5],[136,7],[133,8],[137,9],[134,6],[129,10],[130,11],[124,12],[65,13],[67,14],[66,15],[127,16],[126,17],[125,18],[68,13],[60,19],[64,20],[61,21],[62,22],[138,23],[70,24],[71,24],[72,24],[73,24],[74,24],[75,24],[76,24],[77,24],[78,24],[79,24],[80,24],[81,24],[82,24],[83,24],[85,24],[84,24],[86,24],[87,24],[88,24],[89,24],[90,24],[122,25],[91,24],[92,24],[93,24],[94,24],[95,24],[96,24],[97,24],[98,24],[99,24],[100,24],[101,24],[102,24],[103,24],[105,24],[104,24],[106,24],[107,24],[108,24],[109,24],[110,24],[111,24],[112,24],[113,24],[114,24],[115,24],[116,24],[117,24],[118,24],[121,24],[119,24],[120,24],[146,26]],"latestChangedDtsFile":"./index.d.ts"}
1
+ {"version":"7.0.2","root":[147,[149,151],[153,154]],"packageJsons":["../../../node_modules/@modelcontextprotocol/client/package.json","../../../node_modules/@modelcontextprotocol/core/package.json","../../../node_modules/eventsource/package.json","../../../node_modules/zod/package.json","../../../node_modules/zod/v4/classic/package.json","../../../node_modules/zod/v4/core/package.json","../../../node_modules/zod/v4/locales/package.json","../../../node_modules/zod/v4/package.json","../../core/package.json","../package.json"],"missingPackageJsons":["../../../node_modules/@modelcontextprotocol/client/dist/package.json","../../../node_modules/@modelcontextprotocol/core/dist/package.json","../../../node_modules/@modelcontextprotocol/core/internal/package.json","../../../node_modules/eventsource/dist/package.json"],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2022.d.ts","lib.dom.d.ts","lib.dom.iterable.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.es2022.array.d.ts","lib.es2022.error.d.ts","lib.es2022.intl.d.ts","lib.es2022.object.d.ts","lib.es2022.string.d.ts","lib.es2022.regexp.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../../../node_modules/zod/v4/core/json-schema.d.cts","../../../node_modules/zod/v4/core/standard-schema.d.cts","../../../node_modules/zod/v4/core/registries.d.cts","../../../node_modules/zod/v4/core/to-json-schema.d.cts","../../../node_modules/zod/v4/core/util.d.cts","../../../node_modules/zod/v4/core/versions.d.cts","../../../node_modules/zod/v4/core/schemas.d.cts","../../../node_modules/zod/v4/core/checks.d.cts","../../../node_modules/zod/v4/core/errors.d.cts","../../../node_modules/zod/v4/core/core.d.cts","../../../node_modules/zod/v4/core/parse.d.cts","../../../node_modules/zod/v4/core/regexes.d.cts","../../../node_modules/zod/v4/locales/ar.d.cts","../../../node_modules/zod/v4/locales/az.d.cts","../../../node_modules/zod/v4/locales/be.d.cts","../../../node_modules/zod/v4/locales/bg.d.cts","../../../node_modules/zod/v4/locales/ca.d.cts","../../../node_modules/zod/v4/locales/cs.d.cts","../../../node_modules/zod/v4/locales/da.d.cts","../../../node_modules/zod/v4/locales/de.d.cts","../../../node_modules/zod/v4/locales/el.d.cts","../../../node_modules/zod/v4/locales/en.d.cts","../../../node_modules/zod/v4/locales/eo.d.cts","../../../node_modules/zod/v4/locales/es.d.cts","../../../node_modules/zod/v4/locales/fa.d.cts","../../../node_modules/zod/v4/locales/fi.d.cts","../../../node_modules/zod/v4/locales/fr.d.cts","../../../node_modules/zod/v4/locales/fr-CA.d.cts","../../../node_modules/zod/v4/locales/he.d.cts","../../../node_modules/zod/v4/locales/hr.d.cts","../../../node_modules/zod/v4/locales/hu.d.cts","../../../node_modules/zod/v4/locales/hy.d.cts","../../../node_modules/zod/v4/locales/id.d.cts","../../../node_modules/zod/v4/locales/is.d.cts","../../../node_modules/zod/v4/locales/it.d.cts","../../../node_modules/zod/v4/locales/ja.d.cts","../../../node_modules/zod/v4/locales/ka.d.cts","../../../node_modules/zod/v4/locales/kh.d.cts","../../../node_modules/zod/v4/locales/km.d.cts","../../../node_modules/zod/v4/locales/ko.d.cts","../../../node_modules/zod/v4/locales/lt.d.cts","../../../node_modules/zod/v4/locales/mk.d.cts","../../../node_modules/zod/v4/locales/ms.d.cts","../../../node_modules/zod/v4/locales/nl.d.cts","../../../node_modules/zod/v4/locales/no.d.cts","../../../node_modules/zod/v4/locales/ota.d.cts","../../../node_modules/zod/v4/locales/ps.d.cts","../../../node_modules/zod/v4/locales/pl.d.cts","../../../node_modules/zod/v4/locales/pt.d.cts","../../../node_modules/zod/v4/locales/ro.d.cts","../../../node_modules/zod/v4/locales/ru.d.cts","../../../node_modules/zod/v4/locales/sl.d.cts","../../../node_modules/zod/v4/locales/sv.d.cts","../../../node_modules/zod/v4/locales/ta.d.cts","../../../node_modules/zod/v4/locales/th.d.cts","../../../node_modules/zod/v4/locales/tr.d.cts","../../../node_modules/zod/v4/locales/ua.d.cts","../../../node_modules/zod/v4/locales/uk.d.cts","../../../node_modules/zod/v4/locales/ur.d.cts","../../../node_modules/zod/v4/locales/uz.d.cts","../../../node_modules/zod/v4/locales/vi.d.cts","../../../node_modules/zod/v4/locales/zh-CN.d.cts","../../../node_modules/zod/v4/locales/zh-TW.d.cts","../../../node_modules/zod/v4/locales/yo.d.cts","../../../node_modules/zod/v4/locales/index.d.cts","../../../node_modules/zod/v4/core/doc.d.cts","../../../node_modules/zod/v4/core/api.d.cts","../../../node_modules/zod/v4/core/json-schema-processors.d.cts","../../../node_modules/zod/v4/core/json-schema-generator.d.cts","../../../node_modules/zod/v4/core/index.d.cts","../../../node_modules/zod/v4/classic/errors.d.cts","../../../node_modules/zod/v4/classic/parse.d.cts","../../../node_modules/zod/v4/classic/schemas.d.cts","../../../node_modules/zod/v4/classic/checks.d.cts","../../../node_modules/zod/v4/classic/compat.d.cts","../../../node_modules/zod/v4/classic/from-json-schema.d.cts","../../../node_modules/zod/v4/classic/iso.d.cts","../../../node_modules/zod/v4/classic/coerce.d.cts","../../../node_modules/zod/v4/classic/external.d.cts","../../../node_modules/zod/v4/classic/index.d.cts","../../../node_modules/zod/v4/index.d.cts","../../../node_modules/@modelcontextprotocol/core/dist/auth-BWdKR39I.d.mts","../../../node_modules/@modelcontextprotocol/core/dist/internal.d.mts","../../../node_modules/@modelcontextprotocol/client/dist/index-D4xIIEF6.d.mts","../../../node_modules/@modelcontextprotocol/client/dist/types-mS0yxCL0.d.mts","../../../node_modules/eventsource/dist/index.d.ts","../../../node_modules/@modelcontextprotocol/client/dist/index.d.mts","../src/lifecycle.ts","../../core/dist/index.d.ts","../src/index.ts","../src/oauth-error.ts","../src/oauth-url.ts","../../../node_modules/@modelcontextprotocol/core/dist/index.d.mts","../src/oauth.ts","../src/oauth-native.ts"],"fileInfos":[{"version":"16934abaab7026ac114da441aabea1a0","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f","feb6c6fb19cdb246a5d8acb36a6901c7",{"version":"aae8996e8b5684814785a42cbbefcd79","affectsGlobalScope":true,"impliedNodeFormat":1},"abad6dd56cc8caf095c165df8124d237",{"version":"926204c28cd3d073865348473ae28d2e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f25e42c801b2cb3cf2b39792006a9beb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1708ea4d34dc37fadadc63ca01127e80","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2b056277dd138e8f5650fc04e20eaa8d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1da2c1f258970fd3cc91184f69e91a9d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4fc71cf4a15b8d99675a31df77f26e07","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"d1b49564ddaeca3df5b6dbae925d2242","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6a25be566d60ccfc2d6e8b7bfdeefa83","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"8a20e27646985dfd58c57ca6566553dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9969f02ad3cdcbf4f709405cda44167f","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9c9be4792a7a4f42c15ae7360bf28779","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},"5f3c015bce4302b247acedb9ec20e302","a9fe29dcdd4288cacf574947747a4572","daada721cfdc43aa8e7c2e2d14d760de","c4d7f2ab9358166b1815281a9e767232","7703400f3e9d14c1e0670e37a530daf7","4158e698aebfc1ac453549ca68cf2301","15182d7d355f2cb580529a728a1c2149","8fb36d5345606a6ec0bcaae424f48c41","631ac96cecb09bd46857ff6ad032a8dc","ffd8c3d2e39447925561777d1ebcdc02","2b76267afeb2e83dff758e3fba2faa8a","c910e5cd97770188797f8ff632e19735","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","ee9981834b9f6f6958887811182849e8","224881373d4d18c065b09acb9a85cc5f","a21f1b172546b6a64cc7ddea394b54ea","7096aabc39a3b833dbdb0dee5ef12fca","8bdf05c98551836db89f23d60d176f56","5b3f18777c97e7ed444a39661c4462ba","cd3b63580b271a0e93649c0d92a1b098","1cc59f020b9d62d875bdb28a6e2f745b","a06c5977df8ff3f289f16a7505c8d539","8dd06ad8dc54dd7826195cfa6bfdc744","f04158c558df8c51d46a1fb44c832c1c","d1ab6402ad42100de1cf3f5d15aa9d27","96b06af537c71de0a80e9ed880958afd","dec40354e62d8ca81f5996c1760bc6da","a9356de7c324c6f49c15587032b1f65f","c3c6b4257e011eff227a8970bed8b3c3","f06e385eca707a7f458b12579fac7033","36e44d66b242e6176176dc6d1ee825ea",{"version":"69930d0b6495700237df397f041faf23","impliedNodeFormat":99},{"version":"6ff86dd202b3ccfbb32f63c84814220b","impliedNodeFormat":99},{"version":"641d6bec26f68f2cc37241d68370d42f","impliedNodeFormat":99},{"version":"cecbf8f1c2d5688b5f3713f381fc31c2","impliedNodeFormat":99},{"version":"5668cf0192f00795267d9353c0ff2091","impliedNodeFormat":99},{"version":"2a16e7c752e73d66f3f28be3d4d77a84","impliedNodeFormat":99},{"version":"0e3e7d8eb292626edafdc9190f5143e4","signature":"83eda579879a06882e480df1185e1242","impliedNodeFormat":99},{"version":"891b09464af76098afe3ed54bfd8f8f4","impliedNodeFormat":99},{"version":"14d7adc30e398d2be6da86011e907d1b","signature":"afa408f373a95c8fb0745b0080c89c14","impliedNodeFormat":99},{"version":"9067dba22b135a8a06764f25be689c96","signature":"3e63dbdf3825bc0ef760c5f71d1fe16d","impliedNodeFormat":99},{"version":"77e2f77e0f01ad365b75320f0665c3f1","signature":"150b4427ca2082c9f761b8069ab5185d","impliedNodeFormat":99},{"version":"41b63e6165db7c45c4b471fc9ac20d28","impliedNodeFormat":99},{"version":"adf3cd09fe40db7efb16dea8ff5b9d06","signature":"84fff14d031671a8ed457ef437bad12a","impliedNodeFormat":99},{"version":"447a8c0a32c83428ff5249eee22b39e6","signature":"c600f990155f85d455bbdabda5244b14","impliedNodeFormat":99}],"fileIdsList":[[140,142],[143,144,145],[140],[141],[129],[129,132],[64,124,127,129,130,131,132,133,134,135,136,137],[60,62,132],[138],[129,130],[61,129,131],[62,64,66,67,68,69],[64,66,68,69],[64,66,68],[61,64,66,67,69],[60,62,63,64,65,66,67,68,69,70,71,124,125,126,127,128],[60,62,63,66],[62,63,66],[66,69],[60,61,63,64,65,67,68,69],[60,61,62,66,129],[66,67,68,69],[139],[68],[72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123],[146,147,148],[146,150,151,153],[150],[146,150,151,152,154]],"options":{"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noFallthroughCasesInSwitch":true,"noUncheckedIndexedAccess":true,"noImplicitOverride":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"strict":true,"sourceMap":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo"},"referencedMap":[[143,1],[146,2],[141,3],[152,4],[142,4],[133,5],[137,6],[134,6],[130,5],[138,7],[135,8],[139,9],[136,6],[131,10],[132,11],[126,12],[67,13],[69,14],[68,15],[129,16],[128,17],[127,18],[70,13],[62,19],[66,20],[63,21],[64,22],[140,23],[72,24],[73,24],[74,24],[75,24],[76,24],[77,24],[78,24],[79,24],[80,24],[81,24],[82,24],[83,24],[84,24],[85,24],[87,24],[86,24],[88,24],[89,24],[90,24],[91,24],[92,24],[124,25],[93,24],[94,24],[95,24],[96,24],[97,24],[98,24],[99,24],[100,24],[101,24],[102,24],[103,24],[104,24],[105,24],[107,24],[106,24],[108,24],[109,24],[110,24],[111,24],[112,24],[113,24],[114,24],[115,24],[116,24],[117,24],[118,24],[119,24],[120,24],[123,24],[121,24],[122,24],[149,26],[154,27],[151,28],[153,29]],"latestChangedDtsFile":"./oauth-native.d.ts"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,10 @@
1
1
  import type { Client, ClientOptions } from "@modelcontextprotocol/client";
2
+ export { MCP_NATIVE_MAX_CONNECTION_ATTEMPTS, MCP_NATIVE_MAX_CONNECTION_BACKOFF_MS, MCP_NATIVE_MAX_CONNECTION_TIMEOUT_MS, McpNativeConnectionLifecycle, McpNativeConnectionLifecycleError, createMcpNativeConnectionLifecycle, } from "./lifecycle.js";
3
+ export type { McpNativeConnectionErrorClassification, McpNativeConnectionErrorKind, McpNativeConnectionLifecycleOptions, McpNativeHostState, McpNativeManagedConnection, McpNativeOperationalEvent, McpNativeOperationalSink, } from "./lifecycle.js";
4
+ /** Maximum top-level items accepted from one SDK result collection. */
5
+ export declare const MCP_SDK_MAX_RESULT_ITEMS = 1024;
6
+ /** Maximum icons or declared icon sizes retained on one MCP value. */
7
+ export declare const MCP_SDK_MAX_DECORATION_ITEMS = 64;
2
8
  import type { JsonObject, McpClient, McpExtensionSettings, McpListToolsResult, McpReadResourceResult, McpToolCallResult } from "@mcp-native/core";
3
9
  type OfficialMcpClient = Pick<Client, "callTool" | "listTools" | "readResource"> & Partial<Pick<Client, "getServerCapabilities">>;
4
10
  export interface McpSdkClientAdapterOptions {
@@ -43,5 +49,4 @@ export declare class McpSdkClientAdapter implements McpClient {
43
49
  getServerExtensionSettings(): McpExtensionSettings;
44
50
  }
45
51
  export declare function createMcpSdkClientAdapter(client: OfficialMcpClient, options?: McpSdkClientAdapterOptions): McpSdkClientAdapter;
46
- export {};
47
52
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAM1E,OAAO,KAAK,EACV,UAAU,EAIV,SAAS,EAET,oBAAoB,EAEpB,kBAAkB,EAClB,qBAAqB,EAIrB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,KAAK,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,cAAc,CAAC,GAC9E,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAEjD,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,sFAAsF;AACtF,eAAO,MAAM,4BAA4B,EAAG,YAAqB,CAAC;AAElE,8EAA8E;AAC9E,eAAO,MAAM,mCAAmC,EAAG,YAAqB,CAAC;AAEzE,qFAAqF;AACrF,eAAO,MAAM,uCAAuC,uCAGzC,CAAC;AAEZ,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,aAAa,GAAG,aAAa,CAAC;AAE3E,MAAM,WAAW,gCAAgC;IAC/C,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,GAAE,qBAA8B,EACpC,iBAAiB,GAAE,gCAAqC,GACvD,aAAa,CAqCf;AAED,2FAA2F;AAC3F,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACF;AAED;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,SAAS;;IAInD,YAAY,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAE,0BAA+B,EAM9E;IAED,0BAA0B,IAAI,oBAAoB,CAEjD;IAEK,SAAS,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAU7C;IAEK,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAmB/E;IAEK,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAS9D;IAED,0BAA0B,IAAI,oBAAoB,CAYjD;CACF;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,0BAA+B,GACvC,mBAAmB,CAErB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,EACL,kCAAkC,EAClC,oCAAoC,EACpC,oCAAoC,EACpC,4BAA4B,EAC5B,iCAAiC,EACjC,kCAAkC,GACnC,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,sCAAsC,EACtC,4BAA4B,EAC5B,mCAAmC,EACnC,kBAAkB,EAClB,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAWxB,uEAAuE;AACvE,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,sEAAsE;AACtE,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,OAAO,KAAK,EACV,UAAU,EAIV,SAAS,EAET,oBAAoB,EAEpB,kBAAkB,EAClB,qBAAqB,EAIrB,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAE1B,KAAK,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,cAAc,CAAC,GAC9E,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAEjD,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,sFAAsF;AACtF,eAAO,MAAM,4BAA4B,EAAG,YAAqB,CAAC;AAElE,8EAA8E;AAC9E,eAAO,MAAM,mCAAmC,EAAG,YAAqB,CAAC;AAEzE,qFAAqF;AACrF,eAAO,MAAM,uCAAuC,uCAGzC,CAAC;AAEZ,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,aAAa,GAAG,aAAa,CAAC;AAE3E,MAAM,WAAW,gCAAgC;IAC/C,qFAAqF;IACrF,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,GAAE,qBAA8B,EACpC,iBAAiB,GAAE,gCAAqC,GACvD,aAAa,CAqCf;AAED,2FAA2F;AAC3F,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,EAGlD;CACF;AAED;;;GAGG;AACH,qBAAa,mBAAoB,YAAW,SAAS;;IAInD,YAAY,MAAM,EAAE,iBAAiB,EAAE,OAAO,GAAE,0BAA+B,EAM9E;IAED,0BAA0B,IAAI,oBAAoB,CAEjD;IAEK,SAAS,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAU7C;IAEK,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAmB/E;IAEK,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAW9D;IAED,0BAA0B,IAAI,oBAAoB,CAYjD;CACF;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,0BAA+B,GACvC,mBAAmB,CAErB"}
package/dist/index.js CHANGED
@@ -1,4 +1,9 @@
1
- import { parseMcpExtensionSettings, parseJsonObject as parseCoreJsonObject, parseJsonValue as parseCoreJsonValue, } from "@mcp-native/core";
1
+ export { MCP_NATIVE_MAX_CONNECTION_ATTEMPTS, MCP_NATIVE_MAX_CONNECTION_BACKOFF_MS, MCP_NATIVE_MAX_CONNECTION_TIMEOUT_MS, McpNativeConnectionLifecycle, McpNativeConnectionLifecycleError, createMcpNativeConnectionLifecycle, } from "./lifecycle.js";
2
+ import { JSON_MAX_DEPTH, JSON_MAX_STRING_LENGTH, JSON_MAX_TOTAL_STRING_CODE_UNITS, JSON_MAX_VALUES, parseMcpExtensionSettings, parseJsonObject as parseCoreJsonObject, parseJsonValue as parseCoreJsonValue, } from "@mcp-native/core";
3
+ /** Maximum top-level items accepted from one SDK result collection. */
4
+ export const MCP_SDK_MAX_RESULT_ITEMS = 1_024;
5
+ /** Maximum icons or declared icon sizes retained on one MCP value. */
6
+ export const MCP_SDK_MAX_DECORATION_ITEMS = 64;
2
7
  /** The exact MCP core revision targeted by MCP Native's modern compatibility lane. */
3
8
  export const MCP_NATIVE_PROTOCOL_REVISION = "2026-07-28";
4
9
  /** The only pre-2026 revision covered by MCP Native's compatibility tests. */
@@ -71,31 +76,31 @@ export class McpSdkClientAdapter {
71
76
  return this.#clientExtensions;
72
77
  }
73
78
  async listTools() {
74
- const result = expectObject(await this.#client.listTools(), "tools result");
79
+ const result = expectResultObject(await this.#client.listTools(), "tools result");
75
80
  return {
76
- tools: expectArray(result.tools, "tools result.tools").map((value, index) => mapTool(value, `tools result.tools[${index}]`)),
81
+ tools: expectArray(result.tools, "tools result.tools", MCP_SDK_MAX_RESULT_ITEMS).map((value, index) => mapTool(value, `tools result.tools[${index}]`)),
77
82
  ...mapPagination(result, "tools result"),
78
83
  ...mapCacheHints(result, "tools result"),
79
84
  ...mapResultMeta(result, "tools result"),
80
85
  };
81
86
  }
82
87
  async callTool(name, arguments_) {
83
- const result = expectObject(await this.#client.callTool({ name, arguments: arguments_ }), "tool result");
88
+ const result = expectResultObject(await this.#client.callTool({ name, arguments: arguments_ }), "tool result");
84
89
  const isError = optionalBoolean(result.isError, "tool result.isError");
85
90
  const structuredContent = result.structuredContent === undefined
86
91
  ? undefined
87
92
  : expectJsonValue(result.structuredContent, "tool result.structuredContent");
88
93
  return {
89
- content: expectArray(result.content, "tool result.content").map((block, index) => mapContent(block, `tool result.content[${index}]`)),
94
+ content: expectArray(result.content, "tool result.content", MCP_SDK_MAX_RESULT_ITEMS).map((block, index) => mapContent(block, `tool result.content[${index}]`)),
90
95
  ...(isError === undefined ? {} : { isError }),
91
96
  ...(structuredContent === undefined ? {} : { structuredContent }),
92
97
  ...mapResultMeta(result, "tool result"),
93
98
  };
94
99
  }
95
100
  async readResource(uri) {
96
- const result = expectObject(await this.#client.readResource({ uri }), "resource result");
101
+ const result = expectResultObject(await this.#client.readResource({ uri }), "resource result");
97
102
  return {
98
- contents: expectArray(result.contents, "resource result.contents").map((resource, index) => mapResource(resource, `resource result.contents[${index}]`)),
103
+ contents: expectArray(result.contents, "resource result.contents", MCP_SDK_MAX_RESULT_ITEMS).map((resource, index) => mapResource(resource, `resource result.contents[${index}]`)),
99
104
  ...mapCacheHints(result, "resource result"),
100
105
  ...mapResultMeta(result, "resource result"),
101
106
  };
@@ -225,7 +230,7 @@ function mapOptionalAudience(value, path) {
225
230
  if (value === undefined) {
226
231
  return undefined;
227
232
  }
228
- return expectArray(value, path).map((role, index) => {
233
+ return expectArray(value, path, 2).map((role, index) => {
229
234
  if (role !== "assistant" && role !== "user") {
230
235
  throw new McpSdkAdapterError(`Expected "assistant" or "user" at ${path}[${index}]`);
231
236
  }
@@ -236,7 +241,7 @@ function mapOptionalIcons(value, path) {
236
241
  if (value === undefined) {
237
242
  return undefined;
238
243
  }
239
- return expectArray(value, path).map((iconValue, index) => {
244
+ return expectArray(value, path, MCP_SDK_MAX_DECORATION_ITEMS).map((iconValue, index) => {
240
245
  const iconPath = `${path}[${index}]`;
241
246
  const icon = expectObject(iconValue, iconPath);
242
247
  const mimeType = optionalString(icon.mimeType, `${iconPath}.mimeType`);
@@ -294,16 +299,98 @@ function expectObject(value, path) {
294
299
  }
295
300
  return value;
296
301
  }
297
- function expectArray(value, path) {
302
+ function expectResultObject(value, path) {
303
+ try {
304
+ const normalized = normalizeSdkResultValue(value, path, { ancestors: new Set(), stringCodeUnits: 0, values: 0 }, 0);
305
+ return expectObject(normalized, path);
306
+ }
307
+ catch (error) {
308
+ const message = error instanceof Error ? error.message : `Invalid JSON object at ${path}`;
309
+ throw new McpSdkAdapterError(message, { cause: error });
310
+ }
311
+ }
312
+ function normalizeSdkResultValue(value, path, state, depth) {
313
+ if (depth > JSON_MAX_DEPTH) {
314
+ throw new TypeError(`JSON value exceeds maximum depth of ${JSON_MAX_DEPTH} at ${path}`);
315
+ }
316
+ state.values += 1;
317
+ if (state.values > JSON_MAX_VALUES) {
318
+ throw new TypeError(`JSON value exceeds maximum of ${JSON_MAX_VALUES} values`);
319
+ }
320
+ if (value === null || typeof value === "boolean")
321
+ return value;
322
+ if (typeof value === "number") {
323
+ if (!Number.isFinite(value))
324
+ throw new TypeError(`Expected a finite number at ${path}`);
325
+ return value;
326
+ }
327
+ if (typeof value === "string") {
328
+ consumeSdkResultString(value, path, state);
329
+ return value;
330
+ }
331
+ if (value === null || typeof value !== "object") {
332
+ throw new TypeError(`Expected a JSON value at ${path}`);
333
+ }
334
+ if (state.ancestors.has(value))
335
+ throw new TypeError(`Circular JSON value at ${path}`);
336
+ state.ancestors.add(value);
337
+ try {
338
+ if (Array.isArray(value)) {
339
+ const result = [];
340
+ for (let index = 0; index < value.length; index += 1) {
341
+ if (!Object.hasOwn(value, index)) {
342
+ throw new TypeError(`Sparse JSON array item at ${path}[${index}]`);
343
+ }
344
+ result.push(normalizeSdkResultValue(value[index], `${path}[${index}]`, state, depth + 1));
345
+ }
346
+ return result;
347
+ }
348
+ const object = expectObject(value, path);
349
+ const result = {};
350
+ for (const [key, child] of Object.entries(object)) {
351
+ // Official SDK result objects may materialize absent optional fields as
352
+ // `undefined`; treat those exactly as omitted object properties.
353
+ if (child === undefined)
354
+ continue;
355
+ consumeSdkResultString(key, `${path} object key`, state);
356
+ Object.defineProperty(result, key, {
357
+ configurable: true,
358
+ enumerable: true,
359
+ value: normalizeSdkResultValue(child, `${path}.${key}`, state, depth + 1),
360
+ writable: true,
361
+ });
362
+ }
363
+ return result;
364
+ }
365
+ finally {
366
+ state.ancestors.delete(value);
367
+ }
368
+ }
369
+ function consumeSdkResultString(value, path, state) {
370
+ if (value.length > JSON_MAX_STRING_LENGTH) {
371
+ throw new TypeError(`String at ${path} exceeds maximum length of ${JSON_MAX_STRING_LENGTH}`);
372
+ }
373
+ state.stringCodeUnits += value.length;
374
+ if (state.stringCodeUnits > JSON_MAX_TOTAL_STRING_CODE_UNITS) {
375
+ throw new TypeError(`JSON value exceeds maximum cumulative string/key length of ${JSON_MAX_TOTAL_STRING_CODE_UNITS}`);
376
+ }
377
+ }
378
+ function expectArray(value, path, maximumLength = MCP_SDK_MAX_RESULT_ITEMS) {
298
379
  if (!Array.isArray(value)) {
299
380
  throw new McpSdkAdapterError(`Expected an array at ${path}`);
300
381
  }
382
+ if (value.length > maximumLength) {
383
+ throw new McpSdkAdapterError(`Array at ${path} exceeds maximum of ${maximumLength} items`);
384
+ }
301
385
  return value;
302
386
  }
303
387
  function expectString(value, path) {
304
388
  if (typeof value !== "string") {
305
389
  throw new McpSdkAdapterError(`Expected a string at ${path}`);
306
390
  }
391
+ if (value.length > JSON_MAX_STRING_LENGTH) {
392
+ throw new McpSdkAdapterError(`String at ${path} exceeds maximum length of ${JSON_MAX_STRING_LENGTH}`);
393
+ }
307
394
  return value;
308
395
  }
309
396
  function optionalString(value, path) {
@@ -322,7 +409,7 @@ function optionalStringArray(value, path) {
322
409
  if (value === undefined) {
323
410
  return undefined;
324
411
  }
325
- return expectArray(value, path).map((item, index) => expectString(item, `${path}[${index}]`));
412
+ return expectArray(value, path, MCP_SDK_MAX_DECORATION_ITEMS).map((item, index) => expectString(item, `${path}[${index}]`));
326
413
  }
327
414
  function optionalTheme(value, path) {
328
415
  if (value === undefined) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}