Skip to content

Add support for SSE #185

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

Open
elizabetht opened this issue Apr 8, 2025 · 2 comments
Open

Add support for SSE #185

elizabetht opened this issue Apr 8, 2025 · 2 comments
Labels
enhancement New feature or request

Comments

@elizabetht
Copy link

Describe the feature or problem you’d like to solve

As part of building interactive and responsive developer tools on top of the MCP server, we have a need to expose HTTP endpoints that can stream data incrementally to clients using Server-Sent Events (SSE). This is particularly useful for use cases like:

  • Real-time progress updates for long-running tool executions
  • Streaming logs or partial results as they become available
  • Event-driven workflows triggered by tools or models

However, the current MCP server does not appear to support SSE-style HTTP streaming out of the box. Since SSE relies on keeping an HTTP connection open and continuously pushing updates using the text/event-stream content type, it requires explicit support at the server level to manage connection lifecycle and event formatting.

Without native support, it's challenging to build streaming, real-time experiences using MCP — which limits the kind of rich developer tools and UIs that can be built on top of it.

Proposed solution

Adding SSE support would unlock:

  • Real-time user experiences (e.g., showing partial results or live updates)
  • Streaming logs or status updates for tool execution
  • Lower latency responses without requiring polling
  • Simplified client-side implementations using native browser support (vs. websockets)

Additional context

SSE support would:

  • Enhance Developer Experience: Provide users with more flexibility to build real-time tools or dashboards powered by MCP.
  • Broaden Adoption: Many organizations have frontends or APIs that rely on streaming capabilities — this would make MCP compatible with those out-of-the-box.
  • Improve Integration with AI/LLM Tooling: LLM-related use cases often benefit from streamed outputs (like token-by-token streaming) — SSE is ideal for that.
  • Align with Open Standards: SSE is supported in most browsers and backend frameworks, making it easier to integrate across diverse ecosystems.
  • Encourage Community Contributions: Clear extensibility via streaming would likely attract more usage and contributions in tool/plugin scenarios.
@elizabetht elizabetht added the enhancement New feature or request label Apr 8, 2025
@elizabetht
Copy link
Author

May be similar to #2?

@tonytrg
Copy link

tonytrg commented Apr 11, 2025

cc @omgitsads

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

No branches or pull requests

2 participants