feat!: remove SSE transport support (#562)

SSE transport has been removed from the MCP specification in favor of
streamable HTTP. This removes all SSE-specific transport code:

- Remove `transport-sse-client` and `transport-sse-server` features
- Remove `SseClientTransport` and `SseServer` types
- Remove SSE-specific examples (`counter_sse`, `counter_sse_directly`)
- Migrate auth examples from SSE to streamable HTTP
- Update tests to remove SSE transport usage
- Update documentation

BREAKING CHANGE: The following have been removed:
- `transport-sse-client` feature
- `transport-sse-client-reqwest` feature
- `transport-sse-server` feature
- `SseClientTransport` type
- `SseServer` type
- `sse_client` and `sse_server` modules

Users should migrate to streamable HTTP transport which provides
equivalent functionality. See `StreamableHttpClientTransport` and
`StreamableHttpService` for the replacement APIs.

Ref: https://github.com/modelcontextprotocol/rust-sdk/pull/561#issuecomment-3576551699
This commit is contained in:
adam jones 2025-12-02 01:40:13 +00:00 • committed by GitHub
commit eb5a7f7408
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,33 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<title>RMCP Authorized SSE Server</title>
<style>
body { font-family: Arial, sans-serif; margin: 40px; line-height: 1.6; }
h1 { color: #333; }
.endpoint { background: #f4f4f4; padding: 10px; border-radius: 5px; }
pre { background: #eee; padding: 10px; border-radius: 5px; }
</style>
</head>
<body>
<h1>RMCP Authorized SSE Server</h1>
<p>This is a Server-Sent Events server example that requires OAuth authorization.</p>
<h2>Available Endpoints:</h2>
<ul>
<li class="endpoint"><code>/api/health</code> - Health check</li>
<li class="endpoint"><code>/api/token/{token_id}</code> - Get test token (available: demo, test)</li>
<li class="endpoint"><code>/sse</code> - SSE connection endpoint (requires authorization)</li>
<li class="endpoint"><code>/message</code> - Message sending endpoint (requires authorization)</li>
</ul>
<h2>Usage:</h2>
<pre>
# Get a token
curl http://127.0.0.1:8000/api/token/demo
# Connect to SSE using the token
curl -H "Authorization: Bearer demo-token" http://127.0.0.1:8000/sse
</pre>
</body>
</html>