StreamableHttp - client refactoring and resumability support (#595)

This commit is contained in:
ihrpr 2025-05-02 14:49:50 +01:00 • committed by GitHub
commit 74f5fcfa0d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -5,16 +5,24 @@ This module defines a wrapper type that combines JSONRPCMessage with metadata
to support transport-specific features like resumability.
"""
from collections.abc import Awaitable, Callable
from dataclasses import dataclass
from mcp.types import JSONRPCMessage, RequestId
ResumptionToken = str
ResumptionTokenUpdateCallback = Callable[[ResumptionToken], Awaitable[None]]
@dataclass
class ClientMessageMetadata:
"""Metadata specific to client messages."""
resumption_token: str | None = None
resumption_token: ResumptionToken | None = None
on_resumption_token_update: Callable[[ResumptionToken], Awaitable[None]] | None = (
None
)
@dataclass