diff --git a/src/mcp/client/sse.py b/src/mcp/client/sse.py index 4f6241a7..b2fbc33d 100644 --- a/src/mcp/client/sse.py +++ b/src/mcp/client/sse.py @@ -61,7 +61,9 @@ async def sse_reader( logger.debug(f"Received SSE event: {sse.event}") match sse.event: case "endpoint": - endpoint_url = urljoin(url, sse.data) + uri_base = url.rsplit("/sse", 1)[0] + endpoint_url = urljoin(uri_base + "/", + sse.data.lstrip("/")) logger.info( f"Received endpoint URL: {endpoint_url}" )