Add message queue for SSE messages POST endpoint (#459)

This commit is contained in:
Akash D 2025-05-06 17:10:43 -07:00 • committed by GitHub
commit 3b1b213a96
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -6,7 +6,8 @@ to support transport-specific features like resumability.
"""
from collections.abc import Awaitable, Callable
from dataclasses import dataclass
from pydantic import BaseModel
from mcp.types import JSONRPCMessage, RequestId
@ -15,8 +16,7 @@ ResumptionToken = str
ResumptionTokenUpdateCallback = Callable[[ResumptionToken], Awaitable[None]]
@dataclass
class ClientMessageMetadata:
class ClientMessageMetadata(BaseModel):
"""Metadata specific to client messages."""
resumption_token: ResumptionToken | None = None
@ -25,8 +25,7 @@ class ClientMessageMetadata:
)
@dataclass
class ServerMessageMetadata:
class ServerMessageMetadata(BaseModel):
"""Metadata specific to server messages."""
related_request_id: RequestId | None = None
@ -35,9 +34,8 @@ class ServerMessageMetadata:
MessageMetadata = ClientMessageMetadata | ServerMessageMetadata | None
@dataclass
class SessionMessage:
class SessionMessage(BaseModel):
"""A message with specific metadata for transport-specific features."""
message: JSONRPCMessage
metadata: MessageMetadata = None
metadata: MessageMetadata | None = None