loading
loading
An MCP server that keeps no per-session memory, so every tool call is self-contained and any instance can handle it.
A stateless MCP server doesn't hold session state between requests — each call carries everything it needs — which lets you run it behind a load balancer, scale it horizontally, and restart it without breaking live sessions. The tradeoff is that anything needing continuity (a cursor, a transaction) must live in an external store or be passed in each call. Example: a stateless 'search' server you can deploy as serverless functions versus a stateful one pinning an open DB transaction per client. For production multi-tenant deployments, stateless is almost always the right default.
Plainly
Think of Stateless MCP as roads and power for the app city. An MCP server that keeps no per-session memory, so every tool call is self-contained and any instance can handle it.
In practice
Use it when local behavior needs to become a reachable, reliable deployed service. In practice, define the owner, input, output, and failure mode before you rely on it.