You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* fix: make standard-mode console logging effective; pin relay-timeout upstream contracts
usage_logger's StartupLogCollector attaches to the root logger at import
time, so _setup_logging's basicConfig was a no-op in ha-mcp-web/stdio
modes (root stayed at WARNING with no console handler — INFO lines like
the annotated 405 probe never surfaced). force=True is now the default,
wrapped in preserve_startup_collector() so the collector survives the
force sweep un-closed — which also repairs OAuth/OIDC modes, whose
explicit force=True has been silently destroying ha_report_issue's
startup-log capture on every start.
Pin the upstream facts the relay timeout tests rely on: real aiohttp
(new dev dependency, floored at HA 2026.6's pin) is compared field-by-
field against both ClientTimeout stubs in a pristine subprocess, and
sse-starlette's 15 s keepalive default plus the MCP SDK's omission of a
ping override are asserted so a drift fails loud instead of leaving
tests green while production moves.
Also: FAQ migration note for the removed ha-mcp-sse entry point, and
component escalated to 1.3.0 (pending minor per AGENTS.md — the merged
RFC 9207 iss feature warrants more than a patch).
Closes#2031.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017iTWsCSMPqSHm7Po8yGzfk
* test: pin the force=True default with a foreign-root-handler case
Patch76's review: the collector-only test state let a force=False flip
stay green (the wrapper empties the handler list, so basicConfig acts
regardless), and the docstring blamed the collector for a no-op the
wrapper already prevents. The new case installs a non-collector root
handler first — red on a default flip — and the docstring now states
what force actually guards: foreign root handlers and repeat
reconfiguration. Verified by mutation both ways.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017iTWsCSMPqSHm7Po8yGzfk
* docs: correct the force-default docstring against the call graph
Patch76's residual: OAuth/OIDC pass force=True explicitly and never
exercise the default; the default's users are exactly the post-settings
standard paths, and no entry point reconfigures twice. The docstring
now says what the suite proves — foreign handlers from a test runner or
dependency — and notes the default is defensive at today's call sites.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017iTWsCSMPqSHm7Po8yGzfk
---------
Co-authored-by: kingpanther13 <kingpanther13@users.noreply.github.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: docs/FAQ.md
+9Lines changed: 9 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -46,6 +46,15 @@ The demo environment resets weekly. Your changes won't persist.
46
46
47
47
## Troubleshooting
48
48
49
+
### `ha-mcp-sse` is gone / my SSE config stopped connecting
50
+
51
+
The legacy `ha-mcp-sse` entry point (deprecated HTTP+SSE transport on port 8087)
52
+
was removed — the MCP specification deprecated the HTTP+SSE transport. Switch to
53
+
`ha-mcp-web`, which serves Streamable HTTP at `/mcp` on port 8086, and change any
54
+
SSE-style client config accordingly (Gemini CLI users: use the `httpUrl` key, not
55
+
`url`). An SSE / `--transport sse` client config pointed at `ha-mcp-web` returns
56
+
`405` and won't connect.
57
+
49
58
### OAuth stopped working after upgrading to v7.0.0
50
59
51
60
v7.0.0 removed the Home Assistant URL field from the OAuth consent form to fix security vulnerabilities (SSRF and XSS). Set `HOMEASSISTANT_URL` as a server-side environment variable before starting ha-mcp. See the [OAuth migration guide](OAUTH.md#migrating-from-v6x) for instructions.
0 commit comments