Skip to main content

Crate turbomcp_transport_streamable

Crate turbomcp_transport_streamable 

Source
Expand description

§TurboMCP Streamable HTTP Transport

This crate provides core types for the MCP 2025-11-25 Streamable HTTP transport specification. It is designed to be portable across native and WASM environments.

§Features

  • Session Management: SessionId, Session, SessionStore trait for stateful connections
  • SSE Encoding/Decoding: Pure, no-I/O Server-Sent Events implementation
  • Protocol Types: Request/response types for streamable HTTP endpoints

§Usage

use turbomcp_transport_streamable::{SessionId, SessionStore, SseEvent, SseEncoder};

// Create a new session
let session_id = SessionId::new();

// Encode an SSE event
let event = SseEvent::message("Hello, world!");
let encoded = SseEncoder::encode(&event);

§no_std Support

This crate supports no_std environments with the alloc feature:

[dependencies]
turbomcp-transport-streamable = { version = "3.0", default-features = false, features = ["alloc"] }

Re-exports§

pub use config::StreamableConfig;
pub use session::Session;
pub use session::SessionId;
pub use session::SessionState;
pub use session::SessionStore;
pub use session::StoredEvent;
pub use sse::SseEncoder;
pub use sse::SseEvent;
pub use sse::SseEventBuilder;
pub use sse::SseParser;
pub use types::HttpMethod;
pub use types::OriginValidation;
pub use types::StreamableError;
pub use types::StreamableRequest;
pub use types::StreamableResponse;

Modules§

config
Configuration for Streamable HTTP transport.
headers
MCP 2025-11-25 Streamable HTTP header names
session
Session management for Streamable HTTP transport.
sse
Server-Sent Events (SSE) encoding and decoding.
types
Core types for Streamable HTTP transport.