A possible option is to check HTTP headers sent back by the server. If it contains Server: PlantUML PicoWebServer then, it's a PicoWebServer.
Does it help?
Hm. Sounds doable - but I do not know much about http and web servers...
As the reason I would like to know this is to identify the supported formats, would it be possible to add a document which contains the supported formats? Something along the lines of http://server:port/supportedformats which returns text of json containing the supported formats and other relevant info?
Sure, this http://server:port/supportedformats endpoint is a good idea.
The most complex part is to defined what will be in the actual json data :-)
To start, I suggest that you give us the data you are expecting for "PicoWebServer".
We will then hardcode this in the endpoint http://server:port/supportedformats for "PicoWebServer".
This should be easy to implement.
Great. The information I would need, is at the moment only the supported formats, as I think that is the only difference in the servers? i.e. there is nothing else that differs between a call to the web server or the PicoWebServer.
probably in a different endpoint, the version of plantuml used would also be useful to know in some cases. So the endpoint could be named http://server:port/serverinfo and one entry could be the supported formats. Another one the server type (PicoWebServer or web service) the version, etc.