Do we have AlbebraicFunctionQ ?

We have PolynomialQ. Is there anything like an AlgebraicFunctionQ?

Using structural reasoning, it easy to build an efficient one:

algQ[e : Alternatives[_Plus | _Times], z_] := VectorQ[List @@ e, algQ[#, z] &]

algQ[HoldPattern[Power][e_, r_?ExactNumberQ], z_] := algQ[e, z]

algQ[z_, z_] := True

algQ[w_, z_] /; FreeQ[w, z] := True

Let’s see how it works

In[1]:= algQ[(z + Sqrt[1 + z^2])/(z + Sqrt[1 + z^(1/3)]), z]
Out[1]= True

In[2]:= algQ[(z + Sqrt[1 + z^2])/(z + Sqrt[1 + Exp[z]]), z]
Out[2]= False