Skip to content

Implement HTTP/SSE Transport for Remote MCP Clients #24

Open
@ma3u

Description

@ma3u

Description

This epic tracks the implementation of HTTP/SSE transport support for the Dust MCP Server, enabling remote client connections and cloud deployments.

Background

Currently, the server only supports STDIO transport for local use with Claude Desktop. Adding HTTP/SSE support will allow:

  • Remote client connections (VS Code, Cursor, etc.)
  • Cloud-based deployments
  • Team collaboration features
  • Centralized management

Requirements

1. HTTP Server with SSE Support

  • Implement HTTP server with Server-Sent Events
  • Support both REST and streaming endpoints
  • Implement graceful shutdown
  • Add health check endpoints

2. Authentication & Security

  • API key authentication
  • OAuth 2.0 support
  • Rate limiting
  • CORS configuration
  • Request validation

3. Session Management

  • Distributed session handling
  • Session timeouts
  • Concurrent session limits
  • Session state persistence

4. Client SDK

  • TypeScript client library
  • Connection management
  • Automatic reconnection
  • Error handling

5. Deployment & Operations

  • Containerization (Dfile)
  • Helm chart for Kubernetes
  • Cloud Run deployment guide
  • Monitoring and metrics

Technical Considerations

  • Use Express.js for HTTP server
  • Implement proper error handling and logging
  • Ensure backward compatibility with existing STDIO transport
  • Document API endpoints and client usage

Dependencies

  • Node.js 18+
  • Express.js
  • TypeScript
  • Redis (for distributed sessions)

Acceptance Criteria

  • All tests passing
  • Documentation updated
  • Example client implementation
  • Deployment guides created

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions