chore(deps): bump rmcp from 2.2.0 to 3.1.0 - #260
Conversation
Bumps [rmcp](https://github.com/modelcontextprotocol/rust-sdk) from 2.2.0 to 3.1.0. - [Release notes](https://github.com/modelcontextprotocol/rust-sdk/releases) - [Changelog](https://github.com/modelcontextprotocol/rust-sdk/blob/main/release-plz.toml) - [Commits](modelcontextprotocol/rust-sdk@rmcp-v2.2.0...rmcp-v3.1.0) --- updated-dependencies: - dependency-name: rmcp dependency-version: 3.1.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
LabelsThe following labels could not be found: Please fix the above issues or remove invalid values from |
|
Skipping PR review because a bot author is detected. If you want to trigger CodeAnt AI, comment |
|
No high/critical vulnerabilities introduced by this PR. ✅ |
|
License audit failed — one or more dependencies use a non-allowlisted license. See the job log for details and update |
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1a581c5fbd
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
| schemars = "0.8" | ||
| crossbeam-channel = "0.5" | ||
| rmcp = { version = "2.2", features = ["server", "transport-io", "macros"], optional = true } | ||
| rmcp = { version = "3.1", features = ["server", "transport-io", "macros"], optional = true } |
There was a problem hiding this comment.
Restore the advertised Rust version compatibility
With the default mcp feature enabled, elicitate now resolves rmcp 3.1.0 on every default build. That release declares rust-version = "1.88" in its upstream manifest (https://raw.githubusercontent.com/modelcontextprotocol/rust-sdk/rmcp-v3.1.0/Cargo.toml), while this crate still inherits the workspace rust-version = "1.75"; for CI or user installs pinned to a lower supported toolchain (for example Rust 1.85–1.87, which could handle the previous edition-2024 dependency), Cargo rejects the locked graph before tests run. Please either raise the crate/workspace MSRV or keep rmcp on a compatible line.
Useful? React with 👍 / 👎.
|
Dependency limit exceeded — report not shown. This pull request scan exceeded the 10,000-dependency limit applied to this scan, so the results are incomplete and may be inaccurate. To avoid reporting false positives, Socket has not posted a report. Upgrade your plan to raise the dependency limit and get complete reports, or view the partial scan in the dashboard. Socket is always free for open source. If this is a non-commercial open source project, contact us to request a free Team account. |
Rewrites crates/elicitate/src/mcp/router.rs to work against rmcp 1.4. Main has been on rmcp 1.4 since #260, but the router code was still written against the rmcp 0.2 API, which broke the --features mcp build. This commit makes --features mcp compile cleanly and the elicitate-mcp binary successfully complete an MCP initialize handshake. What changed ------------ * rmcp::Error → rmcp::ErrorData (alias deprecated since 0.13) * Parameters import: handler::server::tool::Parameters → handler::server::wrapper::Parameters * ServerInfo / Implementation non-exhaustive struct fields: - Use ServerInfo::new(ServerCapabilities::default()) .with_server_info(Implementation::new("elicitate", version)) - Cannot construct ServerInfo { server_info: Implementation { … } } directly * Content::json returns Result<Self, ErrorData> — propagate the error * CallToolResult: use success(vec) / error(vec) constructors instead of struct literal with is_error field * #[tool(...)] macro: provide explicit input_schema and output_schema attributes since the macro's auto-inference tries to call schema_for_input which doesn't exist in rmcp 1.4 Dep bump -------- * schemars 0.8 → 1.0 in elicitate/Cargo.toml Required: rmcp 1.4 pulls schemars 1.0 internally. Without the bump, the JsonSchema derive macro expanded against the 0.8 source while rmcp::schemars resolved to 1.0, producing confusing 'argument #5 missing' errors. Tests ----- * Added: params_roundtrip_via_spec — ElicitateParams → PromptSpec * Existing: 121/121 still green with --features mcp (70 lib + 26 bin + 14 plugin + 6 lib-int + 4 mcp_stdio + 1 router) * New total: 122/122 Verification ------------ $ echo '{"jsonrpc":"2.0","id":1,"method":"initialize",...}' \ | ./target/debug/elicitate-mcp {"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2024-11-05", "capabilities":{},"serverInfo":{"name":"elicitate","version":"0.4.0"}}} End-to-end MCP handshake works. Unblocked follow-up ------------------- This unblocks porting the rmcp-coupled features from wip/2026-07-22-phenotype-tooling-absorbed-go-mod: * v0.13.0 elicitate_reply MCP tool * v0.14.0 multi-inbox (MCP) routing * v0.16.0 elicitate_enqueue MCP tool * v0.17.0 elicitate_cancel MCP tool Each will need a similar rmcp 1.4 adapter as it's ported. Version bumped 0.3.0 → 0.4.0.
Rewrites crates/elicitate/src/mcp/router.rs to work against rmcp 1.4. Main has been on rmcp 1.4 since #260, but the router code was still written against the rmcp 0.2 API, which broke the --features mcp build. This commit makes --features mcp compile cleanly and the elicitate-mcp binary successfully complete an MCP initialize handshake. What changed ------------ * rmcp::Error → rmcp::ErrorData (alias deprecated since 0.13) * Parameters import: handler::server::tool::Parameters → handler::server::wrapper::Parameters * ServerInfo / Implementation non-exhaustive struct fields: - Use ServerInfo::new(ServerCapabilities::default()) .with_server_info(Implementation::new("elicitate", version)) - Cannot construct ServerInfo { server_info: Implementation { … } } directly * Content::json returns Result<Self, ErrorData> — propagate the error * CallToolResult: use success(vec) / error(vec) constructors instead of struct literal with is_error field * #[tool(...)] macro: provide explicit input_schema and output_schema attributes since the macro's auto-inference tries to call schema_for_input which doesn't exist in rmcp 1.4 Dep bump -------- * schemars 0.8 → 1.0 in elicitate/Cargo.toml Required: rmcp 1.4 pulls schemars 1.0 internally. Without the bump, the JsonSchema derive macro expanded against the 0.8 source while rmcp::schemars resolved to 1.0, producing confusing 'argument #5 missing' errors. Tests ----- * Added: params_roundtrip_via_spec — ElicitateParams → PromptSpec * Existing: 121/121 still green with --features mcp (70 lib + 26 bin + 14 plugin + 6 lib-int + 4 mcp_stdio + 1 router) * New total: 122/122 Verification ------------ $ echo '{"jsonrpc":"2.0","id":1,"method":"initialize",...}' \ | ./target/debug/elicitate-mcp {"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2024-11-05", "capabilities":{},"serverInfo":{"name":"elicitate","version":"0.4.0"}}} End-to-end MCP handshake works. Unblocked follow-up ------------------- This unblocks porting the rmcp-coupled features from wip/2026-07-22-phenotype-tooling-absorbed-go-mod: * v0.13.0 elicitate_reply MCP tool * v0.14.0 multi-inbox (MCP) routing * v0.16.0 elicitate_enqueue MCP tool * v0.17.0 elicitate_cancel MCP tool Each will need a similar rmcp 1.4 adapter as it's ported. Version bumped 0.3.0 → 0.4.0.



Bumps rmcp from 2.2.0 to 3.1.0.
Release notes
Sourced from rmcp's releases.
... (truncated)
Commits
1f9358echore: release v3.1.0 (#1090)1cf6debdocs: document the ping utility with examples (#1106)00bcf13fix(model): decode metadata-bearing input-required results affecting mrtr (#1...65f05e9feat: classify authorization-required errors (#1056)3240b6edocs: complete Tier 1 feature docs and finalize roadmap (#1101)def31f0chore(deps): bump github/codeql-action from 4 to 4.37.3 (#1100)570c478chore(deps): bump taiki-e/install-action from 2 to 2.85.2 (#1099)983a137feat: add strict stateless protocol metadata validation (#1091)58b136ffix: require metadata for modern HTTP requests (#1089)d272389fix: honor supported_protocol_versions when negotiating initialize (#1093)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 commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill 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 versionwill 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 dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)Note
Bump
rmcpdependency from 2.2.0 to 3.1.0 in theelicitatecrateUpdates the
rmcpversion in Cargo.toml from 2.2.0 to 3.1.0. No feature flags or other dependency settings change.Macroscope summarized 1a581c5.