@@ -10,13 +10,6 @@ A stateless MCP server example demonstrating the StreamableHttp transport withou
1010- Task lifecycle scoped to individual requests
1111- Suitable for deployment in multi-node environments
1212
13- ## Key Differences from Stateful Version
14-
15- 1 . ** No Session Management** : The server explicitly sets ` mcp_session_id=None ` when creating the transport
16- 2 . ** Request Scoped** : Each request creates its own server instance and task group
17- 3 . ** Immediate Cleanup** : Resources are cleaned up after each request completes
18- 4 . ** Rejcts Session IDs** : If a client sends a session ID, the server rejects it with a BAD_REQUEST
19- 5 . ** Stateless Deployments** : Can be deployed to multiple nodes behind a load balancer
2013
2114## Usage
2215
@@ -42,20 +35,6 @@ The server exposes a tool named "start-notification-stream" that accepts three a
4235- ` count ` : Number of notifications to send (e.g., 5)
4336- ` caller ` : Identifier string for the caller
4437
45- ## Client Considerations
46-
47- When connecting to a stateless server:
48- 1 . Do not send the ` X-MCP-Session-ID ` header
49- 2 . Each request is independent with no shared state
50- 3 . Suitable for one-shot operations or when state can be maintained client-side
51- 4 . Works well with load balancers that distribute requests across multiple instances
52-
53- ## Deployment Benefits
54-
55- 1 . ** Horizontal Scaling** : Deploy multiple instances behind a load balancer
56- 2 . ** No Session Affinity** : Requests can be routed to any instance
57- 3 . ** Simplified Infrastructure** : No session storage or sticky sessions required
58- 4 . ** Cloud Native** : Works well in containerized and serverless environments
5938
6039## Client
6140
0 commit comments