Lifecycle changedspecification/2025-03-26/basic/lifecycle
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 22 Oct 2026 20:37 UTC.
Upstream edited
Recorded here
Lines+14added
Lines−14removed
From line
114
where the diff opens
First seen
26 Aug 2026
this site's first read of the page
Recorded edits3to this page, all time
The whole hunk
from line 114, old and new numbered
/
from line 114
114114```
115115
116116* The client **SHOULD NOT** send requests other than
117 [pings](/specification/2025-03-26/basic/utilities/ping) before the server has responded to the
117 [pings](/specification/2025-03-26/basic/utilities/ping.md) before the server has responded to the
118118 `initialize` request.
119119* The server **SHOULD NOT** send requests other than
120 [pings](/specification/2025-03-26/basic/utilities/ping) and
121 [logging](/specification/2025-03-26/server/utilities/logging) before receiving the `initialized`
120 [pings](/specification/2025-03-26/basic/utilities/ping.md) and
121 [logging](/specification/2025-03-26/server/utilities/logging.md) before receiving the `initialized`
122122 notification.
123123
124124#### Version Negotiation
from line 142
142142
143143| Category | Capability | Description |
144144| - | - | - |
145| Client | `roots` | Ability to provide filesystem [roots](/specification/2025-03-26/client/roots) |
146| Client | `sampling` | Support for LLM [sampling](/specification/2025-03-26/client/sampling) requests |
145| Client | `roots` | Ability to provide filesystem [roots](/specification/2025-03-26/client/roots.md) |
146| Client | `sampling` | Support for LLM [sampling](/specification/2025-03-26/client/sampling.md) requests |
147147| Client | `experimental` | Describes support for non-standard experimental features |
148| Server | `prompts` | Offers [prompt templates](/specification/2025-03-26/server/prompts) |
149| Server | `resources` | Provides readable [resources](/specification/2025-03-26/server/resources) |
150| Server | `tools` | Exposes callable [tools](/specification/2025-03-26/server/tools) |
151| Server | `logging` | Emits structured [log messages](/specification/2025-03-26/server/utilities/logging) |
152| Server | `completions` | Supports argument [autocompletion](/specification/2025-03-26/server/utilities/completion) |
148| Server | `prompts` | Offers [prompt templates](/specification/2025-03-26/server/prompts.md) |
149| Server | `resources` | Provides readable [resources](/specification/2025-03-26/server/resources.md) |
150| Server | `tools` | Exposes callable [tools](/specification/2025-03-26/server/tools.md) |
151| Server | `logging` | Emits structured [log messages](/specification/2025-03-26/server/utilities/logging.md) |
152| Server | `completions` | Supports argument [autocompletion](/specification/2025-03-26/server/utilities/completion.md) |
153153| Server | `experimental` | Describes support for non-standard experimental features |
154154
155155Capability objects can describe sub-capabilities like:
from line 176
176176
177177#### stdio
178178
179For the stdio [transport](/specification/2025-03-26/basic/transports), the client **SHOULD** initiate
179For the stdio [transport](/specification/2025-03-26/basic/transports.md), the client **SHOULD** initiate
180180shutdown by:
181181
1821821. First, closing the input stream to the child process (the server)
from line 189
189189
190190#### HTTP
191191
192For HTTP [transports](/specification/2025-03-26/basic/transports), shutdown is indicated by closing the
192For HTTP [transports](/specification/2025-03-26/basic/transports.md), shutdown is indicated by closing the
193193associated HTTP connection(s).
194194
195195## Timeouts
from line 197
197197Implementations **SHOULD** establish timeouts for all sent requests, to prevent hung
198198connections and resource exhaustion. When the request has not received a success or error
199199response within the timeout period, the sender **SHOULD** issue a [cancellation
200notification](/specification/2025-03-26/basic/utilities/cancellation) for that request and stop waiting for
200notification](/specification/2025-03-26/basic/utilities/cancellation.md) for that request and stop waiting for
201201a response.
202202
203203SDKs and other middleware **SHOULD** allow these timeouts to be configured on a
from line 204
204204per-request basis.
205205
206206Implementations **MAY** choose to reset the timeout clock when receiving a [progress
207notification](/specification/2025-03-26/basic/utilities/progress) corresponding to the request, as this
207notification](/specification/2025-03-26/basic/utilities/progress.md) corresponding to the request, as this
208208implies that work is actually happening. However, implementations **SHOULD** always
209209enforce a maximum timeout, regardless of progress notifications, to limit the impact of a
210210misbehaving client or server.
No line in this hunk matches that.