Follow Discord
Sweep 22 Oct 2026 · 04:32Z Build v2.1.308 527 read Stable v2.1.308 Latest v2.1.308 Next v2.1.308 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.238 ·

MCP discovery cache evicts on repeated connection failures, with a hard cap on lifetime

Cached MCP server discovery is dropped after repeated connection failures instead of only on age.

You'll notice Improvements
JSON All of v2.1.238
You'll noticeTier: how much it should matter to you
3Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
MCPArea: what it touches
ImprovementsKind: in v2.1.238,
ImprovementsSection of the release
What

Cached results of discovering MCP servers (the external tool servers Claude Code connects to over the Model Context Protocol) are now dropped based on how often a server fails to answer, rather than purely on how old the entry is. A separate ceiling still bounds how long any entry can live, so a generous cache lifetime cannot keep a stale entry around indefinitely.

Details
  • The number of failed connections tolerated before an entry is discarded comes from the environment variable MCP_DISCOVERY_CACHE_STRIKES, which defaults to 1 when unset or set to a value that is not positive, so out of the box a single failed dial drops the entry.
  • MCP_DISCOVERY_CACHE_MAX_STALE_S no longer ages entries out on its own; it now serves as an upper bound on the cache lifetime configured by MCP_DISCOVERY_CACHE_TTL_S, and is itself clamped to a built-in ceiling, so a very large TTL is silently reduced to that bound.
  • A failed-dial signal is emitted alongside the existing cache-adopt signal, so a cached server that cannot be reached is reported rather than quietly expiring.
Evidence

MCP_DISCOVERY_CACHE_STRIKES, MCP_DISCOVERY_CACHE_MAX_STALE_S

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

See this entry in the whole of v2.1.238 →

Feedback