Skip to content

Draft: Streamable Http #240

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

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

xavierleune
Copy link
Contributor

@xavierleune xavierleune commented Jul 31, 2025

Q A
Bug fix? no
New feature? yes
Docs? Todo
Issues Fix #166 #5
License MIT

This pull request is currently a draft / work in progress (before getting away from keyboard) to enable support of Streamable Http. There is still a lot to do, but it's kinda working. Quick demo with a tool call that sends a bunch of notif before sending the result: youtube.

Key points:

  • I don't use the Server for streamable http, it's quite impractical as it hides too much the internal logic
  • JsonRpcHandler now handle one message at a time, as batching has been dropped
  • I think we should separate message encoding / decoding and message handling, it might improve the workflow
  • The *Handler Api needs a rework to work well with streams, it's currently only a quick poc in ToolCallHandler and it's kinda ugly

Todo:

Technical stuff:

  • Split Message handling and message encoding
  • Cleaner Api for *Handler
  • Param for session duration
  • Cleaner support for notifications sent by the client
  • Simplify session management (drop left-over SessionIdentifierResolver and so)
  • CS / Copyright / ...

@OskarStark OskarStark marked this pull request as draft August 1, 2025 06:13
@chr-hertel chr-hertel added the MCP SDK Issues & PRs about the MCP SDK label Aug 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
MCP SDK Issues & PRs about the MCP SDK
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[McpSdk][RFC] Add support for Streamable HTTP transport
2 participants