11from abc import ABC , abstractmethod
2- from datetime import timedelta
32from typing import Any
43
5- from pydantic import AnyUrl
6-
74import mcp .types as types
85from mcp .shared .session import ProgressFnT
6+ from mcp .types import RequestParamsMeta
97
108
119class ClientTransportSession (ABC ):
@@ -57,17 +55,17 @@ async def list_resource_templates(
5755 raise NotImplementedError
5856
5957 @abstractmethod
60- async def read_resource (self , uri : AnyUrl ) -> types .ReadResourceResult :
58+ async def read_resource (self , uri : str ) -> types .ReadResourceResult :
6159 """Send a resources/read request."""
6260 raise NotImplementedError
6361
6462 @abstractmethod
65- async def subscribe_resource (self , uri : str , * , meta : RequestParamsMeta | None = None ) -> types .EmptyResult :
63+ async def subscribe_resource (self , uri : str ) -> types .EmptyResult :
6664 """Send a resources/subscribe request."""
6765 raise NotImplementedError
6866
6967 @abstractmethod
70- async def unsubscribe_resource (self , uri : str , * , meta : RequestParamsMeta | None = None ) -> types .EmptyResult :
68+ async def unsubscribe_resource (self , uri : str ) -> types .EmptyResult :
7169 """Send a resources/unsubscribe request."""
7270 raise NotImplementedError
7371
@@ -87,7 +85,8 @@ async def call_tool(
8785 @abstractmethod
8886 async def list_prompts (
8987 self ,
90- cursor : str | None = None ,
88+ * ,
89+ params : types .PaginatedRequestParams | None = None ,
9190 ) -> types .ListPromptsResult :
9291 """Send a prompts/list request."""
9392 raise NotImplementedError
@@ -114,7 +113,6 @@ async def complete(
114113 @abstractmethod
115114 async def list_tools (
116115 self ,
117- cursor : str | None = None ,
118116 * ,
119117 params : types .PaginatedRequestParams | None = None ,
120118 ) -> types .ListToolsResult :
0 commit comments