A shared gateway serves many users, and a server's tools/list result is identical for everyone regardless of who is signed in. Which caching hints should the server return with that result?
Select an answer to reveal the explanation.
Short Explanation
Public means the same menu for every table, so you can let the host stand hand out copies freely. The trap is treating ttlMs as a polling timer; it's a freshness label, not an alarm clock.
Full Explanation
Revision 2026-07-28 adds caching hints to cacheable results, including tools/list. ttlMs is a freshness hint in milliseconds, analogous to an HTTP max-age, and cacheScope says who may share the cached copy. public means the response contains no user-specific data, so any client, shared gateway or caching proxy may store it and serve it to any user, which is the guidance for tool lists that are identical for all users. private means the result must not be shared across authorization contexts, so a gateway would need a separate cache for every token and could not reuse the list between users. The specification says clients should not treat ttlMs as a polling interval that triggers background refetches; freshness is checked when the data is needed, and anyone who chooses to poll must add jitter and backoff. Servers must include these hints on complete results of tools/list, and an absent ttlMs is treated as zero, immediately stale, so omitting hints defeats caching rather than enabling a gateway default. Exam caveat: cacheScope is not access control; servers must still enforce per-primitive authorization. Operational check: inspect a tools/list result for cacheScope public and a positive ttlMs, and confirm a tools list_changed notification invalidates the cached copy early.