Skip to content

chore(deps): update rust crate rmcp to v3 - #3778

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/rmcp-3.x
Open

chore(deps): update rust crate rmcp to v3#3778
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/rmcp-3.x

Conversation

@renovate

@renovate renovate Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
rmcp workspace.dependencies major 1.0.03.0.0

Release Notes

modelcontextprotocol/rust-sdk (rmcp)

v3.0.1

Compare Source

Fixed
  • (auth) use discovered resource for token refresh (#​1084)
  • return header mismatch for missing protocol header (#​1083)
  • negotiate stateless initialize versions (#​1080)
  • stamp server info on graceful subscription results (#​1078)

v3.0.0

Compare Source

RMCP 3.0 adds support for MCP 2026-07-28. Review the protocol key changes and the RMCP 3.0 migration guide before upgrading from 2.x.

Breaking changes

  • Sessionless Streamable HTTP: MCP 2026-07-28 removes protocol-level sessions: no Mcp-Session-Id, standalone GET stream, DELETE-based session termination, or Last-Event-ID resumption. RMCP creates a fresh handler per request, so persistent state must live outside the handler. stateful_mode is renamed to legacy_session_mode and now only controls older protocol versions; custom SSE clients must also accept an optional session ID.
  • Stateless lifecycle and discovery: the 2026-07-28 protocol removes initialize/notifications/initialized; each request carries the protocol version and client capabilities in _meta, and servers expose server/discover. RMCP clients opt into this lifecycle with serve_with_lifecycle and ClientLifecycleMode::Discover or Auto; the existing serve() path remains available for legacy initialization.
  • Subscriptions and removed methods: subscriptions/listen replaces the standalone GET stream and resources/subscribe/resources/unsubscribe. ping, logging/setLevel, and notifications/roots/list_changed are unavailable under 2026-07-28; RMCP retains their APIs for legacy protocol sessions.
  • Multi Round-Trip Requests and result types: ServerHandler::call_tool, get_prompt, and read_resource now return MRTR-aware response enums. Manual handler implementations and exhaustive ServerResult matches must handle InputRequiredResult, and result models carry an optional result_type for legacy wire compatibility.
  • Tasks: the experimental core tasks API is replaced by the io.modelcontextprotocol/tasks extension, including new task handlers, methods, and TaskManager APIs.
  • Rust model types: metadata is split into MetaObject, RequestMetaObject, and NotificationMetaObject; Annotations::last_modified is now Option<String>; and tool structured content accepts any serde_json::Value.
  • OAuth: authorization startup is consolidated around AuthorizationRequest; metadata discovery is renamed to resolve_metadata and returns provenance; and custom OAuth HTTP errors are now boxed source errors.
  • Compatibility: APIs deprecated before 3.0 have been removed, and the minimum supported Rust version is now 1.88.

What's Changed

New Contributors

Full Changelog: modelcontextprotocol/rust-sdk@rmcp-v2.2.0...rmcp-v3.0.0

v2.2.0

Compare Source

Added
  • reject auth servers lacking S256 PKCE support (#​955)
Fixed
  • pass client conformance suite (#​960)
  • don't respond to cancelled requests (#​957)
  • fail orphaned streamable HTTP responses on reinit (#​914)
  • address 2025-11-25 conformance audit findings (#​951)

v2.1.0

Compare Source

Added
  • add SEP-414 trace context meta accessors (#​910)
  • add SEP-2575 meta helpers (#​942)
Fixed
  • (transport) make AsyncRwTransport::receive cancel-safe (#​941) (#​947)
  • (auth) preserve refresh_token when refresh response omits it (#​949)
  • block redirect header leaks (#​936)
  • don't respond to unparsable messages (#​940)
  • negotiate protocol version in handler (#​930)

v2.0.0

Compare Source

Migration guide: https://redirect.github.com/modelcontextprotocol/rust-sdk/discussions/926

Added
  • [breaking] (rmcp) add Audio variant to PromptMessageContent (#​865)
  • [breaking] align model types with MCP 2025-11-25 spec (#​927)
  • deprecate roots/sampling/logging types (#​923)
Fixed
  • prevent OAuth resource spoofing (#​937)
  • block oauth metadata ssrf (#​935)
  • prevent streamable HTTP session leak (#​934)
  • fill missing fully qualified syntax in prompt_handler macros (#​866)
Other
  • consolidate repeated rmcp tests (#​931)
  • align README examples with v2 model API (#​928)

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot enabled auto-merge (squash) July 29, 2026 00:53
@github-actions github-actions Bot added the type: chore Routine tasks like conversions, reorganization, and maintenance work. label Jul 29, 2026
@renovate
renovate Bot force-pushed the renovate/rmcp-3.x branch 5 times, most recently from c51c3b5 to a27e39c Compare July 29, 2026 21:47
@renovate
renovate Bot force-pushed the renovate/rmcp-3.x branch from a27e39c to 08154a6 Compare July 30, 2026 04:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: chore Routine tasks like conversions, reorganization, and maintenance work.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants