diff --git a/src/mcp/client/session.py b/src/mcp/client/session.py index 02a4e8e..0ba46fe 100644 --- a/src/mcp/client/session.py +++ b/src/mcp/client/session.py @@ -302,7 +302,7 @@ class ClientSession( async def complete( self, - ref: types.ResourceReference | types.PromptReference, + ref: types.ResourceTemplateReference | types.PromptReference, argument: dict[str, str], ) -> types.CompleteResult: """Send a completion/complete request.""" diff --git a/src/mcp/server/lowlevel/server.py b/src/mcp/server/lowlevel/server.py index 7a24781..b077339 100644 --- a/src/mcp/server/lowlevel/server.py +++ b/src/mcp/server/lowlevel/server.py @@ -431,7 +431,7 @@ class Server(Generic[LifespanResultT, RequestT]): def decorator( func: Callable[ [ - types.PromptReference | types.ResourceReference, + types.PromptReference | types.ResourceTemplateReference, types.CompletionArgument, ], Awaitable[types.Completion | None], diff --git a/src/mcp/types.py b/src/mcp/types.py index 824cee7..e1f8ea5 100644 --- a/src/mcp/types.py +++ b/src/mcp/types.py @@ -3,6 +3,7 @@ from typing import Annotated, Any, Generic, Literal, TypeAlias, TypeVar from pydantic import BaseModel, ConfigDict, Field, FileUrl, RootModel from pydantic.networks import AnyUrl, UrlConstraints +from typing_extensions import deprecated """ Model Context Protocol bindings for Python @@ -961,7 +962,7 @@ class CreateMessageResult(Result): """The reason why sampling stopped, if known.""" -class ResourceReference(BaseModel): +class ResourceTemplateReference(BaseModel): """A reference to a resource or resource template definition.""" type: Literal["ref/resource"] @@ -970,6 +971,11 @@ class ResourceReference(BaseModel): model_config = ConfigDict(extra="allow") +@deprecated("`ResourceReference` is deprecated, you should use `ResourceTemplateReference`.") +class ResourceReference(ResourceTemplateReference): + pass + + class PromptReference(BaseModel): """Identifies a prompt.""" @@ -992,7 +998,7 @@ class CompletionArgument(BaseModel): class CompleteRequestParams(RequestParams): """Parameters for completion requests.""" - ref: ResourceReference | PromptReference + ref: ResourceTemplateReference | PromptReference argument: CompletionArgument model_config = ConfigDict(extra="allow")