The single biggest UX gap surfaced by the v0.0.200 live-fire smoke. Today, agents watching for new resources have to poll `list_resources` / `read_resource`. For chat-style interactions (forum messages, bot conversations, real-time docs) that's the wrong shape — latency-sensitive and wasteful.
JSS already has the primitive: `/.notifications` WebSocket with the `solid-0.1` protocol. The work is wiring it through MCP, not building a new notification system.
What
A new MCP tool:
```
subscribe — Subscribe to change events on a resource or container subtree.
Returns an SSE-streamed sequence of MCP notifications as resources
change. Subscription is WAC-gated (Read on each emitted resource).
```
Wire path: MCP server, on `tools/call` for `subscribe`, switches the HTTP response into SSE mode (Streamable HTTP transport allows this — return `text/event-stream` instead of `application/json`). Subscribes server-side to the existing notification pipe, filters events by the agent's WAC visibility, emits each as an MCP notification.
Activity
feat(mcp): subscribe, read_acl/write_acl, call_remote_pod (closes #494 …