In http://en.wikipedia.org/wiki/Lie_algebra, Lie bracket operation is defined as having bilinearity: $[ax+by,z] = a[x,z]+b[y,z], [z,ax+by] = a[z,x]+b[z,y]$.
But in http://en.wikipedia.org/wiki/Lie_bracket_of_vector_fields, it is said as the following: "for functions f and g, $[fX,gY] = fg[X,Y] + fX(g)Y-gY(f)X$." ($X,Y$ vector fields.)
My question is, the later description seems to violate bilinearity - function would anyway be evaluated at $p$ of smooth manifold $M$ which would make situation basically similar to the first description. Am I wrong here?
Vector fields form a Lie algebra over the real numbers, not the ring of functions (which is not a field anyways). If $a,b$ are real numbers and $X$ and $Y$ vector fields then $[aX,bY] = ab[X,Y]$.
Note that this is consistent with what you wrote for functions if you consider $a$ and $b$ to be constant functions, since then $X(b) = 0 = Y(a)$.