inspector/specification
Repository files (latest commit first)
Filename Latest commit message Latest commit date
cliffhall 3e76498366 chore: upgrade the MCP TypeScript SDK from 2.0.0-beta.5 to 2.0.0
The SDK shipped 2.0.0 final on 2026-07-27. Shipping the Inspector against a
prerelease of its core protocol library is a supply-chain and reproducibility
liability we no longer have a reason to carry: a beta is eligible for unpublish
and deprecation in a way a stable release is not.

Bumped in the root package.json only — client, core, server, server-legacy.
Node resolution walks up, so the root install already serves every client; a
per-client declaration would install a second copy that drifts from it (#1970).
Verified after install: one copy of each at 2.0.0, no clients/*/node_modules/
@modelcontextprotocol/* at all. ext-apps is a separate package on its own ^1.7.4
line and is untouched.

The beta.5 → 2.0.0 delta is seven commits. Reviewed each for call-site impact:

  - core/src/schemas.ts (+16/-16) is doc-comment only — every hunk rewrites a
    spec URL from a commit-pinned GitHub blob to the published 2026-07-28 page.
    No schema surface change, so nothing in core/mcp or core/json is affected.
  - client 2.0.0 wants zod ^4.2.0; we are on ^4.4.3, so no zod move and no risk
    of the #1896 dual-copy tsc heap blowup. verify:dep-lockstep stays green and
    the lockfile delta is exactly the four packages with no transitive churn.
  - fix(validators) honors declared draft-07/06 JSON Schema dialects instead of
    rejecting them, which can only widen the set of tool schemas we accept.
  - The SSE keep-alive and legacyWrap changes are server-side, exercised by the
    test servers rather than by client code.

The one change with real behavioral reach is #2564: the negotiation probe now
classifies HTTP 401/403 as an auth failure instead of legacy-era evidence. That
is the upstream fix #1807 is blocked on, and it is left for that issue — the
directAuthRecovery clause in inspectorClient.ts still intercepts the challenge
before the classifier sees it, so this bump does not change connect behavior.
#1807 can now delete the workaround and lean on the SDK verdict, but doing it
here would smuggle an auth change into a dependency bump.

Also corrected the two auth as-built specs, which still claimed beta.4 —
already stale before this change. v2_new_spec_impact.md is deliberately left
alone: it is a dated pre-upgrade analysis, and editing its premises would
rewrite the record rather than update it.

npm run ci passes end to end: validate, the per-file >=90 coverage gate,
verify:build-gate, all six smokes (including web:app driving connect -> open
app -> data-app-status="ready"), and 472 Storybook tests.

Closes #1988

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HDdo1rNRVQnVRRdsqSrvG3
Signed-off-by: cliffhall <cliff@futurescale.com>
2026-08-12 08:34:08 -04:00
..
diagrams refactor(version): single-source the version from the root package.json 2026-07-10 17:31:21 -04:00
screenshots docs(apps): specify the v2 Apps tab (#1265) 2026-04-29 17:22:59 -04:00
README.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v1_problems.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_auth.md Auth hardening CI gaps + SDK consolidation: EMA leg 2 / scopes (#1527) (#1725) 2026-07-19 22:36:21 -04:00
v2_auth_ema.md Auth hardening CI gaps + SDK consolidation: EMA leg 2 / scopes (#1527) (#1725) 2026-07-19 22:36:21 -04:00
v2_auth_hardening.md chore: upgrade the MCP TypeScript SDK from 2.0.0-beta.5 to 2.0.0 2026-08-12 08:34:08 -04:00
v2_auth_mid_session.md refactor(web): sharpen the src/lib vs src/utils rule and move misfiled modules (#1784) 2026-07-25 22:24:30 -04:00
v2_auth_sdk_consolidation.md chore: upgrade the MCP TypeScript SDK from 2.0.0-beta.5 to 2.0.0 2026-08-12 08:34:08 -04:00
v2_auth_smoke_testing.md Auth hardening CI gaps + SDK consolidation: EMA leg 2 / scopes (#1527) (#1725) 2026-07-19 22:36:21 -04:00
v2_catalog_launch_config.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_cli_tui_launcher.md Merge remote-tracking branch 'origin/v2/main' into 1579-wave-1 2026-07-09 09:41:08 -04:00
v2_new_spec_impact.md Auth hardening CI gaps + SDK consolidation: EMA leg 2 / scopes (#1527) (#1725) 2026-07-19 22:36:21 -04:00
v2_scope.md Removed Zustand storage, cleanup up auth storage IO interfaces, implementations, and usage. 2026-07-04 21:56:45 -07:00
v2_screenshots.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_server.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_servers_file.md Removed Zustand storage, cleanup up auth storage IO interfaces, implementations, and usage. 2026-07-04 21:56:45 -07:00
v2_storage.md Removed Zustand storage, cleanup up auth storage IO interfaces, implementations, and usage. 2026-07-04 21:56:45 -07:00
v2_ux.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_ux_components.md Removed Zustand storage, cleanup up auth storage IO interfaces, implementations, and usage. 2026-07-04 21:56:45 -07:00
v2_ux_features.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_ux_handlers.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_ux_interfaces.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_ux_interfaces_phase_0_4_inventory.md refactor(web): sharpen the src/lib vs src/utils rule and move misfiled modules (#1784) 2026-07-25 22:24:30 -04:00
v2_ux_interfaces_plan.md chore: close a batch of quality-gate & tidy gaps (#1785 #1787 #1789 #1790 #1767) (#1792) 2026-07-26 10:43:11 -04:00
v2_ux_storybook.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00
v2_web_client.md docs(spec): add V2 Auth landing page and canonicalize spec top menus (closes #1605) 2026-07-02 17:20:06 -04:00

Inspector V2 Brief

Brief | V1 Problems | V2 Scope | V2 Tech Stack | V2 UX | V2 Auth | V2 New Spec Impact

Table of Contents

Motivation and Context

The existing Inspector is hard to maintain for a number of reasons. We decided to create a more maintainable Inspector from the ground up, that retains the deterministic boundary of operation, but exposes a plugin architecture.

Track Protocol Conformance

  • Identify any gaps in V1 inspector
  • Track which features are covered
  • Implement to parity and fill gaps
  • Provide conformance testing in CI

Improve Maintainability

  • Clearer separation of concerns
  • Smaller, reusable components

Provide Extensibility

  • Plugin SDK / API
  • Third parties cand develop/maintain their own plugins for features such as
    • LLM usage
    • Evals
    • Multiple server connections
    • Apps playground
    • Testing of registry configuration
    • Interface with registry

Proper Documentation

  • One big README won't cut it anymore
  • Published documentation in MDX should
    • Render in style of spec
    • Kept up to date
    • Cover all features
    • Discuss troubleshooting strategies
    • Provide detailed contribution guidance that explains architecture and expected idioms