Context passed to tool handlers. Contains pre-resolved values that
many tools need, avoiding repeated async lock acquisition inside
handlers. Extended with shared server state for tools that need
cache/session access.
Outcome of a shell execution, carried alongside the rendered text so the
MCP dispatch layer can surface failures in protocol metadata instead of
only as an [exit:N] text footer (GitHub #389: clients had no programmatic
way to detect ctx_shell failures and resorted to fragile regex matching).
Internal handler-to-dispatch signal for an executed operation that failed.
Unlike invalid arguments, its body can contain file excerpts and must pass
the full content pipeline before becoming an MCP isError result.