We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 504e73a commit 8b26103Copy full SHA for 8b26103
src/mcp_agent/mcp/mcp_aggregator.py
@@ -267,7 +267,17 @@ async def call_tool(
267
local_tool_name: str = None
268
269
if SEP in name: # Namespaced tool name
270
- server_name, local_tool_name = name.split(SEP, 1)
+ parts = name.split(SEP)
271
+
272
+ for i in range(len(parts) - 1, 0, -1):
273
+ potential_server_name = SEP.join(parts[:i])
274
+ if potential_server_name in self.server_names:
275
+ server_name = potential_server_name
276
+ local_tool_name = SEP.join(parts[i:])
277
+ break
278
279
+ if server_name is None:
280
+ server_name, local_tool_name = name.split(SEP, 1)
281
else:
282
# Assume un-namespaced, loop through all servers to find the tool. First match wins.
283
for _, tools in self._server_to_tool_map.items():
0 commit comments