Yes, annotations are needed only to build the plugin, since they have @Retention(value=CLASS) which means they stay in bytecode but are not loaded at runtime.
What is not clear is that this dependency is not really provided at runtime: Maven core does not inject maven-plugin-annotations at runtime (why would it? Maven core works by reading META-INF/maven/plugin.xml). But the dependency is simply not used at runtime.
This doc can be improved: