Skip to content

Commit 8c1f69d

Browse files
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&lt;String&gt;</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 /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rmcp&package-manager=cargo&previous-version=2.2.0&new-version=3.0.1)](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

File tree

Cargo.lock

Lines changed: 27 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/assura-mcp/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ assura-diagnostics = { version = "0.4.0", path = "../assura-diagnostics" }
1616
assura-pipeline = { version = "0.4.0", path = "../assura-pipeline" }
1717
assura-smt = { version = "0.4.0", path = "../assura-smt" }
1818
assura-rust-analyzer = { version = "0.4.0", path = "../assura-rust-analyzer" }
19-
rmcp = { version = "2.2", features = ["server", "transport-io"] }
19+
rmcp = { version = "3.0", features = ["server", "transport-io"] }
2020
serde = { version = "1", features = ["derive"] }
2121
serde_json = "1"
2222
schemars = "1"

0 commit comments

Comments
 (0)