Skip to content

Network: Mcp-* headers, new error codes, cancellation-as-abort #1628

Description

@cliffhall

Stack: SDK V2 + New Spec — 5 of 10 (pairs with card 4; needs era model from card 3).

Upgrade the Network tab for the standardized HTTP headers and new error taxonomy of the modern Streamable HTTP transport.

Scope

  • Display and validate the new headers: Mcp-Method, Mcp-Name, Mcp-Param-* (and MCP-Protocol-Version), including =?base64?{b64}?= sentinel-encoded values. Show header/body consistency at a glance.
  • New error codes shown distinctly: -32020 HeaderMismatch, -32021 MissingRequiredClientCapability, -32022 UnsupportedProtocolVersion (body lists supported) — all HTTP 400; plus modern -32601 as HTTP 404 (the JSON-RPC body is what distinguishes a modern server from a legacy HTTP+SSE bare 404).
  • Cancellation now appears as connection abort, not a notifications/cancelled frame — reflect that in the Network view.
  • Verify browser-path header mirroring: Mcp-Param-* mirroring is skipped in browsers (CORS) and happens on the Node side. Since the web client proxies through the backend, mirroring should work — verify in core/mcp/remote/** and surface accurately.
  • Raw-request passthrough is the only way to exercise page-by-page pagination and cache-bypass — coordinate with the raw-request work in card 1 (explicit ResultSchema), optionally expose "fetch single page" / "bypass cache" / "refresh".

Key files

clients/web/src/components/screens/NetworkScreen/*, groups/NetworkEntry/*, fetchCategories.ts, core/mcp/remote/**.

Acceptance

  • Modern headers render + validate; the three new error codes are visually distinct.
  • Browser-path mirroring behavior confirmed and correctly labeled.
  • npm run ci green.

Ref: specification/v2_new_spec_impact.md §4.1, §7.7, §8.2(headers), §9.2(Network), §10.

Metadata

Metadata

Assignees

Labels

v2Issues and PRs for v2

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions