Skip to content

Wire the sidebar listChanged indicator across all screens #1402

Closed

Description

@cliffhall

Summary

The listChanged sidebar indicator badge is hardcoded false for every screen — Tools, Apps, Prompts, and Resources — in clients/web/src/components/views/InspectorView/InspectorView.tsx. It is never wired to a real notifications/*/list_changed signal, so the indicator can never light up.

Note this is the indicator badge only: the lists themselves already refresh live. For example, the managed-tools layer (core/react/useManagedTools.ts) updates the tools array on its toolsChange event, so the Apps/Tools sidebar contents stay current. What's missing is the visual "the server changed its list since you last looked" affordance.

This was split out of #1370 (render MCP Apps end-to-end), which deliberately kept scope to the apps render path.

Proposed work

  • Surface a per-primitive "list changed since last refresh" boolean from the managed-state layer (tools/prompts/resources) up through App.tsx → InspectorView → each screen's listChanged prop.
  • Decide the reset semantics (e.g. clear the flag when the user refreshes that list, or when the list is viewed).
  • Apply consistently to all four screens so behavior is uniform.

Acceptance criteria

  • A notifications/tools/list_changed (and prompts/resources equivalents) sets the corresponding screen's listChanged indicator.
  • The indicator clears on the defined reset action.
  • All four screens (Tools, Apps, Prompts, Resources) behave consistently; no screen is left hardcoded false.
  • Tests cover the set + clear transitions.

Activity

  1. self-assigned this
    on Jun 5, 2026
  2. added this to the v2.0.0 milestone on Jul 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

v2Issues and PRs for v2

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions