While the definition with Killing vectors works fine, it also suffers from some problems. If you take any maximally symmetric spacetime and remove a closed subset of it, it still remains a spacetime with the same Killing vectors, since those only encode local properties.
The proper definition of a maximally symmetric space is that it is homogeneous and isotropic.
Homogeneity says that for any two points $p$ and $q$ in $M$, there exists an isometry $\phi$ belonging to the group of all isometries $I(M)$ such that $\phi(p) = \phi(q)$.
Isotropy at a point $p$ implies that for any two tangent vectors $v, w \in T_pM$, such that $|v| = |w|$, then there is an isometry $\phi \in I(M)$ such that $\phi(p) = p$ (the point $p$ is the center of the isometry) and $\phi_*(v) = w$ (the isometry transports the vector $v$ to $w$).
Given this, it is possible to show that for a spacetime, this corresponds to the existence of $n(n+1) / 2$ Killing vectors, including $n$ translations and $n(n-1)/2$ rotations.