Awesome Testing

MCP lesson 03 · Operate MCP transports

How should transport choice change deployment, security, and recovery?

2026-07-28 core · deterministic JSON-RPC fixtures

Atlas Release Evidence Server. Read-only evidence, deterministic scoring, and an explicit evaluation Task across replicas and protocol eras.

01 · Smallest useful mechanism

Keep protocol semantics stable while treating transport failures honestly.

stdio uses a locally managed process and newline-delimited messages. Streamable HTTP posts each message to one endpoint and returns JSON or request-scoped SSE, with standard HTTP security obligations.

Transport success is not method success, and a closed stream is not proof that no work occurred.

02 · Experiment

Test the prediction

Deterministic protocol fixture

This workbench uses inspectable JSON-RPC fixtures and injected failures. It does not make live calls or execute external effects.

Protocol workbench · atlas-transport-v2

Choose the deployment that remains correct behind a load balancer.

Injected failure

The response connection closes after dispatch and the retry reaches another replica.

Choose the implementation

The trace has not run.

Commit to an implementation, then inject the failure and inspect the actual state transitions.

03 · Implementation brief

Build it, break it, prove the outcome.

Implement
Run the same semantic fixture over stdio and HTTP with explicit timeouts and error categories.
Break it on purpose
Corrupt stdout, buffer SSE, reject an origin, expire auth, and disconnect after dispatch.
Completion evidence
Framing remains valid, remote policy rejects unsafe traffic, and unknown outcomes reconcile without blind retry.

Your learning artifact

Write the argument you would defend

Stored only in this browser. No account required; course reset does not delete it.

04 · Check your understanding

What may a modern Streamable HTTP response use?

Primary sources · verified 2026-08-02

What the fixture does not prove

Remote deployment adds DNS, TLS, proxies, origins, authorization, load balancing, timeouts, and ambiguous network failures that local examples do not exercise.

Common mistake: SSE means the modern protocol maintains a resumable session. Modern Streamable HTTP may stream a response, but the core is stateless and the 2026-07-28 revision removes legacy SSE resumability.

Transfer exercise: Route consecutive requests to different replicas, terminate one response stream, and identify what evidence is required before retry.

Optional referenceDeep dive / reference chapterOpen the complete essay, diagrams, mathematics, exercises, glossary, and sources when you want more depth.

Next: Transport independence becomes much easier once the core request is stateless—the central change in MCP 2026-07-28.