The extension point provided in upstream WTP for declaring server profilers is called org.eclipse.jst.server.core.serverProfilers.
The primary function of the implementation class org.eclipse.jst.server.core.ServerProfilerDelegate is adding arguments to launches in order to enable the proper agent.
If used with other profilers, arguments may need to be appended to the launch in order to enable the profiling.
If used via JVM Monitor, though, no real arguments are required, as JVM Monitor can install its agent directly without any changes on the part of the launch.
However, if we assume that
JBIDE-17313 is solved and we can detect the duplicates, we could prevent the agent from being installed. We would be preventing the auto-detector from being added to the view. On our server startup, then, and only when profiling is enabled, we would connect the underlying jvmmonitor's agent and allow profiling.
This could be accomplished via a custom attribute on the launch configuration which could be flipped by the user via a radio / check button to enable or disable the profiler.