MCP server for Tailscale.
Two surfaces, deliberately kept apart. The local surface drives the node
this server runs on through the tailscale command-line interface
(ADR-0001). The tailnet surface acts on the whole tailnet through the
control-plane REST API (ADR-0002). A tool belongs to exactly one of them.
The crate is a library as well as a binary so that the tests can build a whole server in-process and drive it as a client, which is where nearly all of the behaviour is observable.