Deployment, Scaling, Versioning, and Operations
Local versus remote
| Concern | Local stdio | Remote Streamable HTTP |
|---|---|---|
| Users | Usually one local user | Multiple users are possible. |
| Auth | Process/OS/configuration boundary | Token-based authentication and policy |
| Scaling | One process per host | Horizontal service scaling |
| Operations | Client starts the process | Deployment, TLS, monitoring |
Production checklist
- Run the container as a non-root user with minimal filesystem and network access.
- Enable HTTPS/TLS and strict Host/Origin handling.
- Make health checks dependency-aware without leaking details.
- Prefer stateless handlers when session state is unnecessary.
- Design session state, an event bus, or resumability storage before horizontal scaling.
- Configure timeouts, payload limits, concurrency limits, and graceful shutdown.
- Run type checking, tests, security checks, and container scanning in CI.
- Test protocol and SDK changes against supported clients.
- Provide feature flags and a rollback path.
- Maintain a runbook that defines the alert owner, incident response, and credential rotation.
Versioning
A tool schema is a contract. Breaking renames or removals can affect clients and models. Introduce additive fields carefully, maintain a deprecation period for old tools, publish a changelog, and run contract tests.
Cost drivers
Compute, database/API usage, model sampling, egress, logs, and always-on connections. Cache only permission-safe reads and never mix data between tenants.
Can you explain it without the notes?
Deployment, Scaling, Versioning, and Operations
Use your own words. Explain an example and one limitation before checking the explanation.
Check your explanation
Local versus remote
Turn this concept into a clear answer.
Practice this conceptAdapted from 20_MCP_SERVER.md · “16. Deployment, Scaling, Versioning, and Operations”. Examples are study fragments; framework behavior can depend on your version.