Commit 8c1f69d
deps: Bump rmcp from 2.2.0 to 3.0.1 (#1443)
Bumps [rmcp](https://github.com/modelcontextprotocol/rust-sdk) from
2.2.0 to 3.0.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/modelcontextprotocol/rust-sdk/releases">rmcp's
releases</a>.</em></p>
<blockquote>
<h2>rmcp-macros-v3.0.1</h2>
<h3>Other</h3>
<ul>
<li>release stable 3.0.0</li>
</ul>
<h2>rmcp-v3.0.1</h2>
<h3>Fixed</h3>
<ul>
<li><em>(auth)</em> use discovered resource for token refresh (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/1084">#1084</a>)</li>
<li>return header mismatch for missing protocol header (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/1083">#1083</a>)</li>
<li>negotiate stateless initialize versions (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/1080">#1080</a>)</li>
<li>stamp server info on graceful subscription results (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/1078">#1078</a>)</li>
</ul>
<h2>rmcp-macros-v3.0.0</h2>
<h3>Other</h3>
<ul>
<li>release stable 3.0.0</li>
</ul>
<h2>rmcp-v3.0.0</h2>
<p>RMCP 3.0 adds support for MCP 2026-07-28. Review the <a
href="https://modelcontextprotocol.io/specification/2026-07-28/changelog">protocol
key changes</a> and the <a
href="https://github.com/modelcontextprotocol/rust-sdk/discussions/969">RMCP
3.0 migration guide</a> before upgrading from 2.x.</p>
<h2>Breaking changes</h2>
<ul>
<li><strong>Sessionless Streamable HTTP:</strong> MCP 2026-07-28 removes
protocol-level sessions: no <code>Mcp-Session-Id</code>, standalone GET
stream, DELETE-based session termination, or <code>Last-Event-ID</code>
resumption. RMCP creates a fresh handler per request, so persistent
state must live outside the handler. <code>stateful_mode</code> is
renamed to <code>legacy_session_mode</code> and now only controls older
protocol versions; custom SSE clients must also accept an optional
session ID.</li>
<li><strong>Stateless lifecycle and discovery:</strong> the 2026-07-28
protocol removes
<code>initialize</code>/<code>notifications/initialized</code>; each
request carries the protocol version and client capabilities in
<code>_meta</code>, and servers expose <code>server/discover</code>.
RMCP clients opt into this lifecycle with
<code>serve_with_lifecycle</code> and
<code>ClientLifecycleMode::Discover</code> or <code>Auto</code>; the
existing <code>serve()</code> path remains available for legacy
initialization.</li>
<li><strong>Subscriptions and removed methods:</strong>
<code>subscriptions/listen</code> replaces the standalone GET stream and
<code>resources/subscribe</code>/<code>resources/unsubscribe</code>.
<code>ping</code>, <code>logging/setLevel</code>, and
<code>notifications/roots/list_changed</code> are unavailable under
2026-07-28; RMCP retains their APIs for legacy protocol sessions.</li>
<li><strong>Multi Round-Trip Requests and result types:</strong>
<code>ServerHandler::call_tool</code>, <code>get_prompt</code>, and
<code>read_resource</code> now return MRTR-aware response enums. Manual
handler implementations and exhaustive <code>ServerResult</code> matches
must handle <code>InputRequiredResult</code>, and result models carry an
optional <code>result_type</code> for legacy wire compatibility.</li>
<li><strong>Tasks:</strong> the experimental core tasks API is replaced
by the <code>io.modelcontextprotocol/tasks</code> extension, including
new task handlers, methods, and <code>TaskManager</code> APIs.</li>
<li><strong>Rust model types:</strong> metadata is split into
<code>MetaObject</code>, <code>RequestMetaObject</code>, and
<code>NotificationMetaObject</code>;
<code>Annotations::last_modified</code> is now
<code>Option<String></code>; and tool structured content accepts
any <code>serde_json::Value</code>.</li>
<li><strong>OAuth:</strong> authorization startup is consolidated around
<code>AuthorizationRequest</code>; metadata discovery is renamed to
<code>resolve_metadata</code> and returns provenance; and custom OAuth
HTTP errors are now boxed source errors.</li>
<li><strong>Compatibility:</strong> APIs deprecated before 3.0 have been
removed, and the minimum supported Rust version is now 1.88.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>feat!: add MRTR model types (SEP-2322) by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/915">modelcontextprotocol/rust-sdk#915</a></li>
<li>feat!: relax tool result structuredContent type (SEP-2106) by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/933">modelcontextprotocol/rust-sdk#933</a></li>
<li>feat: relax outputSchema to accept non-object JSON Schema types
(SEP-2106) by <a
href="https://github.com/branben"><code>@branben</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/895">modelcontextprotocol/rust-sdk#895</a></li>
<li>fix: flag schema derive on schemars feature by <a
href="https://github.com/jamadeo"><code>@jamadeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/966">modelcontextprotocol/rust-sdk#966</a></li>
<li>feat!: add SEP-2243 HTTP standard headers by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/907">modelcontextprotocol/rust-sdk#907</a></li>
<li>feat!: type Annotations.lastModified as a string by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/956">modelcontextprotocol/rust-sdk#956</a></li>
<li>feat!: add MRTR behavior support (SEP-2322) by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/929">modelcontextprotocol/rust-sdk#929</a></li>
<li>fix: specify compatible sse-stream version by <a
href="https://github.com/jamadeo"><code>@jamadeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/968">modelcontextprotocol/rust-sdk#968</a></li>
<li>implementing SEP-2549 TTL for List Results by <a
href="https://github.com/michaelneale"><code>@michaelneale</code></a>
in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/889">modelcontextprotocol/rust-sdk#889</a></li>
<li>test: enable supported draft SEP coverage by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/971">modelcontextprotocol/rust-sdk#971</a></li>
<li>docs: retarget roadmap to 2026-07-28 spec by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/986">modelcontextprotocol/rust-sdk#986</a></li>
<li>chore(deps): update tokio-tungstenite requirement from 0.29.0 to
0.30.0 by <a
href="https://github.com/dependabot"><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/989">modelcontextprotocol/rust-sdk#989</a></li>
<li>chore: update client conformance test scenarios by <a
href="https://github.com/jamadeo"><code>@jamadeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/991">modelcontextprotocol/rust-sdk#991</a></li>
<li>test: stabilize JavaScript dependency install by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/972">modelcontextprotocol/rust-sdk#972</a></li>
<li>fix(streamable-http): preserve progress in JSON mode by <a
href="https://github.com/jstar0"><code>@jstar0</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/990">modelcontextprotocol/rust-sdk#990</a></li>
<li>fix: bound streamable HTTP memory usage by <a
href="https://github.com/DaleSeo"><code>@DaleSeo</code></a> in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/970">modelcontextprotocol/rust-sdk#970</a></li>
<li>chore(deps): bump actions/setup-node from 6 to 7 by <a
href="https://github.com/dependabot"><code>@dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/pull/992">modelcontextprotocol/rust-sdk#992</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/3bb3c8dbce8ff4c1f8c9e91ebe03ca5cd42f3e81"><code>3bb3c8d</code></a>
chore: release v3.0.1 (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1081">#1081</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/d82c94aa8ede23d7ee8c9caf539a92bd1c057e78"><code>d82c94a</code></a>
fix(auth): use discovered resource for token refresh (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1084">#1084</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/f3c786706a04fbd2cbeac1b4dea8d80b37a1f900"><code>f3c7867</code></a>
fix: return header mismatch for missing protocol header (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1083">#1083</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/596a7e1e0d3293f2d15e3918fe329261bc12b797"><code>596a7e1</code></a>
fix: negotiate stateless initialize versions (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1080">#1080</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/cb50ae7890d8a5daacae1a4ad95f395f06733c07"><code>cb50ae7</code></a>
fix: stamp server info on graceful subscription results (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1078">#1078</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/4e361b715fc70b8a09f0a8aeaedc160712a3472d"><code>4e361b7</code></a>
chore: release v3.0.0 (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1077">#1077</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/9334c97f0d6e177546fc33593148aa3f942cb1f8"><code>9334c97</code></a>
fix: recognize 2026 MCP methods (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1076">#1076</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/29c068d22bb0032a26524384a7576a0aee17b6ba"><code>29c068d</code></a>
chore: release v3.0.0-beta.5 (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1070">#1070</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/9a41811a66883c9652bd2293560710e3204f92f7"><code>9a41811</code></a>
fix!: remove server_info from DiscoverResult (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1065">#1065</a>)</li>
<li><a
href="https://github.com/modelcontextprotocol/rust-sdk/commit/e54c2220af4e58ad845f1ecea5aa1f6f32c4e33b"><code>e54c222</code></a>
docs: prepare for stable 3.0 release (<a
href="https://redirect.github.com/modelcontextprotocol/rust-sdk/issues/1073">#1073</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/modelcontextprotocol/rust-sdk/compare/rmcp-v2.2.0...rmcp-v3.0.1">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sebastien Tardif <SebTardif@ncf.ca>1 parent ab8160b commit 8c1f69d
2 files changed
Lines changed: 28 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
0 commit comments