Merge pull request #523 from jlowin/server-hang

Avoid hanging on initializing server session
This commit is contained in:
Jeremiah Lowin 2025-05-20 19:06:55 -04:00 committed by GitHub
commit 7e2d4ef0ab
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -3,6 +3,7 @@ from contextlib import AsyncExitStack, asynccontextmanager
from pathlib import Path
from typing import Any, cast
import anyio
import mcp.types
from exceptiongroup import catch
from mcp import ClientSession
@ -158,10 +159,12 @@ class Client:
) as session:
self._session = session
# Initialize the session
self._initialize_result = await self._session.initialize()
try:
with anyio.fail_after(1):
self._initialize_result = await self._session.initialize()
yield
except TimeoutError:
raise RuntimeError("Failed to initialize server session")
finally:
self._exit_stack = None
self._session = None