{"version":"2.1.318","anchor":"new-remote-tool-serve-shared-request-refusal-telemetry","canonical_anchor":"new-remote-tool-serve-shared-request-refusal-telemetry","heading":"Remote tool calls report shared-request refusals and unreadable requests","tier":"internal","area":"Remote Tools","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.318\/e\/new-remote-tool-serve-shared-request-refusal-telemetry","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.318","markdown":"### Remote tool calls report shared-request refusals and unreadable requests\n\nRemote tool calls now fail with a clear error when a shared request cannot be read, and refusals of shared requests get their own reason\n\n**What**\n\nIn a remote tool call, a session asks Claude Code to run one of its tools on the session's behalf. This handling changed for shared requests:\n\n- Unreadable requests: when a `remote_tool_call` request carries a mode stamp but the rest of it cannot be read, Claude Code now returns an error instead of carrying on. The error says the session service vouched for the request's envelope, but the rest of the request could not be read. Before, there was no check for this.\n\n- Refusal reasons: when a remote tool request is refused, the reason can now be `shared_request_` followed by the specific refusal (`sharedRequestRefusal`).\n\n- More detail recorded: a permission and classifier record gains `request_form`, `shared_request_refusal` and `part`, alongside the mode stamp and the server's verdict.\n\n**Why**\n\nA damaged request now fails with its own clear error instead of a generic one. That makes it easier to tell why a remote tool call did not run.\n\n- Area: Remote Tools\n- Tier: Under the hood\n- Useful: 1\/5\n- Signal: 3\/5\n- Scope: individual\n- Heads-up: no"}