mcp-doctor v0.3.3
mcp-doctor v0.3.3
mcp-doctor v0.3.3 is a security patch for two independently bounded
resource-amplification paths.
Fragmented request-scoped SSE is now decoded incrementally. Each accepted byte
is scanned in order without reparsing prior chunks, while current-line,
current-event, payload, per-message, aggregate-output, and message-count state
remain bounded. CR, LF, CRLF, split UTF-8, comments, empty priming events,
notifications, server requests, EOF, and early matching responses retain their
existing protocol behavior.
Draft 2020-12 schema processing now charges its preliminary walk,
meta-validation, validator construction, local-reference fan-out, combinators,
instance access, strings, collections, equality, uniqueness, and pattern work
to schema_evaluation_steps. Pattern complexity—including counted repetition,
character-class ranges, reachable pattern fan-out, and all potentially
inspected instance text—is admitted before matching. Exhaustion produces the
existing typed limit and stops before an affected tool call.
Pattern validation now uses the bounded linear-time engine. Patterns requiring
backtracking-only constructs such as look-around or backreferences receive the
typed unsupported_linear_pattern diagnostic. This is a deliberate
resource-safety subset of Draft 2020-12 pattern syntax and should be considered
when upgrading a server that advertises those constructs.
Users of 0.1.0 through 0.3.2 should upgrade when diagnosing an endpoint,
process, or scenario that may supply adversarial SSE fragmentation or compact
schema/instance cross-products. Until upgraded, diagnose only trusted schemas
and avoid Streamable HTTP endpoints whose response framing is not trusted.
The fragmented-SSE and JSON Schema root causes retain separate advisory
records because their affected version ranges differ. Their public links are
added only in a post-publication closure update after the patched channels and
both coordinated advisories are public.
The canonical instruction-only Agent Skill is reissued with exact 0.3.3
identity and no new execution authority. A new host-support claim requires a
separate exact-version observation; the historical 0.3.2 evidence is not
silently extended to this patch.
Install the exact version with Cargo:
cargo install mcp-doctor --version '=0.3.3' --lockedOr build the immutable source through Homebrew on macOS or GNU/Linux:
brew install --build-from-source EnjoyableWork/tap/mcp-doctorNative archives remain limited to GNU/Linux ARM64 and x64. Source installs are
verified on represented macOS, GNU/Linux, and Windows hosts. The release does
not add a protocol revision, transport, diagnostic, output format, active
authority, or platform-signing claim.
See the release integrity guide for the artifact, provenance,
and installed-channel verification contract.