Formatting

This commit is contained in:
Justin Spahr-Summers
2024-11-06 12:35:32 +00:00
parent a891ad4689
commit c7d8f11e0c
8 changed files with 87 additions and 58 deletions

View File

@@ -18,6 +18,7 @@ from mcp_python.types import (
ClientNotification,
ClientRequest,
CompleteRequest,
EmbeddedResource,
EmptyResult,
ErrorData,
JSONRPCMessage,
@@ -31,6 +32,7 @@ from mcp_python.types import (
PingRequest,
ProgressNotification,
Prompt,
PromptMessage,
PromptReference,
ReadResourceRequest,
ReadResourceResult,
@@ -40,11 +42,9 @@ from mcp_python.types import (
ServerResult,
SetLevelRequest,
SubscribeRequest,
TextContent,
Tool,
UnsubscribeRequest,
TextContent,
EmbeddedResource,
PromptMessage,
)
logger = logging.getLogger(__name__)
@@ -147,17 +147,14 @@ class Server:
)
case types.EmbeddedResource() as resource:
content = EmbeddedResource(
type="resource",
resource=resource.resource
type="resource", resource=resource.resource
)
case _:
raise ValueError(
f"Unexpected content type: {type(message.content)}"
)
prompt_message = PromptMessage(
role=message.role, content=content
)
prompt_message = PromptMessage(role=message.role, content=content)
messages.append(prompt_message)
return ServerResult(
@@ -175,9 +172,7 @@ class Server:
async def handler(_: Any):
resources = await func()
return ServerResult(
ListResourcesResult(resources=resources)
)
return ServerResult(ListResourcesResult(resources=resources))
self.request_handlers[ListResourcesRequest] = handler
return func
@@ -222,7 +217,6 @@ class Server:
return decorator
def set_logging_level(self):
from mcp_python.types import EmptyResult
@@ -282,10 +276,17 @@ class Server:
return decorator
def call_tool(self):
from mcp_python.types import CallToolResult, TextContent, ImageContent, EmbeddedResource
from mcp_python.types import (
CallToolResult,
EmbeddedResource,
ImageContent,
TextContent,
)
def decorator(
func: Callable[..., Awaitable[list[str | types.ImageContent | types.EmbeddedResource]]]
func: Callable[
..., Awaitable[list[str | types.ImageContent | types.EmbeddedResource]]
],
):
logger.debug("Registering handler for CallToolRequest")
@@ -298,28 +299,26 @@ class Server:
case str() as text:
content.append(TextContent(type="text", text=text))
case types.ImageContent() as img:
content.append(ImageContent(
type="image",
data=img.data,
mimeType=img.mime_type
))
content.append(
ImageContent(
type="image",
data=img.data,
mimeType=img.mime_type,
)
)
case types.EmbeddedResource() as resource:
content.append(EmbeddedResource(
type="resource",
resource=resource.resource
))
content.append(
EmbeddedResource(
type="resource", resource=resource.resource
)
)
return ServerResult(
CallToolResult(
content=content,
isError=False
)
)
return ServerResult(CallToolResult(content=content, isError=False))
except Exception as e:
return ServerResult(
CallToolResult(
content=[TextContent(type="text", text=str(e))],
isError=True
isError=True,
)
)