Skip to content

feat: upgrade rmcp 0.9.1 → 0.12.0 with MCP spec 2025-11-25 compliance - #1

Merged
ketema merged 1 commit into
mackfrom
feature/mcp-protocol-compliance
Dec 30, 2025
Merged

feat: upgrade rmcp 0.9.1 → 0.12.0 with MCP spec 2025-11-25 compliance#1
ketema merged 1 commit into
mackfrom
feature/mcp-protocol-compliance

Conversation

@ketema

@ketema ketema commented Dec 30, 2025

Copy link
Copy Markdown
Owner

Summary

  • Upgrade rmcp from 0.9.1 to 0.12.0 (official MCP SDK)
  • Implement SSE transport deprecation per MCP spec 2025-11-25 (CLAUSE-001)
  • Add MCP transport contract with 10 CLAUSEs derived from spec
  • Add 14 MCP protocol compliance tests (5 active, 9 integration)

WHY

  • rmcp 0.9.1 transport implementations don't follow MCP spec
  • SSE standalone transport was removed in rmcp 0.11.0
  • AI Panel integration requires Streamable HTTP transport
  • Contract-first TDD ensures spec compliance (CL6, CL10)

EXPECTED

  • SSE config returns deprecation error BEFORE network connection
  • Build passes with rmcp 0.12.0 and ListToolsResult meta field
  • All MCP compliance tests pass (5/5 active, 9 integration ignored)

Breaking Changes

SSE extension configs now return deprecation error. Migration: change type: sse to type: streamable_http in config.yaml

Test Plan

  • Unit tests pass (5/5)
  • Integration tests with AI Panel on localhost:30097
  • Goose session starts with --with-streamable-http-extension
  • SSE deprecation error triggers correctly

Evidence

  • Contract: contracts/mcp_streamable_http_transport.contract.md
  • Tests: crates/goose/tests/mcp_protocol_compliance_test.rs
  • AI Panel: 8a98cc60-10a5-47b1-8bc3-0a2ce9649c53

Files Changed (12)

  • Cargo.toml, Cargo.lock (rmcp version)
  • crates/goose/Cargo.toml (removed SSE features)
  • extension_manager.rs (SSE deprecation handling)
  • 5 extension files (ListToolsResult.meta field)
  • contracts/ (new contract)
  • tests/ (new test file)
  • IMPLEMENTATION_PLAN_MCP_COMPLIANCE.md

WHY:
- rmcp 0.9.1 transport implementations don't follow MCP spec
- SSE standalone transport was removed in rmcp 0.11.0
- AI Panel integration requires Streamable HTTP transport
- Contract-first TDD ensures spec compliance (CL6, CL10)

EXPECTED:
- SSE config returns deprecation error BEFORE network connection (CLAUSE-001)
- Build passes with rmcp 0.12.0 and ListToolsResult meta field
- All MCP compliance tests pass (5/5 active, 9 integration ignored)

Contract: contracts/mcp_streamable_http_transport.contract.md
Tests: crates/goose/tests/mcp_protocol_compliance_test.rs
AI Panel: 8a98cc60-10a5-47b1-8bc3-0a2ce9649c53
@ketema ketema added the enhancement New feature or request label Dec 30, 2025
@ketema
ketema merged commit a9e9f82 into mack Dec 30, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants