Skip to content

v0.6.4

Latest

Choose a tag to compare

@thomaschristory thomaschristory released this 03 Jul 10:18
· 12 commits to main since this release
59729ce

Patch release. Closes the v0.6.4 milestone.

Fixed

  • Auto-recover from legacy session timeout without a restart (#93). In session mode (use_jwt: false — the 20.15 / DevNet-sandbox default), an expired JSESSIONID makes vManage answer API calls with an HTTP 200 login page instead of a clean 302/401. The MCP server never re-authenticated, so every subsequent tool call returned login HTML and the only fix was a manual restart — confusing LLM agents mid-session. is_session_expired() now also treats a 2xx carrying the vManage login markers as expiry, so the existing retry-once re-login recovers transparently.

    Hardened after adversarial review: markers are anchored (the j_security_check form action, or a url=/href= redirect to welcome.html) so the read-only HTML device-config endpoint (GET /device/config/html) can't be misread as a login page and discarded; JSON/text successes are rejected by content-type before the body is read; and a persistent expiry (e.g. a concurrent-session limit on shared credentials) surfaces a real error instead of the internal sentinel. JWT mode is unaffected.

Full Changelog: https://github.com/thomaschristory/catalyst-sdwan-super-mcp/blob/main/CHANGELOG.md