Merge pull request #108 from modelcontextprotocol/davidsp/fix-103
Fix Bug: request_meta is not available in server.request_context #103
This commit is contained in:
commit
e691c511ab
3 changed files with 8 additions and 8 deletions
|
|
@ -102,9 +102,9 @@ class SseServerTransport:
|
||||||
self._read_stream_writers[session_id] = read_stream_writer
|
self._read_stream_writers[session_id] = read_stream_writer
|
||||||
logger.debug(f"Created new session with ID: {session_id}")
|
logger.debug(f"Created new session with ID: {session_id}")
|
||||||
|
|
||||||
sse_stream_writer, sse_stream_reader = anyio.create_memory_object_stream(
|
sse_stream_writer, sse_stream_reader = anyio.create_memory_object_stream[
|
||||||
0, dict[str, Any]
|
dict[str, Any]
|
||||||
)
|
](0)
|
||||||
|
|
||||||
async def sse_writer():
|
async def sse_writer():
|
||||||
logger.debug("Starting SSE writer")
|
logger.debug("Starting SSE writer")
|
||||||
|
|
|
||||||
|
|
@ -221,7 +221,7 @@ class BaseSession(
|
||||||
)
|
)
|
||||||
responder = RequestResponder(
|
responder = RequestResponder(
|
||||||
request_id=message.root.id,
|
request_id=message.root.id,
|
||||||
request_meta=validated_request.root.params._meta
|
request_meta=validated_request.root.params.meta
|
||||||
if validated_request.root.params
|
if validated_request.root.params
|
||||||
else None,
|
else None,
|
||||||
request=validated_request,
|
request=validated_request,
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
from typing import Any, Generic, Literal, TypeVar
|
from typing import Any, Generic, Literal, TypeVar
|
||||||
|
|
||||||
from pydantic import BaseModel, ConfigDict, FileUrl, RootModel
|
from pydantic import BaseModel, ConfigDict, Field, FileUrl, RootModel
|
||||||
from pydantic.networks import AnyUrl
|
from pydantic.networks import AnyUrl
|
||||||
|
|
||||||
"""
|
"""
|
||||||
|
|
@ -39,14 +39,14 @@ class RequestParams(BaseModel):
|
||||||
|
|
||||||
model_config = ConfigDict(extra="allow")
|
model_config = ConfigDict(extra="allow")
|
||||||
|
|
||||||
_meta: Meta | None = None
|
meta: Meta | None = Field(alias="_meta", default=None)
|
||||||
|
|
||||||
|
|
||||||
class NotificationParams(BaseModel):
|
class NotificationParams(BaseModel):
|
||||||
class Meta(BaseModel):
|
class Meta(BaseModel):
|
||||||
model_config = ConfigDict(extra="allow")
|
model_config = ConfigDict(extra="allow")
|
||||||
|
|
||||||
_meta: Meta | None = None
|
meta: Meta | None = Field(alias="_meta", default=None)
|
||||||
"""
|
"""
|
||||||
This parameter name is reserved by MCP to allow clients and servers to attach
|
This parameter name is reserved by MCP to allow clients and servers to attach
|
||||||
additional metadata to their notifications.
|
additional metadata to their notifications.
|
||||||
|
|
@ -86,7 +86,7 @@ class Result(BaseModel):
|
||||||
|
|
||||||
model_config = ConfigDict(extra="allow")
|
model_config = ConfigDict(extra="allow")
|
||||||
|
|
||||||
_meta: dict[str, Any] | None = None
|
meta: dict[str, Any] | None = Field(alias="_meta", default=None)
|
||||||
"""
|
"""
|
||||||
This result property is reserved by the protocol to allow clients and servers to
|
This result property is reserved by the protocol to allow clients and servers to
|
||||||
attach additional metadata to their responses.
|
attach additional metadata to their responses.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue