Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import click
import mcp.types as types
from mcp.server.lowlevel import Server
from mcp.server.lowlevel.helper_types import ReadResourceContents
from pydantic import AnyUrl, FileUrl
from starlette.requests import Request

Expand Down Expand Up @@ -46,15 +47,15 @@ async def list_resources() -> list[types.Resource]:
]

@app.read_resource()
async def read_resource(uri: AnyUrl) -> str | bytes:
async def read_resource(uri: AnyUrl):
if uri.path is None:
raise ValueError(f"Invalid resource path: {uri}")
name = uri.path.replace(".txt", "").lstrip("/")

if name not in SAMPLE_RESOURCES:
raise ValueError(f"Unknown resource: {uri}")

return SAMPLE_RESOURCES[name]["content"]
return [ReadResourceContents(content=SAMPLE_RESOURCES[name]["content"], mime_type="text/plain")]

if transport == "sse":
from mcp.server.sse import SseServerTransport
Expand Down
Loading