Problem with todonotes and onlyamsmath

The onlyamsmath package (which personally I find useless), does

\AtBeginDocument{\catcode`$=13 }

which is the cause of your troubles. The purpose of that declaration is to catch $$...$$, but this disrupts TikZ working.

If you really want to use the package together with TikZ (which is implicitly loaded by todonotes), then you must give up recognizing usage of $$...$$:

\documentclass{article}

\usepackage[all, warning]{onlyamsmath}
\AtBeginDocument{\catcode`$=3 }
\usepackage{todonotes}

\begin{document}

\todo{Blabla}

\end{document}