Export Protocol and mergeCapabilities from client/server package roots (#2501)
This commit is contained in:
parent
e81758caed
commit
1480241e2a
1 changed files with 246 additions and 73 deletions
|
|
@ -108,9 +108,8 @@ In addition the codemod:
|
|||
`completable(schema, cb).optional()` (see
|
||||
[Standard Schema objects](#standard-schema-objects-raw-shapes-deprecated)); shapes it
|
||||
cannot invert get an `@mcp-codemod-error` marker.
|
||||
- Drops `Protocol` / `mergeCapabilities` from `shared/protocol.js` imports, re-exports,
|
||||
mocks, and dynamic imports — no v2 package exports them — leaving a marker with the
|
||||
replacement at each site.
|
||||
- Rewrites `Protocol` / `mergeCapabilities` imports from `shared/protocol.js` to the
|
||||
client or server package root, like the module's other symbols.
|
||||
|
||||
## What the codemod does NOT handle
|
||||
|
||||
|
|
@ -1444,13 +1443,15 @@ now typed as JSON-compatible objects (nested JSON values) rather than arbitrary
|
|||
objects. A payload typed `Record<string, unknown>` no longer assigns (`TS2322`) — give
|
||||
the source a JSON-compatible type or cast at the boundary.
|
||||
|
||||
The `Protocol` base class itself is no longer exported (it is internal engine). If you
|
||||
were reaching into protocol internals — rare, mostly debugging tools —
|
||||
`client.fallbackRequestHandler` / `server.fallbackRequestHandler` receives every
|
||||
inbound request that no registered handler matches, before capability gating. Delete
|
||||
the v1 `shared/protocol.js` import: `Protocol` has no v2 import path. The codemod
|
||||
drops `Protocol` (and `mergeCapabilities`) from the rewritten import and leaves an
|
||||
`@mcp-codemod-error` marker at the site explaining the replacement.
|
||||
The `Protocol` base class and `mergeCapabilities` moved: import them from the
|
||||
`@modelcontextprotocol/client` or `@modelcontextprotocol/server` package root instead
|
||||
of `shared/protocol.js`. Most code should not use `Protocol` directly — `Client` and
|
||||
`Server` are the supported surfaces, and for observing unmatched inbound requests
|
||||
prefer `client.fallbackRequestHandler` / `server.fallbackRequestHandler`. The codemod
|
||||
rewrites `Protocol` and `mergeCapabilities` imports to the package root, like the
|
||||
module's other symbols. One caveat: the client and server packages each bundle their
|
||||
own compiled copy of the class, so the two roots' `Protocol` exports are distinct
|
||||
classes — import it from one package consistently within a process.
|
||||
|
||||
#### JSON Schema 2020-12 posture (SEP-1613, SEP-2106)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue