v0.10.8
Bug fixes & improvements
- api:
TAILSCALE_REQUEST_BUDGET_MSnow caps the first attempt's fetch timeout. Previously the documented "total wall-clock per apiRequest" only governed retry decisions, so a tight budget (e.g. 5s) silently fell through to the 30s per-attempt default on attempt 1. - api: OAuth token refresh now consumes a slot under
TAILSCALE_MAX_CONCURRENTinstead of bypassing it. Pre-fix a refresh could race a concurrentapiRequestfetch and push peak in-flight calls past the cap by 1. - keys:
tailscale_create_keywithkeyType: "auth"now rejectsscopes / issuer / subject / audience / customClaimRuleswith a clear error instead of silently dropping them. Mirrors the existing auth-only-fields-on-non-auth guard. - resources:
tailscale://tailnet/aclfailure body now prefixes every line of multi-line API errors with//so the body stays HuJSON-parseable. Previously only line 1 was commented, which would have broken any downstreamtailscale_update_aclthat round-tripped the raw body.
Chores
- README tool count corrected (88 -> 89).
- Comment added near
webhookEventTypesnoting the static catalog requires a release to refresh. @biomejs/biome2.4.12 -> 2.4.15 (devDep, #18)@types/node25.6.0 -> 25.6.2 (devDep, #19)
Install
npx -y @yawlabs/tailscale-mcp@0.10.8
875/875 unit tests pass. Lint clean.