exact argument schema */ public function schema(): array; /** True if the tool changes anything (requires server-issued confirmation). */ public function mutates(): bool; /** Object-level authorization for the concrete arguments. */ public function authorizeObject(Principal $principal, array $args): bool; /** @return array */ public function execute(Principal $principal, array $args): array; }