Skip to content

fix(deps): update rust crate rmcp to v1#9221

Merged
jdx merged 3 commits intomainfrom
renovate/rmcp-1.x
Apr 18, 2026
Merged

fix(deps): update rust crate rmcp to v1#9221
jdx merged 3 commits intomainfrom
renovate/rmcp-1.x

Conversation

@renovate
Copy link
Copy Markdown
Contributor

@renovate renovate Bot commented Apr 18, 2026

This PR contains the following updates:

Package Type Update Change
rmcp dependencies major 0.31.0

Release Notes

modelcontextprotocol/rust-sdk (rmcp)

v1.5.0

Compare Source

Added
  • (transport) add constructors for non_exhaustive error types (#​806)
  • add 2025-11-25 protocol version support (#​802)
Fixed
  • treat resource metadata JSON parse failure as soft error (#​810)
  • include http_request_id in request-wise priming event IDs (#​799)
  • (http) drain SSE stream for connection reuse (#​790)
Other
  • (deps) update which requirement from 7 to 8 (#​807)

v1.4.0

Compare Source

Added
  • add Default and constructors to ServerSseMessage (#​794)
  • add meta to elicitation results (#​792)
  • (macros) auto-generate get_info and default router (#​785)
  • (transport) add which_command for cross-platform executable resolution (#​774)
  • (auth) add StoredCredentials::new() constructor (#​778)
Fixed
  • (server) remove initialized notification gate to support Streamable HTTP (#​788)
  • default session keep_alive to 5 minutes (#​780)
  • (http) add host check (#​764)
  • exclude local feature from docs.rs build (#​782)
Other
  • update Rust toolchain to 1.92 (#​797)
  • unify IntoCallToolResult Result impls (#​787)

v1.3.0

Compare Source

Added
  • (transport) add Unix domain socket client for streamable HTTP (#​749)
  • (auth) implement SEP-2207 OIDC-flavored refresh token guidance (#​676)
  • add configuration for transparent session re-init (#​760)
  • add local feature for !Send tool handler support (#​740)
Fixed
  • prevent CallToolResult and GetTaskPayloadResult from shadowing CustomResult in untagged enums (#​771)
  • drain in-flight responses on stdin EOF (#​759)
  • remove default type param from StreamableHttpService (#​758)
  • use cfg-gated Send+Sync supertraits to avoid semver break (#​757)
  • (rmcp) surface JSON-RPC error bodies on HTTP 4xx responses (#​748)
  • default CallToolResult content to empty vec on missing field (#​752)
  • (auth) redact secrets in Debug output for StoredCredentials and StoredAuthorizationState (#​744)
Other
  • fix all clippy warnings across workspace (#​746)

v1.2.0

Compare Source

Added
  • add missing constructors for non-exhaustive model types (#​739)
  • include granted scopes in OAuth refresh token request (#​731)
Fixed
  • handle ping requests sent before initialize handshake (#​745)
  • allow deserializing notifications without params field (#​729)
Other
  • (deps) update jsonwebtoken requirement from 9 to 10 (#​737)

v1.1.1

Compare Source

Fixed
  • accept logging/setLevel and ping before initialized notification (#​730)

v1.1.0

Compare Source

Added
  • implement OAuth 2.0 Client Credentials flow (#​707)
Other
  • add McpMux to Built with rmcp section (#​717)

v1.0.0

Compare Source

Fixed
  • (auth) pass WWW-Authenticate scopes to DCR registration request (#​705)
  • api ergonomics follow-up (#​720)
  • (streamable-http) map stale session 401 to status-aware error (#​709)

v0.17.0

Compare Source

Added
  • (streamable-http) add json_response option for stateless server mode (#​683)
  • mcp sdk conformance (#​687)
  • add default value support to string, number, and integer schemas (#​686)
  • add trait-based tool declaration (#​677)
  • send and validate MCP-Protocol-Version header (#​675)
Fixed
  • improve error logging and remove token secret from logs (#​685)
  • refresh token expiry (#​680)
  • gate optional dependencies behind feature flags (#​672)
  • allow empty content in CallToolResult (#​681)
  • (schema) remove AddNullable from draft2020_12 settings (#​664)
Other
  • add prose documentation for core features to meet conformance (#​702)
  • Fix/sse channel replacement conflict (#​682)
  • document session management for streamable HTTP transport (#​674)

v0.16.0

Compare Source

Added
  • add support for custom HTTP headers in StreamableHttpClient (#​655)
  • (auth) add token_endpoint_auth_method to OAuthClientConfig (#​648)
Fixed
  • remove unnecessary doc-cfg (#​661)
  • duplicate meta serialization (#​662)
  • sort list_all() output in ToolRouter and PromptRouter for deterministic ordering (#​665)
  • align task response types with MCP spec (#​658)
Other
  • upgrade reqwest to 0.13.2 (#​669)
  • include LICENSE in final crate tarball (#​657)
  • (deps) update rand requirement from 0.9 to 0.10 (#​650)
  • remove unused axum dependency from server-side-http feature (#​642)
  • 11-25-2025 compliant Auth (#​651)
  • add rudof-mcp to MCP servers list (#​645)

v0.15.0

Compare Source

Added
  • (elicitation) add support URL elicitation. SEP-1036 (#​605)
  • enforce SEP-1577 MUST requirements for sampling with tools (#​646)
  • add native-tls as an optional TLS backend (#​631)
  • (capabilities) add extensions field for SEP-1724 (#​643)
Fixed
  • (tasks) avoid dropping completed task results during collection (#​639)
  • (auth) oauth metadata discovery (#​641)
  • compilation with --no-default-features (#​593)
  • (tasks) expose execution.taskSupport on tools (#​635)
  • (tasks) correct enum variant ordering for deserialization (#​634)
Other
  • Add optional description field to Implementation struct (#​649)
  • Implement SEP-1577: Sampling With Tools (#​628)

v0.14.0

Compare Source

Fixed
  • (tasks) #​626 model task capabilities correctly (#​627)
  • don't treat non-success HTTP codes as transport errors (#​618)
Other
  • show README content on docs.rs (#​583)
  • added hyper-mcp to the list of built with rmcp (#​621)
  • Implement SEP-1319: Decouple Request Payload from RPC Methods (#​617)

v0.13.0

Compare Source

Added
  • provide blanket implementations for ClientHandler and ServerHandler traits (#​609)
  • (service) add close() method for graceful connection shutdown (#​588)
  • (auth) add StateStore trait for pluggable OAuth state storage (#​614)
  • (elicitation) implement SEP-1330 Elicitation Enum Schema Improvements (#​539)
  • (task) add task support (SEP-1686) (#​536)
Fixed
  • use the json rpc error from the initialize response and bubble it up to the client (#​569)
  • (build) fix build of the project when no features are selected (#​606)
  • use Semaphore instead of Notify in OneshotTransport to prevent race condition (#​611)
  • add OpenID Connect discovery support per spec-2025-11-25 4.3 (#​598)
  • only try to refresh access tokens if we have a refresh token or an expiry time (#​594)
  • (docs) add spreadsheet-mcp to Built with rmcp (#​582)
Other
  • (elicitation) improve enum schema builder, small changes of elicitation builder (#​608)
  • add pre-commit hook for conventional commit verification (#​619)
  • clean up optional dependencies (#​546)
  • re-export ServerSseMessage from session module (#​612)
  • Implement SEP-1699: Support SSE Polling via Server-Side Disconnect (#​604)
  • update README external links (#​603)
  • clarity and formatting (#​602)
  • Add optional icons field to RawResourceTemplate (#​589)

v0.12.0

Compare Source

Added
  • add support for custom requests (#​590)
  • add support for custom server notifications (#​580)
Fixed
  • update process-wrap to v9.0 (#​586)
  • (oauth) rfc8414 should judement the response_types (#​485)
Other
  • Add SEP-991 (CIMD) support for URL-based client IDs (#​570)
  • merge cached_schema_for_type into schema_for_type (#​581)
  • Add NexusCore MCP to project list (#​573)

v0.11.0

Compare Source

Added
  • (meta) add _meta field to prompts, resources and paginated result (#​558)
  • [breaking] remove SSE transport support (#​562)
Fixed
  • (streamable-http) gracefully shutdown while client connected (#​494)
Other
  • Implements outputSchema validation (#​566)
  • add video-transcriber-mcp-rs to projects built with rmcp (#​565)

v0.10.0

Compare Source

Added
  • add support for custom client notifications (#​556)
Other
  • replace paste with pastey for macros feature (#​564)

v0.9.1

Compare Source

Added
  • (streamable-http) support both SSE and JSON response formats (#​540)
Fixed
  • don't block on creating the SSE stream (#​553)
  • (shemars) use JSON Schema 2020-12 as Default Dialect (#​549)
  • (oauth) let OAuth discovery skip to next well-known URL candidate on JSON parse error. (#​545)
Other
  • Implementation of SEP-986: Specify Format for Tool Names (#​551)

v0.9.0

Compare Source

Added
  • (auth) implement CredentialStore trait (#​542)
  • (tool) add _meta to tool definitions (#​534)

v0.8.5

Compare Source

Fixed
  • (oauth) respect oauth-protected-resource discovery (#​511)

v0.8.4

Compare Source

Fixed
  • (oauth) fix oauth credential refresh (#​509)
  • do not manually construct fallback authorization metadata (#​507)
  • (doc) add stakpak-agent to Built with rmcp section (#​500)

v0.8.3

Compare Source

Fixed
  • accept 204 in addition to 202 on initialize (#​497)

v0.8.2

Compare Source

Added
  • add type-safe elicitation schema support (#​465) (#​466)
  • (SEP-973) following change Icon.sizes from string to string array (#​479)
Fixed
  • (oauth) three oauth discovery and registration issues (#​489)
  • (oauth) dynamic client registration should be optional (#​463)
  • (sse-client) consume control frames; refresh message endpoint (#​448)
Other
  • Streamable HTTP: drain SSE frames until the initialize response, ignoring early notifications to prevent handshake timeouts (#​467)
  • bump crate version in README.md (#​471)

v0.8.1

Compare Source

Fixed
  • (oauth) pass bearer token to all streamable http requests (#​476)
  • fix spellcheck on intentional typo in CHANGELOG (#​470)

v0.8.0

Compare Source

Added
  • allow clients to override client_name (#​469)
Fixed
  • (oauth) support suffixed and preffixed well-knonw paths (#​459)
  • generate default schema for tools with no params (#​446)
Other

v0.7.0

Fixed
  • return auth errors (#​451)
  • (oauth) do not treat empty secret as valid for public clients (#​443)
  • (clippy) add doc comment for generated tool attr fn (#​439)
  • (oauth) require CSRF token as part of the OAuth authorization flow. (#​435)
Other
  • (root) Add Terminator to Built with rmcp section (#​437)
  • Non-empty paths in OAuth2 Authorization Server Metadata URLs (#​441)

v0.6.3

Compare Source

Fixed
  • change JSON-RPC request ID type from u32 to i64 (#​416)

v0.6.2

Compare Source

Added
  • (rmcp) add optional _meta to CallToolResult, EmbeddedResource, and ResourceContents (#​386)
Fixed
  • resolve compatibility issues with servers sending LSP notifications (#​413)
  • remove batched json rpc support (#​408)
  • transport-streamable-http-server depends on transport-worker (#​405)
  • (typo) correct typo in error message for transport cancellation and field. (#​404)
Other
  • Spec conformance: meta support and spec updates (#​415)
  • add the rmcp-openapi and rmcp-actix-web related projects (#​406)

v0.6.1

Compare Source

Added
  • (rmcp) add authorization header support for the streamable http client (#​390)
  • (model) add helpers to build enum from concrete values (#​393)
  • (model) expose client method name (#​391)
  • add resource_link support to tools and prompts (#​381)
  • Add prompt support (#​351)
  • include reqwest in transport-streamble-http-client feature (#​376)
Fixed
  • (auth) url parse is not correct (#​402)
  • (readme) missing use declarations, more accurate server instructions (#​399)
  • enhance transport graceful shutdown with proper writer closure (#​392)
Other
  • simplify remove_route method signature (#​401)

v0.6.0

Compare Source

Added
  • Add MCP Elicitation support (#​332)
  • keep internal error in worker's quit reason (#​372)
Fixed
  • match shape of the calltoolresult schema (#​377)
  • make stdio shutdown more graceful (#​364)
  • (tool) remove unnecessary schema validation (#​375)
  • (rmcp) return serialized json with structured content (#​368)
Other
  • add related project rustfs-mcp (#​378)
  • (streamable) add document for extracting http info (#​373)

v0.5.0

Compare Source

Fixed
  • correct numeric types in progress notifications (#​361)

v0.4.1

Compare Source

Fixed
  • (rmcp) allow both content and structured content (#​359)

v0.4.0

Compare Source

Added
  • [breaking] Add support for Tool.outputSchema and CallToolResult.structuredContent (#​316)
Fixed
  • don't wrap errors in streamable http auth client (#​353)
  • (prompt) remove unused code (#​343)

Configuration

📅 Schedule: (in timezone America/Chicago)

  • Branch creation
    • Only on Friday (* * * * 5)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, 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.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Apr 18, 2026

PR author is in the excluded authors list.

Update imports and method signatures for breaking changes in rmcp 1.x:
- `Parameters` moved to `handler::server::wrapper`
- Request param types renamed to plural forms (`*Params`)
- `ReadResourceResult` and `ServerInfo` are now non-exhaustive; use
  `::new()` constructors and builder methods
- `TextResourceContents` gained a `meta` field

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@renovate
Copy link
Copy Markdown
Contributor Author

renovate Bot commented Apr 18, 2026

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

The `#[tool]` and `#[tool_router]` macros are re-exported from the
`rmcp` crate, so the direct `rmcp-macros` dep was unused.

Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
@jdx jdx enabled auto-merge (squash) April 18, 2026 01:52
@jdx jdx merged commit a80bbd9 into main Apr 18, 2026
40 checks passed
@jdx jdx deleted the renovate/rmcp-1.x branch April 18, 2026 02:11
@github-actions
Copy link
Copy Markdown

Hyperfine Performance

mise x -- echo

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.4.16 x -- echo 22.1 ± 0.5 21.2 24.6 1.00
mise x -- echo 22.6 ± 0.7 21.6 30.0 1.02 ± 0.04

mise env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.4.16 env 22.0 ± 0.8 20.5 27.0 1.00 ± 0.04
mise env 21.9 ± 0.5 21.0 23.8 1.00

mise hook-env

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.4.16 hook-env 22.4 ± 0.8 21.1 31.3 1.00
mise hook-env 22.7 ± 0.5 21.7 25.5 1.02 ± 0.04

mise ls

Command Mean [ms] Min [ms] Max [ms] Relative
mise-2026.4.16 ls 19.7 ± 0.5 18.7 22.2 1.00
mise ls 20.2 ± 0.6 19.1 26.0 1.02 ± 0.04

xtasks/test/perf

Command mise-2026.4.16 mise Variance
install (cached) 145ms 151ms -3%
ls (cached) 76ms 78ms -2%
bin-paths (cached) 81ms 82ms -1%
task-ls (cached) 804ms 812ms +0%

jdx pushed a commit that referenced this pull request Apr 18, 2026
### 🐛 Bug Fixes

- **(backend)** respect install_before in latest lookup by @risu729 in
[#9193](#9193)
- **(backend)** route explicit latest through stable lookup by @risu729
in [#9228](#9228)
- **(backends)** deprecate b shorthand by @risu729 in
[#9234](#9234)
- **(config)** warn for deprecated env keys by @risu729 in
[#9205](#9205)
- **(config)** treat enable_tools empty as disable-all by @risu729 in
[#9108](#9108)
- **(github)** avoid auth on release asset downloads by @risu729 in
[#9060](#9060)
- **(gitlab)** warn when glab OAuth2 token is expired by @stanhu in
[#9195](#9195)
- **(npm)** honor install_before without day drift by @risu729 in
[#9157](#9157)
- **(npm)** warn on old bun and pnpm for install_before by @risu729 in
[#9232](#9232)
- **(pipx)** honor install_before for uv and pipx installs by @risu729
in [#9190](#9190)
- **(registry)** allow shfmt on Windows by @zeitlinger in
[#9191](#9191)

### 🚜 Refactor

- **(backend)** remove unused rolling release helper by @risu729 in
[#9175](#9175)
- **(backend)** use file util for removals by @risu729 in
[#9206](#9206)

### 📚 Documentation

- **(config)** clarify always_keep_download behavior by @risu729 in
[#9235](#9235)
- **(configuration)** add rust to idiomatic version files by @jjt in
[#9233](#9233)
- **(contributing)** expand contribution guide introduction by
@marianwolf in [#9208](#9208)
- **(github)** document multiple release assets workaround by @risu729
in [#9236](#9236)

### 📦️ Dependency Updates

- update actions/setup-node action to v6 by @renovate[bot] in
[#9183](#9183)
- update dependency @types/node to v25 by @renovate[bot] in
[#9187](#9187)
- update crazy-max/ghaction-import-gpg action to v7 by @renovate[bot] in
[#9186](#9186)
- update actions/cache action to v5 by @renovate[bot] in
[#9181](#9181)
- update amannn/action-semantic-pull-request action to v6 by
@renovate[bot] in [#9184](#9184)
- update apple-actions/import-codesign-certs action to v6 by
@renovate[bot] in [#9185](#9185)
- update dependency eslint to v10 by @renovate[bot] in
[#9200](#9200)
- update dependency toml to v4 by @renovate[bot] in
[#9201](#9201)
- update rust crate reqwest to 0.13 by @renovate[bot] in
[#9171](#9171)
- update ghcr.io/jdx/mise:deb docker digest to 523d826 by @renovate[bot]
in [#9198](#9198)
- update ghcr.io/jdx/mise:alpine docker digest to 05617e0 by
@renovate[bot] in [#9196](#9196)
- update ghcr.io/jdx/mise:rpm docker digest to c1992f9 by @renovate[bot]
in [#9199](#9199)
- update ghcr.io/jdx/mise:copr docker digest to 90db6cd by
@renovate[bot] in [#9197](#9197)
- update taiki-e/install-action digest to 58e8625 by @renovate[bot] in
[#9209](#9209)
- update fedora docker tag to v45 by @renovate[bot] in
[#9213](#9213)
- update docker/setup-buildx-action action to v4 by @renovate[bot] in
[#9212](#9212)
- update docker/metadata-action action to v6 by @renovate[bot] in
[#9211](#9211)
- update docker/login-action action to v4 by @renovate[bot] in
[#9210](#9210)
- update dependency typescript to v6 by @renovate[bot] in
[#9202](#9202)
- update docker/build-push-action action to v7 by @renovate[bot] in
[#9203](#9203)
- update github artifact actions (major) by @renovate[bot] in
[#9215](#9215)
- update rust crate duct to v1 by @renovate[bot] in
[#9220](#9220)
- update rust crate demand to v2 by @renovate[bot] in
[#9219](#9219)
- update rust crate clx to v2 by @renovate[bot] in
[#9218](#9218)
- update nick-fields/retry action to v4 by @renovate[bot] in
[#9217](#9217)
- update jdx/mise-action action to v4 by @renovate[bot] in
[#9216](#9216)
- update rust crate self_update to 0.44 by @renovate[bot] in
[#9174](#9174)
- migrate eslint config to flat format for v10 compat by @jdx in
[#9222](#9222)
- update actions/checkout action to v6 by @renovate[bot] in
[#9182](#9182)
- update rust crate toml to v1 by @renovate[bot] in
[#9225](#9225)
- update rust crate versions to v7 by @renovate[bot] in
[#9226](#9226)
- update rust crate which to v8 by @renovate[bot] in
[#9227](#9227)
- update rust crate rmcp to v1 by @renovate[bot] in
[#9221](#9221)

### 📦 Registry

- add sheldon by @3w36zj6 in
[#9104](#9104)
- add pocketbase by @ranfdev in
[#9123](#9123)
- add worktrunk ([aqua:max-sixty/worktrunk,
cargo:worktrunk](https://github.com/max-sixty/worktrunk,
cargo:worktrunk))#1 by @edouardr in
[#8796](#8796)
- add dependency-check
([aqua:dependency-check/DependencyCheck](https://github.com/dependency-check/DependencyCheck))
by @kapitoshka438 in [#9204](#9204)
- add janet by @ranfdev in
[#9241](#9241)

### New Contributors

- @ranfdev made their first contribution in
[#9241](#9241)
- @jjt made their first contribution in
[#9233](#9233)
- @marianwolf made their first contribution in
[#9208](#9208)
- @edouardr made their first contribution in
[#8796](#8796)

## 📦 Aqua Registry Updates

#### New Packages (3)

- [`LargeModGames/spotatui`](https://github.com/LargeModGames/spotatui)
-
[`android-sms-gateway/cli`](https://github.com/android-sms-gateway/cli)
- [`velero-io/velero`](https://github.com/velero-io/velero)

#### Updated Packages (1)

- [`skim-rs/skim`](https://github.com/skim-rs/skim)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant