Caching changedspecification/2026-07-28/server/utilities/caching
Nearest release: v2.1.305, published under an hour before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 20 Oct 2026 20:02 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 20 Oct 2026 20:07 UTC.
Upstream edited
Recorded here
Lines+8added
Lines−10removed
From line
1
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits3to this page, all time
The whole hunk
from line 1, old and new numbered
/
from line 1
11# Caching
22
3<div id="enable-section-numbers" />
4
53The Model Context Protocol (MCP) supports caching for some results. This allows clients to cache responses and reduce unnecessary re-fetching.
64Caching is complementary to [change notifications](#interaction-with-notifications)—both
75mechanisms can coexist.
from line 36
3836
3937Cacheable Results in MCP use two fields to provide caching hints to clients:
4038
41* The <b>Time-to-live (TTL) Field</b>,`ttlMs`, is an integer value in milliseconds specifying how long the client MAY consider the result fresh.
42* The <b>Cache Scope Field</b>,`cacheScope`, indicates the intended scope of the cached response, either `"public"` or `"private"`.
39* The **Time-to-live (TTL) Field**,`ttlMs`, is an integer value in milliseconds specifying how long the client MAY consider the result fresh.
40* The **Cache Scope Field**,`cacheScope`, indicates the intended scope of the cached response, either `"public"` or `"private"`.
4341
4442### Time-to-Live (TTL) Field
4543
from line 55
5755
5856Servers **MUST** provide a `ttlMs` value that is `>= 0`.
5957
60<Note>
61 TTL is a **freshness hint**, not a guarantee. Servers MAY change the
62 underlying data before the TTL expires. The TTL tells the client how long it
63 can reasonably avoid re-fetching, not how long the data is guaranteed to
64 remain unchanged.
65</Note>
58> [!NOTE]
59>
60> TTL is a **freshness hint**, not a guarantee. Servers MAY change the
61> underlying data before the TTL expires. The TTL tells the client how long it
62> can reasonably avoid re-fetching, not how long the data is guaranteed to
63> remain unchanged.
6664
6765#### Freshness Calculation
6866
No line in this hunk matches that.