import type { McpTool } from "./manager.js"; export type McpToolFamily = "browser" | "computer" | "other"; export type McpToolEffect = "read" | "write" | "unknown"; export interface McpToolCallClassification { family: McpToolFamily; effect: McpToolEffect; reason: string; } export interface McpToolInvocationPolicy { mode: "allow-all" | "read-only"; } export interface McpToolPolicyDecision extends McpToolCallClassification { allowed: boolean; } /** * Classify an MCP call using both the declared tool and its runtime arguments. * Runtime inspection is necessary for combined computer tools whose `action` * selects between observation (for example `screenshot`) and mutation (for * example `click`). Unknown computer/browser operations intentionally remain * unknown so read-only callers can fail closed. */ export declare function classifyMcpToolCall(tool: McpTool, args: Record): McpToolCallClassification; export declare function evaluateMcpToolCallPolicy(policy: McpToolInvocationPolicy, tool: McpTool, args: Record): McpToolPolicyDecision; //# sourceMappingURL=tool-policy.d.ts.map