Skip to content

Commit 60b0a03

Browse files
authored
Gracefully allow server to error on missing resources/prompts/tools endpoints even if declared (#169)
1 parent 832bcd0 commit 60b0a03

File tree

1 file changed

+18
-6
lines changed

1 file changed

+18
-6
lines changed

mcp_use/connectors/base.py

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -110,22 +110,34 @@ async def initialize(self) -> dict[str, Any]:
110110

111111
if server_capabilities.tools:
112112
# Get available tools directly from client session
113-
tools_result = await self.client_session.list_tools()
114-
self._tools = tools_result.tools if tools_result else []
113+
try:
114+
tools_result = await self.client_session.list_tools()
115+
self._tools = tools_result.tools if tools_result else []
116+
except Exception as e:
117+
logger.error(f"Error listing tools: {e}")
118+
self._tools = []
115119
else:
116120
self._tools = []
117121

118122
if server_capabilities.resources:
119123
# Get available resources directly from client session
120-
resources_result = await self.client_session.list_resources()
121-
self._resources = resources_result.resources if resources_result else []
124+
try:
125+
resources_result = await self.client_session.list_resources()
126+
self._resources = resources_result.resources if resources_result else []
127+
except Exception as e:
128+
logger.error(f"Error listing resources: {e}")
129+
self._resources = []
122130
else:
123131
self._resources = []
124132

125133
if server_capabilities.prompts:
126134
# Get available prompts directly from client session
127-
prompts_result = await self.client_session.list_prompts()
128-
self._prompts = prompts_result.prompts if prompts_result else []
135+
try:
136+
prompts_result = await self.client_session.list_prompts()
137+
self._prompts = prompts_result.prompts if prompts_result else []
138+
except Exception as e:
139+
logger.error(f"Error listing prompts: {e}")
140+
self._prompts = []
129141
else:
130142
self._prompts = []
131143

0 commit comments

Comments
 (0)