docs: fix four dead links to the Multi Round-Trip Requests section - #1159
Merged
guglielmo-san merged 1 commit intoAug 13, 2026
Merged
Conversation
The three per-feature links (roots, sampling, elicitation) pointed at protocol.md#multi-round-trip-requests-mrtr, but protocol.md has no such section -- the MRTR pattern is documented in client.md itself. The client-to-server link used the same stale -mrtr suffix against server.md, whose heading slug is #multi-round-trip-requests. Verified against the published site: /protocol has no anchor containing 'round', while /client and /server both expose id="multi-round-trip-requests". Assisted-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
guglielmo-san
approved these changes
Aug 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What was broken
Four links in
docs/client.mdpoint at a section that does not exist.Three of them sit right where a reader needs them — at the end of the Roots, Sampling
and Elicitation sections, on the sentence explaining that from protocol version
2026-07-28these requests are delivered via the Multi Round-Trip Requests pattern:protocol.mdhas no MRTR section. Following the link drops you at the top of a page thatnever mentions the pattern — while the explanation you were promised is one screen further
down the same page you were already on (
client.md→ Multi Round-Trip Requests).The fourth one is in that MRTR section itself, sending you to the server side:
server.mddoes have the section, but its heading is## Multi Round-Trip Requests, so theslug is
#multi-round-trip-requests— the trailing-mrtris stale.How I checked
Against the published site, not just the source:
So
/protocolcarries no anchor containingroundat all, and both live targets use theplain slug.
git log -Ssays the links arrived with b9e6fc5 ("mcp: add documentation for new protocolversion", #1019, 2026-06-23) and that
protocol.src.mdhas never contained aMulti Round-Trip Requestsheading — the section landed inclient.src.mdandserver.src.mdinstead, and these four references were never repointed.I also ran a small link/anchor checker over
docs/: 4 bad anchors before, 0 after. (Two"broken links" it also reports in
server.mdare its own false positives — Go genericsinside a fence,
jsonschema.For[WeatherInput](opts), read as markdown link syntax. Nottouched.)
What it is now
The three per-feature links become same-page references, matching how
client.mdalreadylinks its own sections (
(see [Capabilities](#capabilities))):and the cross-page one drops the stale suffix:
Change is in
internal/docs/client.src.md;docs/client.mdregenerated withgo generate ./..., both committed together. Locallygo generate ./...leaves the treeclean afterwards, which is what
docs-checkasserts. Docs-only, four link targets, no proseand no code paths touched.
Assisted-by: Claude Opus 5 — this PR was drafted and verified by Anton's AI cofounder running
on his account; every command and output above is from a real run on this machine, not a
reconstruction.