Typing fixes
Strict pyright mode results in a lot of issues regarding non fully determined types, due to Generics. These are some issues I came across today. We are still far from being clean on pyright.
This commit is contained in:
parent
34937b72f2
commit
04ad96e6cd
2 changed files with 4 additions and 5 deletions
|
|
@ -20,6 +20,8 @@ from mcp_python.types import (
|
||||||
CompleteRequest,
|
CompleteRequest,
|
||||||
ErrorData,
|
ErrorData,
|
||||||
JSONRPCMessage,
|
JSONRPCMessage,
|
||||||
|
ListPromptsRequest,
|
||||||
|
ListPromptsResult,
|
||||||
ListResourcesRequest,
|
ListResourcesRequest,
|
||||||
ListResourcesResult,
|
ListResourcesResult,
|
||||||
LoggingLevel,
|
LoggingLevel,
|
||||||
|
|
@ -57,8 +59,6 @@ class Server:
|
||||||
return request_ctx.get()
|
return request_ctx.get()
|
||||||
|
|
||||||
def list_prompts(self):
|
def list_prompts(self):
|
||||||
from mcp_python.types import ListPromptsRequest, ListPromptsResult
|
|
||||||
|
|
||||||
def decorator(func: Callable[[], Awaitable[list[Prompt]]]):
|
def decorator(func: Callable[[], Awaitable[list[Prompt]]]):
|
||||||
logger.debug(f"Registering handler for PromptListRequest")
|
logger.debug(f"Registering handler for PromptListRequest")
|
||||||
|
|
||||||
|
|
@ -90,7 +90,7 @@ class Server:
|
||||||
|
|
||||||
async def handler(req: GetPromptRequest):
|
async def handler(req: GetPromptRequest):
|
||||||
prompt_get = await func(req.params.name, req.params.arguments)
|
prompt_get = await func(req.params.name, req.params.arguments)
|
||||||
messages = []
|
messages: list[SamplingMessage] = []
|
||||||
for message in prompt_get.messages:
|
for message in prompt_get.messages:
|
||||||
match message.content:
|
match message.content:
|
||||||
case str() as text_content:
|
case str() as text_content:
|
||||||
|
|
|
||||||
|
|
@ -7,10 +7,9 @@ from anyio.streams.memory import MemoryObjectReceiveStream, MemoryObjectSendStre
|
||||||
|
|
||||||
from mcp_python.types import JSONRPCMessage
|
from mcp_python.types import JSONRPCMessage
|
||||||
|
|
||||||
|
|
||||||
@asynccontextmanager
|
@asynccontextmanager
|
||||||
async def stdio_server(
|
async def stdio_server(
|
||||||
stdin: anyio.AsyncFile | None = None, stdout: anyio.AsyncFile | None = None
|
stdin: anyio.AsyncFile[str] | None = None, stdout: anyio.AsyncFile[str] | None = None
|
||||||
):
|
):
|
||||||
"""
|
"""
|
||||||
Server transport for stdio: this communicates with an MCP client by reading from the current process' stdin and writing to stdout.
|
Server transport for stdio: this communicates with an MCP client by reading from the current process' stdin and writing to stdout.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue