pub async fn serve(raw: RawConfig) -> Result<()>
Serve MCP over stdio until the client disconnects. Kicks off warmup right after the transport is up (spec §5) and performs graceful shutdown on exit (spec §4.6).