Skip to content

mcporter v0.12.0

Latest

Choose a tag to compare

@steipete steipete released this 10 Jun 05:50
· 9 commits to main since this release
v0.12.0
023314c

Highlights

  • Add cache-friendly disableOAuth support across headless runtime, CLI, daemon, proxy, and callOnce paths.
  • Add per-server mcporter serve endpoints at /mcp/<server> plus MCP traffic record/replay helpers.
  • Improve daemon reliability, keep CloudBase authentication polling alive, and return non-zero status for explicit unknown-server list failures.

Changes

OAuth

  • Add cache-friendly disableOAuth support across headless runtime, CLI, daemon, proxy, and callOnce paths so callers can suppress interactive OAuth without losing connection reuse. (Issues #197, #199, #201, thanks @feniix)
  • Recover cleanly from renamed OAuth server entries, invalid refresh tokens, and stale dynamic client registrations without reusing unrelated same-URL credentials.
  • Prevent concurrent OAuth vault updates from briefly exposing empty lock files and losing credential entries under load.

CLI

  • Add per-server Streamable HTTP paths for mcporter serve at /mcp/<server>, exposing one keep-alive server with original tool names while preserving aggregate /mcp namespacing. (PR #194, thanks @zm2231)
  • Add mcporter record and mcporter replay helpers for capturing and replaying MCP JSON-RPC traffic, with server filters and daemon-safe manual env setup. (PR #192, thanks @LDMB123)
  • Prevent direct daemon starts from rebinding over an already-running healthy daemon, avoiding orphaned keep-alive processes during foreground or launch races. (PR #195, thanks @zm2231)
  • Return a non-zero exit code for explicit mcporter list <unknown-server> failures while preserving aggregate list health checks by default. (Issue #203, thanks @theo674)
  • Reconcile keep-alive daemon metadata with the responding process and serialize daemon startup across parallel clients, preventing duplicate orphaned daemons. (Issue #191, thanks @dtmsyi)
  • Keep CloudBase MCP alive by default so device-code authentication can finish polling and persist credentials after returning AUTH_PENDING. (PR #193, thanks @sevzq)
  • Keep daemon-managed stdio servers warm across repeated mcporter list requests instead of treating non-interactive tool listing as a throwaway process. (Issue #188, thanks @robertoronderosjr)

Tooling / Dependencies

  • Refresh development dependencies and satisfy the stricter oxlint check.

Verification

  • npm: mcporter@0.12.0
  • Registry tarball: mcporter-0.12.0.tgz
  • npm integrity: sha512-1jM+UcieQjLbQReVW0teYy8QS+2VH+/6sojK1rEdh6D5P5jsBuCRFW//0ZEhcHEsvLacSsuPyZLcV7UDJY/ouA==
  • Published: 2026-06-10T05:49:11.334Z
  • CI: release commit checks
  • Release commit: 023314cf31cd15759830296a61ac2b1b982bdd1d

SHA256 (mcporter-macos-arm64-v0.12.0.tar.gz): 6bd80a34422a890b92e2ff1074966114677e06aa92126ff8b850257b29c4441f

SHA256 (mcporter-0.12.0.tgz): 847753ddffaeb63305a3088730babb94b9a3ab83ef6e9f00551dae8bba70f3d0