-
Notifications
You must be signed in to change notification settings - Fork 1
feat: Modernize to Streamable HTTP transport with JSON-RPC 2.0 #42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Replace deprecated SSE transport with modern Streamable HTTP transport for better future compatibility and standards compliance. Changes: - Update mcp_server.py to use transport="http" instead of "sse" - Update cli.py to use HTTP transport - Update README.md with Streamable HTTP terminology - Update CLAUDE.md architecture documentation - Remove deprecated SSE endpoint documentation Benefits: - Future-proof: uses latest MCP protocol standard (2024-11-05) - Explicit JSON-RPC 2.0 wire protocol - Better session management - No breaking changes to /mcp endpoint 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
WalkthroughReplaces MCP transport from SSE to Streamable HTTP using JSON-RPC 2.0 across docs and Docker entrypoints. Updates CLI and server startup to use transport="http" and revises documentation to reflect the new transport, authentication note, and naming (FastAPI → FastMCP). No exported/public API changes. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Client as MCP Client
participant HTTP as HTTP Endpoint (/mcp)
participant Server as FastMCP Server
Note over Client,Server: New: Streamable HTTP + JSON-RPC 2.0
rect rgba(200,235,255,0.25)
Client->>HTTP: Open HTTP stream
Client->>HTTP: JSON-RPC request (e.g., initialize, call)
HTTP->>Server: Forward request
Server-->>HTTP: JSON-RPC response/stream chunks
HTTP-->>Client: Streamed response frames
end
alt Error
Server-->>HTTP: JSON-RPC error
HTTP-->>Client: Error object
else Auth (optional)
Client->>HTTP: Authorization: Bearer <token>
end
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (4)
🧰 Additional context used📓 Path-based instructions (3)**/*.py📄 CodeRabbit inference engine (CLAUDE.md)
Files:
docker/**/*.py📄 CodeRabbit inference engine (CLAUDE.md)
Files:
docker/mcp_server.py📄 CodeRabbit inference engine (CLAUDE.md)
Files:
🪛 markdownlint-cli2 (0.18.1)CLAUDE.md19-19: Fenced code blocks should have a language specified (MD040, fenced-code-language) 🔇 Additional comments (10)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Replace deprecated SSE transport with modern Streamable HTTP transport for better future compatibility and standards compliance.
Changes:
Benefits:
🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Refactor
Documentation
Chores