When Claude Code runs headless (driven by another program rather than a person at a terminal) with stream-json output, it reports a commands_changed system event when the list of available commands changes. That event now also fires when the commands provided by MCP servers (outside programs that give Claude extra tools and commands) change by name.
A separate re-scan compares the full command list with the last one and sends nothing if the list is the same. That re-scan runs once at startup when coldStartTimedOut is set and tengu_lovely_umbrella, a server-controlled switch, is not served as true.
Programs listening to the event stream now learn about commands added or removed by MCP servers, and they are not sent duplicate events when the list has not actually changed.
tengu_lovely_umbrella Off in both readingsThe flag server returned off for the account this site reads and for the anonymous baseline. A reading of off cannot rule out a rollout these two readings sit outside of.
This account: off · anonymous baseline: off · compiled default in v2.1.281: not a boolean we can read
These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.
Read once, for one account on one subscription tier, against v2.1.281. It isn't a statement about your account. What a flag value here can and cannot tell you