pub async fn proxy_call(
transport: &ResolvedTransport,
tool: &str,
arguments: Map<String, Value>,
timeout: Duration,
) -> Result<CallToolResult, String>Expand description
Proxy a single tool call to a downstream server over a pooled session
(tools/call). super::pool::acquire only returns a live session, so the
request is never sent into a dead pipe. A failed call is never retried:
a downstream tool may be non-idempotent, so re-issuing could double-execute a
side effect. On any failure we evict the (now-suspect) session — the next
call reopens cleanly — and surface the error for the caller to decide.