Expand description
Top-level value types for the pipeline.
See PIPELINE.md §Types. These are the sum types
passed between pipeline stages: Request in, Response out, with
Context threaded by reference.
Structs§
- Context
- Per-request state carried by reference through both chains. Split so the type system distinguishes immutable-after-intake fields from mutable working state.
- Intake
- Set once at intake, read many times. Changing anything here after intake is a type error.
- McpRequest
- An MCP HTTP request from the client. Body carries exactly one JSON-RPC message — no batching per MCP 2025-11-25.
- OAuth
Request - RawRequest
- Stage
Timing - One named wall-clock measurement for a single pipeline stage.
- Working
- Mutated by middlewares as they learn about the request. Final
contents feed the
Emitstage.
Enums§
- Buffer
Policy - Whether the transport should collect the upstream body or forward bytes as they arrive. Owned by the routing table, not by the protocol enum.
- Envelope
- Framing of a buffered MCP response. Data, not control flow — the
final
EnvelopeSealstage applies the wrap once. - McpTransport
- Which MCP transport the request is using. Streamable HTTP is the primary path; legacy HTTP+SSE is supported but demoted.
- Request
- Top-level sum type produced by intake. Owns its body.
- Response
- Sum type produced by the transport, or by a short-circuiting
middleware.
impl IntoResponse for Response(below) converts this into an axum response at the edge. - Route
- Output of the router. Declarative; no I/O.