Skip to content

Update dependency @mcp-b/webmcp-polyfill to v5 - #9103

Open
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/mcp-b-webmcp-polyfill-5.x
Open

Update dependency @mcp-b/webmcp-polyfill to v5#9103
renovate[bot] wants to merge 1 commit into
masterfrom
renovate/mcp-b-webmcp-polyfill-5.x

Conversation

@renovate

@renovate renovate Bot commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@mcp-b/webmcp-polyfill (source) 4.0.05.1.0 age confidence

Release Notes

WebMCP-org/npm-packages (@​mcp-b/webmcp-polyfill)

v5.1.0

Compare Source

Patch Changes

v5.0.3

Compare Source

Patch Changes

v5.0.1

Patch Changes

v5.0.0

Major Changes
  • de0b41c: Adopt the current strict WebMCP lifecycle. ESM initialization is explicit,
    testing support is opt-in, unsupported cross-document options fail closed, and
    declarative forms stay synchronized with the document and open shadow roots.

  • f80daeb: Return RegisteredTool.inputSchema from getTools() as a JSON Schema object
    instead of a serialized string, following webmcp#241 and Chrome 154.0.8013.
    The polyfill and the standalone BrowserMcpServer both parse a fresh object
    per call, exactly like Blink parsing its serialized copy; a schema whose
    custom toJSON serializes to non-object JSON is omitted rather than surfaced
    as a value consumers would mistake for a pre-154 serialized string.

    Consumers stay compatible with both generations of Chrome: the browser-server
    native backfill and the relay embed accept the object shape from new Chrome and
    the string shape that the 149–156 Origin Trial population still returns. The
    RegisteredTool.inputSchema type widens to InputSchema | string to make that
    branching explicit.

    Before this, Chrome ≥154.0.8013 broke native tool mirroring entirely:
    JSON.parse on the new object threw, and every native tool — including
    child-frame tools — was dropped as malformed.

Patch Changes
  • de0b41c: Match Chrome's observable API shape, so webmcp/idlharness.https.window.html
    now passes 20/20 subtests against the polyfill.

    document.modelContext is a getter on Document.prototype rather than a value
    property on the document instance, as WebIDL's [SameObject] readonly attribute
    requires. Feature detection with 'modelContext' in document and reads of
    document.modelContext are unaffected; code that inspected the document's own
    property descriptor — Object.hasOwn(document, 'modelContext') or
    Object.keys(document) — must look at Document.prototype instead.

    The context object also stops leaking its internals: bookkeeping fields and
    helpers are #private or static, so only registerTool, getTools,
    executeTool and ontoolchange appear on the prototype, and the polyfill's own
    marker property is non-enumerable so instances spread and stringify like
    Chrome's. registerTool, getTools and executeTool report the length
    WebIDL specifies (1, 0, 2); their behavior is unchanged.

  • de0b41c: Report SubmitEvent.agentInvoked only for submissions a declarative tool call
    started. Ordinary user submissions no longer claim agent attribution, so
    respondWith() throws InvalidStateError outside a running tool call. Submit
    listeners now share the per-root lifecycle that already owns reset listeners.

  • de0b41c: Require Node 20 or newer. @mcp-b/global, @mcp-b/mcp-iframe,
    @mcp-b/webmcp-polyfill and @mcp-b/webmcp-ts-sdk previously allowed Node 18;
    the rest declared no engines range at all and now state the same floor. Node 18
    reached end of life in April 2025. Browser builds are unaffected — this governs
    build tooling and the relay CLI.

  • de0b41c: Stop emitting declaration source maps, and ship the MIT LICENSE text these
    packages already declared. Each package shipped dist without src, so every
    published .d.ts.map pointed at a file that was not in the tarball; editors
    already fall back to the .d.ts itself. @mcp-b/webmcp-types keeps its maps —
    it is the one package that ships src, so its maps resolve.

  • f1dbaa0: Align declarative form execution with Chromium and the upstream Web Platform
    Tests. Autosubmit now preserves native event ordering, opaque documents report
    their effective origin, and the composed runtime forwards behavior-only form
    registration changes.

  • Updated dependencies [de0b41c]

  • Updated dependencies [de0b41c]

  • Updated dependencies [de0b41c]

  • Updated dependencies [f80daeb]


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/mcp-b-webmcp-polyfill-5.x branch from e75f8e9 to 6725351 Compare September 13, 2026 21:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants