A tool server is just a REST API that includes an OpenAPI specification, that the AI can use to navigate how to leverage the API.
Preferrably, the OpenAPI specification and the actual code should only be maintained using a single source of truth.
So far I've only found Reitit which seems to work when using vanilla Clojure: https://github.com/metosin/reitit/tree/master/examples/openapi