Backplane. McpProtocol. Server. Modern. RequestContext
(backplane_mcp_protocol v0.6.0)
Copy Markdown
Validated, request-local context for the stateless modern server path.
The protocol envelope remains separate from transport state. In particular, the protocol version and client capabilities must be present in the body even when equivalent HTTP headers are available.
Summary
Types
@type t() :: %Backplane.McpProtocol.Server.Modern.RequestContext{ assigns: map(), auth: term(), client_capabilities: map(), client_info: map() | nil, headers: %{optional(String.t()) => String.t()}, input_responses: map() | nil, log_level: String.t() | nil, method: String.t(), profile: Backplane.McpProtocol.Protocol.Profile.t(), progress_token: String.t() | number() | nil, protocol_version: String.t(), remote_ip: :inet.ip_address() | nil, request: map(), request_id: String.t() | integer(), request_meta: map(), request_state: String.t() | nil, transport: atom() }
Functions
@spec build(Backplane.McpProtocol.Protocol.Profile.t(), map(), map()) :: {:ok, t()} | {:error, Backplane.McpProtocol.MCP.Error.t()}
@spec to_server_context(t()) :: Backplane.McpProtocol.Server.Context.t()