Highlight: One daemon per OS user now serves every configuration. Ordinary CLI invocations and generated CLIs reuse the same retained MCP connections and a single canonical Chrome owner instead of racing competing per-config hosts. The new protocol requires a one-time mcporter daemon migrate after upgrading all clients.
Daemon
- Serve every resolved configuration as an immutable view of one shared OS-user daemon, so ordinary and generated clients reuse the same retained connections and one canonical Chrome owner; configuration filenames, working directories, and HOME/XDG overrides no longer select another production daemon. (PR #346)
- Add
mcporter daemon migrateto inspect live legacy per-config daemons, stop them after a confirmed drain, and upgrade current-user-owned0755state directories to0700; ordinary startup refuses legacy permissions with migration guidance instead of changing them silently. (PR #346) - Return protocol errors, daemon-generation changes, and expired view handles to the caller rather than replaying a request whose outcome is uncertain, and keep active or uncertain work safe from idle shutdown. (PR #346)
- Keep list and serve visibility and tool filters local to each registered view, and scope OAuth vaults, refresh locks, and browser suppression to each connection while HTTP aliases retain separate credential identities. (PR #346)
Chrome relay
- Decide daemon freshness from effective per-server relay settings, so unset policy, equivalent default controls, and fully overridden process values no longer restart a compatible daemon. Meaningful policy, profile, endpoint, credential rotation, and discovery inputs remain part of the retained relay identity, and key rotation or a changed discovery identity returns an owner conflict instead of silently replacing the host. (PR #345)
OAuth
- Keep OAuth running when macOS
openor Windowsrundll32cannot start, so the printed authorization URL remains usable. (PR #341, thanks @SebTardif)
Reliability
- Remove temporary environment overrides when a later value fails validation or resolution, preventing failed setup from affecting subsequent MCP connections. (PR #342, thanks @oodadoudou)
Maintenance
- Refresh runtime schema validation, query parsing, generated CLI bundling, and development tooling, including Zod's default-factory cycle-walk and reserved-key parsing fixes plus bounded
tsxtransform caching, while preserving Node 24 support and the 48-hour dependency release-age policy. (PRs #340 and #343) - Cover stored-credential validation guards for OAuth with additional tests. (PR #331, thanks @KrasimirKralev)
Publication verification
- npm version · registry tarball
- npm integrity:
sha512-lSe7NSOWob+FZgJaGsDfcurdbiWqHns0Kxx+pHujB1Vneq+dC7zba8rd0PfcPeI5a5qmEdAxkm3wcDkdOgaZBA== - Source CI; local gates, both signed/notarized native architectures, and exact npm artifact installation verified.
- Protected arm64 and Intel asset verification passed for these exact assets.