Is there a way through JavaScript to detect if a Safari Extension is already installed? https://extensions.apple.com has some way of doing it because they update the install
To detect your extension server-side, the easiest way is to inject a session cookie in your domain with a content script.
In Chrome and Firefox, you could inject an HTTP Header, but the API in Safari does not allow it.
The problem with cookies: if your user uninstall the extension, you will notice only when his session ends (closing browser).