Spaces:
Running
Running
davenpi commited on
Commit ·
7615e10
1
Parent(s): ac60432
Remove exceptions from execution methods.
Browse files- src/fastmcp/server/server.py +12 -33
src/fastmcp/server/server.py
CHANGED
|
@@ -432,16 +432,10 @@ class FastMCP(Generic[LifespanResultT]):
|
|
| 432 |
return await self._tool_manager.call_tool(key, arguments)
|
| 433 |
|
| 434 |
# Check mounted servers to see if they have the tool
|
| 435 |
-
for
|
| 436 |
-
|
| 437 |
-
|
| 438 |
-
|
| 439 |
-
return await server.server._mcp_call_tool(tool_key, arguments)
|
| 440 |
-
except Exception as e:
|
| 441 |
-
logger.warning(
|
| 442 |
-
f"Failed to call tool from mounted server '{prefix}': {e}"
|
| 443 |
-
)
|
| 444 |
-
continue
|
| 445 |
|
| 446 |
raise NotFoundError(f"Unknown tool: {key}")
|
| 447 |
|
|
@@ -461,17 +455,10 @@ class FastMCP(Generic[LifespanResultT]):
|
|
| 461 |
)
|
| 462 |
]
|
| 463 |
else:
|
| 464 |
-
for
|
| 465 |
-
|
| 466 |
-
|
| 467 |
-
|
| 468 |
-
return await server.server._mcp_read_resource(new_uri)
|
| 469 |
-
except Exception as e:
|
| 470 |
-
logger.warning(
|
| 471 |
-
"Failed to read resource from mounted server"
|
| 472 |
-
f" '{prefix}': {e}"
|
| 473 |
-
)
|
| 474 |
-
continue
|
| 475 |
else:
|
| 476 |
raise NotFoundError(f"Unknown resource: {uri}")
|
| 477 |
|
|
@@ -496,18 +483,10 @@ class FastMCP(Generic[LifespanResultT]):
|
|
| 496 |
return await self._prompt_manager.render_prompt(name, arguments)
|
| 497 |
|
| 498 |
# Check mounted servers to see if they have the prompt
|
| 499 |
-
for
|
| 500 |
-
|
| 501 |
-
|
| 502 |
-
|
| 503 |
-
return await server.server._mcp_get_prompt(
|
| 504 |
-
prompt_name, arguments
|
| 505 |
-
)
|
| 506 |
-
except Exception as e:
|
| 507 |
-
logger.warning(
|
| 508 |
-
f"Failed to get prompt from mounted server '{prefix}': {e}"
|
| 509 |
-
)
|
| 510 |
-
continue
|
| 511 |
|
| 512 |
raise NotFoundError(f"Unknown prompt: {name}")
|
| 513 |
|
|
|
|
| 432 |
return await self._tool_manager.call_tool(key, arguments)
|
| 433 |
|
| 434 |
# Check mounted servers to see if they have the tool
|
| 435 |
+
for server in self._mounted_servers.values():
|
| 436 |
+
if server.match_tool(key):
|
| 437 |
+
tool_key = server.strip_tool_prefix(key)
|
| 438 |
+
return await server.server._mcp_call_tool(tool_key, arguments)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 439 |
|
| 440 |
raise NotFoundError(f"Unknown tool: {key}")
|
| 441 |
|
|
|
|
| 455 |
)
|
| 456 |
]
|
| 457 |
else:
|
| 458 |
+
for server in self._mounted_servers.values():
|
| 459 |
+
if server.match_resource(str(uri)):
|
| 460 |
+
new_uri = server.strip_resource_prefix(str(uri))
|
| 461 |
+
return await server.server._mcp_read_resource(new_uri)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 462 |
else:
|
| 463 |
raise NotFoundError(f"Unknown resource: {uri}")
|
| 464 |
|
|
|
|
| 483 |
return await self._prompt_manager.render_prompt(name, arguments)
|
| 484 |
|
| 485 |
# Check mounted servers to see if they have the prompt
|
| 486 |
+
for server in self._mounted_servers.values():
|
| 487 |
+
if server.match_prompt(name):
|
| 488 |
+
prompt_name = server.strip_prompt_prefix(name)
|
| 489 |
+
return await server.server._mcp_get_prompt(prompt_name, arguments)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 490 |
|
| 491 |
raise NotFoundError(f"Unknown prompt: {name}")
|
| 492 |
|