(cause: unknown, toolName: string)
| 65 | }; |
| 66 | |
| 67 | const isUnknownToolCause = (cause: unknown, toolName: string): boolean => |
| 68 | // oxlint-disable-next-line executor/no-instanceof-tagged-error -- boundary: MCP SDK surfaces JSON-RPC protocol errors as this Error subclass |
| 69 | cause instanceof McpError && |
| 70 | (cause.code === ErrorCode.InvalidParams || cause.code === ErrorCode.MethodNotFound) && |
| 71 | // oxlint-disable-next-line executor/no-unknown-error-message -- boundary: instanceof narrows to the SDK's McpError, whose message carries the only unknown-tool discriminator the protocol provides |
| 72 | isUnknownToolMessage(cause.message, toolName); |
| 73 | |
| 74 | // --------------------------------------------------------------------------- |
| 75 | // Elicitation bridge — decode incoming MCP ElicitRequest, route through |
no test coverage detected