ha-mcp-dev 9.1.0.dev3355__tar.gz → 9.1.1.dev3362__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (837) hide show
  1. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/PKG-INFO +1 -1
  2. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/pyproject.toml +1 -1
  3. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/pyproject.toml.orig +1 -1
  4. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/az.json +1 -1
  5. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/cs.json +1 -1
  6. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/de.json +1 -1
  7. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/en.json +1 -0
  8. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/eo.json +1 -1
  9. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/es.json +1 -1
  10. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/fr.json +1 -1
  11. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/hu.json +1 -1
  12. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/it.json +1 -1
  13. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/ko.json +1 -1
  14. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/nl.json +1 -1
  15. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/pl.json +1 -1
  16. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/ru.json +1 -1
  17. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/sv.json +1 -1
  18. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/zh-Hans.json +1 -1
  19. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/zh-Hant.json +1 -1
  20. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings.css +8 -1
  21. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings.html +1 -0
  22. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/07_policy_actions.js +63 -12
  23. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/09_prefs_visibility.js +4 -4
  24. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/LICENSE +0 -0
  25. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/README.md +0 -0
  26. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/__init__.py +0 -0
  27. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/__main__.py +0 -0
  28. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_pypi_marker +0 -0
  29. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_rich_compat.py +0 -0
  30. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/__init__.py +0 -0
  31. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/LICENSE +0 -0
  32. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/MANIFEST.sha256 +0 -0
  33. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/REQUIRES.txt +0 -0
  34. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/VENDORED +0 -0
  35. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/__init__.py +0 -0
  36. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/_compat.py +0 -0
  37. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/_install_hints.py +0 -0
  38. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/_warnings.py +0 -0
  39. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/__init__.py +0 -0
  40. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/app.py +0 -0
  41. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/approval.py +0 -0
  42. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/choice.py +0 -0
  43. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/config.py +0 -0
  44. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/file_upload.py +0 -0
  45. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/form.py +0 -0
  46. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/apps/generative.py +0 -0
  47. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/__init__.py +0 -0
  48. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/__main__.py +0 -0
  49. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/apps_dev.py +0 -0
  50. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/apps_dev_security.py +0 -0
  51. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/auth.py +0 -0
  52. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/cimd.py +0 -0
  53. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/cli.py +0 -0
  54. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/client.py +0 -0
  55. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/__init__.py +0 -0
  56. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/authentication.py +0 -0
  57. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/command.py +0 -0
  58. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/configuration.py +0 -0
  59. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/credentials.py +0 -0
  60. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/horizon_client.py +0 -0
  61. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/output.py +0 -0
  62. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/deploy/state.py +0 -0
  63. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/discovery.py +0 -0
  64. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/generate.py +0 -0
  65. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/__init__.py +0 -0
  66. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/claude_code.py +0 -0
  67. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/claude_desktop.py +0 -0
  68. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/cursor.py +0 -0
  69. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/gemini_cli.py +0 -0
  70. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/goose.py +0 -0
  71. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/mcp_json.py +0 -0
  72. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/shared.py +0 -0
  73. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/install/stdio.py +0 -0
  74. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/cli/run.py +0 -0
  75. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/__init__.py +0 -0
  76. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/_sdk_context_shim.py +0 -0
  77. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/auth/__init__.py +0 -0
  78. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/auth/bearer.py +0 -0
  79. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/auth/client_credentials.py +0 -0
  80. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/auth/oauth.py +0 -0
  81. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/caching.py +0 -0
  82. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/client.py +0 -0
  83. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/dependencies.py +0 -0
  84. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/elicitation.py +0 -0
  85. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/extension_hooks.py +0 -0
  86. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/group.py +0 -0
  87. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/logging.py +0 -0
  88. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/messages.py +0 -0
  89. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/mixins/__init__.py +0 -0
  90. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/mixins/prompts.py +0 -0
  91. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/mixins/resources.py +0 -0
  92. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/mixins/skills.py +0 -0
  93. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/mixins/tools.py +0 -0
  94. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/oauth_callback.py +0 -0
  95. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/progress.py +0 -0
  96. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/roots.py +0 -0
  97. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/sampling/__init__.py +0 -0
  98. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/__init__.py +0 -0
  99. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/anthropic.py +0 -0
  100. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/google_genai.py +0 -0
  101. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/openai.py +0 -0
  102. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/telemetry.py +0 -0
  103. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/__init__.py +0 -0
  104. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/base.py +0 -0
  105. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/config.py +0 -0
  106. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/http.py +0 -0
  107. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/inference.py +0 -0
  108. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/memory.py +0 -0
  109. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/sse.py +0 -0
  110. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/client/transports/stdio.py +0 -0
  111. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/README.md +0 -0
  112. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/README.md +0 -0
  113. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/__init__.py +0 -0
  114. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/bulk_tool_caller.py +0 -0
  115. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/example.py +0 -0
  116. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/README.md +0 -0
  117. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/__init__.py +0 -0
  118. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/component_manager.py +0 -0
  119. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/example.py +0 -0
  120. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/README.md +0 -0
  121. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/__init__.py +0 -0
  122. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/example.py +0 -0
  123. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/mcp_mixin.py +0 -0
  124. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/decorators.py +0 -0
  125. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/dependencies.py +0 -0
  126. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/exceptions.py +0 -0
  127. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/experimental/__init__.py +0 -0
  128. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/__init__.py +0 -0
  129. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/code_mode.py +0 -0
  130. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/jev_search.py +0 -0
  131. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/mcp_config.py +0 -0
  132. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/prompts/__init__.py +0 -0
  133. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/prompts/base.py +0 -0
  134. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/prompts/function_prompt.py +0 -0
  135. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/py.typed +0 -0
  136. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/resources/__init__.py +0 -0
  137. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/resources/base.py +0 -0
  138. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/resources/function_resource.py +0 -0
  139. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/resources/security.py +0 -0
  140. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/resources/template.py +0 -0
  141. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/resources/types.py +0 -0
  142. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/__init__.py +0 -0
  143. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/__init__.py +0 -0
  144. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/auth.py +0 -0
  145. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/cimd.py +0 -0
  146. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/handlers/__init__.py +0 -0
  147. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/handlers/authorize.py +0 -0
  148. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/identity_assertion.py +0 -0
  149. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/jwt_issuer.py +0 -0
  150. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/middleware.py +0 -0
  151. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/__init__.py +0 -0
  152. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/consent.py +0 -0
  153. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/models.py +0 -0
  154. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/proxy.py +0 -0
  155. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/ui.py +0 -0
  156. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/upstream.py +0 -0
  157. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/oidc_proxy.py +0 -0
  158. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/__init__.py +0 -0
  159. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/auth0.py +0 -0
  160. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/aws.py +0 -0
  161. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/azure.py +0 -0
  162. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/clerk.py +0 -0
  163. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/debug.py +0 -0
  164. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/descope.py +0 -0
  165. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/discord.py +0 -0
  166. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/github.py +0 -0
  167. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/google.py +0 -0
  168. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/huggingface.py +0 -0
  169. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/in_memory.py +0 -0
  170. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/introspection.py +0 -0
  171. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/jwt.py +0 -0
  172. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/keycloak.py +0 -0
  173. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/oci.py +0 -0
  174. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/propelauth.py +0 -0
  175. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/scalekit.py +0 -0
  176. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/supabase.py +0 -0
  177. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/workos.py +0 -0
  178. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/redirect_validation.py +0 -0
  179. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/auth/ssrf.py +0 -0
  180. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/caching.py +0 -0
  181. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/completions.py +0 -0
  182. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/context.py +0 -0
  183. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/dependencies.py +0 -0
  184. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/elicitation.py +0 -0
  185. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/event_store.py +0 -0
  186. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/extensions.py +0 -0
  187. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/http.py +0 -0
  188. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/lifespan.py +0 -0
  189. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/low_level.py +0 -0
  190. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/__init__.py +0 -0
  191. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/authorization.py +0 -0
  192. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/caching.py +0 -0
  193. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/dereference.py +0 -0
  194. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/error_handling.py +0 -0
  195. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/logging.py +0 -0
  196. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/middleware.py +0 -0
  197. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/ping.py +0 -0
  198. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/rate_limiting.py +0 -0
  199. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/response_limiting.py +0 -0
  200. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/timing.py +0 -0
  201. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/middleware/tool_injection.py +0 -0
  202. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/mixins/__init__.py +0 -0
  203. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/mixins/extensions.py +0 -0
  204. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/mixins/lifespan.py +0 -0
  205. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/mixins/mcp_operations.py +0 -0
  206. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/mixins/transport.py +0 -0
  207. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/__init__.py +0 -0
  208. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/addressing.py +0 -0
  209. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/aggregate.py +0 -0
  210. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/base.py +0 -0
  211. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/fastmcp_provider.py +0 -0
  212. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/filesystem.py +0 -0
  213. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/filesystem_discovery.py +0 -0
  214. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/__init__.py +0 -0
  215. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/__init__.py +0 -0
  216. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/prompts.py +0 -0
  217. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/resources.py +0 -0
  218. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/tools.py +0 -0
  219. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/local_provider.py +0 -0
  220. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/README.md +0 -0
  221. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/__init__.py +0 -0
  222. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/components.py +0 -0
  223. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/provider.py +0 -0
  224. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/routing.py +0 -0
  225. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/prefab_payload.py +0 -0
  226. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/prefab_synthesis.py +0 -0
  227. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/proxy.py +0 -0
  228. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/__init__.py +0 -0
  229. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/_common.py +0 -0
  230. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/claude_provider.py +0 -0
  231. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/directory_provider.py +0 -0
  232. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/skill_provider.py +0 -0
  233. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/vendor_providers.py +0 -0
  234. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/providers/wrapped_provider.py +0 -0
  235. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/server.py +0 -0
  236. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/session_scoped_event_store.py +0 -0
  237. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/sessions.py +0 -0
  238. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/telemetry.py +0 -0
  239. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/__init__.py +0 -0
  240. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/catalog.py +0 -0
  241. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/namespace.py +0 -0
  242. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/prompts_as_tools.py +0 -0
  243. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/resources_as_tools.py +0 -0
  244. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/__init__.py +0 -0
  245. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/base.py +0 -0
  246. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/bm25.py +0 -0
  247. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/regex.py +0 -0
  248. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/tool_transform.py +0 -0
  249. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/version_filter.py +0 -0
  250. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/server/transforms/visibility.py +0 -0
  251. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/settings.py +0 -0
  252. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/__init__.py +0 -0
  253. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/_constants.py +0 -0
  254. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/_resources.py +0 -0
  255. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/_snapshot.py +0 -0
  256. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/_source.py +0 -0
  257. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/client.py +0 -0
  258. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/extension.py +0 -0
  259. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/skills/models.py +0 -0
  260. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/telemetry.py +0 -0
  261. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/tools/__init__.py +0 -0
  262. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/tools/base.py +0 -0
  263. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/tools/function_parsing.py +0 -0
  264. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/tools/function_tool.py +0 -0
  265. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/tools/tool_transform.py +0 -0
  266. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/types.py +0 -0
  267. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/__init__.py +0 -0
  268. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/asgi_transport.py +0 -0
  269. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/async_utils.py +0 -0
  270. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/auth.py +0 -0
  271. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/authorization.py +0 -0
  272. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/cli.py +0 -0
  273. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/components.py +0 -0
  274. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/docstring_parsing.py +0 -0
  275. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/exceptions.py +0 -0
  276. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/http.py +0 -0
  277. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/inspect.py +0 -0
  278. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/json_schema.py +0 -0
  279. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/json_schema_type.py +0 -0
  280. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/lifespan.py +0 -0
  281. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/logging.py +0 -0
  282. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/__init__.py +0 -0
  283. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/__init__.py +0 -0
  284. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/__init__.py +0 -0
  285. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/base.py +0 -0
  286. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/uv.py +0 -0
  287. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/mcp_server_config.py +0 -0
  288. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/schema.json +0 -0
  289. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/__init__.py +0 -0
  290. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/base.py +0 -0
  291. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/filesystem.py +0 -0
  292. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/mime.py +0 -0
  293. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/README.md +0 -0
  294. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/__init__.py +0 -0
  295. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/director.py +0 -0
  296. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/formatters.py +0 -0
  297. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/json_schema_converter.py +0 -0
  298. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/models.py +0 -0
  299. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/parser.py +0 -0
  300. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/schemas.py +0 -0
  301. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/pagination.py +0 -0
  302. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/prefab.py +0 -0
  303. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/skills.py +0 -0
  304. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/tasks.py +0 -0
  305. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/tests.py +0 -0
  306. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/timeout.py +0 -0
  307. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/token_cache.py +0 -0
  308. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/types.py +0 -0
  309. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/ui.py +0 -0
  310. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/version_check.py +0 -0
  311. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/fastmcp/utilities/versions.py +0 -0
  312. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/LICENSE +0 -0
  313. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/MANIFEST.sha256 +0 -0
  314. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/REQUIRES.txt +0 -0
  315. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/VENDORED +0 -0
  316. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/__init__.py +0 -0
  317. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/cli/__init__.py +0 -0
  318. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/cli/claude.py +0 -0
  319. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/cli/cli.py +0 -0
  320. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/__init__.py +0 -0
  321. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/__main__.py +0 -0
  322. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/_input_required.py +0 -0
  323. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/_memory.py +0 -0
  324. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/_probe.py +0 -0
  325. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/_transport.py +0 -0
  326. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/__init__.py +0 -0
  327. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/exceptions.py +0 -0
  328. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/extensions/__init__.py +0 -0
  329. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/extensions/client_credentials.py +0 -0
  330. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/extensions/identity_assertion.py +0 -0
  331. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/oauth2.py +0 -0
  332. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/auth/utils.py +0 -0
  333. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/caching.py +0 -0
  334. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/client.py +0 -0
  335. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/context.py +0 -0
  336. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/extension.py +0 -0
  337. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/session.py +0 -0
  338. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/session_group.py +0 -0
  339. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/sse.py +0 -0
  340. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/stdio.py +0 -0
  341. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/streamable_http.py +0 -0
  342. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/client/subscriptions.py +0 -0
  343. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/os/__init__.py +0 -0
  344. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/os/posix/__init__.py +0 -0
  345. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/os/posix/utilities.py +0 -0
  346. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/os/win32/__init__.py +0 -0
  347. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/os/win32/utilities.py +0 -0
  348. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/py.typed +0 -0
  349. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/__init__.py +0 -0
  350. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/__main__.py +0 -0
  351. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/_otel.py +0 -0
  352. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/_streamable_http_modern.py +0 -0
  353. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/apps.py +0 -0
  354. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/__init__.py +0 -0
  355. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/errors.py +0 -0
  356. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/handlers/__init__.py +0 -0
  357. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/handlers/authorize.py +0 -0
  358. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/handlers/metadata.py +0 -0
  359. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/handlers/register.py +0 -0
  360. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/handlers/revoke.py +0 -0
  361. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/handlers/token.py +0 -0
  362. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/json_response.py +0 -0
  363. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/middleware/__init__.py +0 -0
  364. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/middleware/auth_context.py +0 -0
  365. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/middleware/bearer_auth.py +0 -0
  366. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/middleware/client_auth.py +0 -0
  367. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/provider.py +0 -0
  368. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/routes.py +0 -0
  369. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/auth/settings.py +0 -0
  370. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/caching.py +0 -0
  371. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/connection.py +0 -0
  372. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/context.py +0 -0
  373. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/elicitation.py +0 -0
  374. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/extension.py +0 -0
  375. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/fastmcp.py +0 -0
  376. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/lowlevel/__init__.py +0 -0
  377. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/lowlevel/helper_types.py +0 -0
  378. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/lowlevel/server.py +0 -0
  379. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/__init__.py +0 -0
  380. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/context.py +0 -0
  381. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/exceptions.py +0 -0
  382. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/__init__.py +0 -0
  383. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/base.py +0 -0
  384. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/manager.py +0 -0
  385. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/resolve.py +0 -0
  386. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/__init__.py +0 -0
  387. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/base.py +0 -0
  388. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/resource_manager.py +0 -0
  389. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/templates.py +0 -0
  390. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/types.py +0 -0
  391. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/server.py +0 -0
  392. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/__init__.py +0 -0
  393. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/base.py +0 -0
  394. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/tool_manager.py +0 -0
  395. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/__init__.py +0 -0
  396. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/context_injection.py +0 -0
  397. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/func_metadata.py +0 -0
  398. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/logging.py +0 -0
  399. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/types.py +0 -0
  400. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/models.py +0 -0
  401. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/request_state.py +0 -0
  402. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/runner.py +0 -0
  403. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/session.py +0 -0
  404. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/sse.py +0 -0
  405. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/stdio.py +0 -0
  406. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/streamable_http.py +0 -0
  407. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/streamable_http_manager.py +0 -0
  408. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/subscriptions.py +0 -0
  409. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/transport_security.py +0 -0
  410. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/server/validation.py +0 -0
  411. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/__init__.py +0 -0
  412. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_callable_inspection.py +0 -0
  413. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_compat.py +0 -0
  414. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_context_streams.py +0 -0
  415. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_httpx_utils.py +0 -0
  416. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_otel.py +0 -0
  417. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_request_clock.py +0 -0
  418. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/_stream_protocols.py +0 -0
  419. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/auth.py +0 -0
  420. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/auth_utils.py +0 -0
  421. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/context.py +0 -0
  422. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/direct_dispatcher.py +0 -0
  423. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/dispatcher.py +0 -0
  424. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/exceptions.py +0 -0
  425. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/extension.py +0 -0
  426. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/inbound.py +0 -0
  427. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/jsonrpc_dispatcher.py +0 -0
  428. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/memory.py +0 -0
  429. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/message.py +0 -0
  430. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/metadata_utils.py +0 -0
  431. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/path_security.py +0 -0
  432. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/peer.py +0 -0
  433. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/subscriptions.py +0 -0
  434. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/tool_name_validation.py +0 -0
  435. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/transport_context.py +0 -0
  436. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/shared/uri_template.py +0 -0
  437. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/types/__init__.py +0 -0
  438. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/types/jsonrpc.py +0 -0
  439. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/types/methods.py +0 -0
  440. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp/types/version.py +0 -0
  441. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/LICENSE +0 -0
  442. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/MANIFEST.sha256 +0 -0
  443. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/REQUIRES.txt +0 -0
  444. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/VENDORED +0 -0
  445. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/__init__.py +0 -0
  446. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/_types.py +0 -0
  447. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/_v2025_11_25/__init__.py +0 -0
  448. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/_v2026_07_28/__init__.py +0 -0
  449. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/_wire_base.py +0 -0
  450. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/jsonrpc.py +0 -0
  451. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/methods.py +0 -0
  452. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/py.typed +0 -0
  453. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/mcp_types/version.py +0 -0
  454. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/requirements.txt +0 -0
  455. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/LICENSE +0 -0
  456. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256 +0 -0
  457. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/VENDORED +0 -0
  458. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/__init__.py +0 -0
  459. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/__main__.py +0 -0
  460. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/asyncio/__init__.py +0 -0
  461. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/asyncio/client.py +0 -0
  462. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/asyncio/connection.py +0 -0
  463. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/asyncio/messages.py +0 -0
  464. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/asyncio/router.py +0 -0
  465. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/asyncio/server.py +0 -0
  466. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/auth.py +0 -0
  467. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/cli.py +0 -0
  468. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/client.py +0 -0
  469. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/connection.py +0 -0
  470. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/datastructures.py +0 -0
  471. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/exceptions.py +0 -0
  472. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/extensions/__init__.py +0 -0
  473. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/extensions/base.py +0 -0
  474. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/extensions/permessage_deflate.py +0 -0
  475. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/frames.py +0 -0
  476. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/headers.py +0 -0
  477. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/http11.py +0 -0
  478. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/imports.py +0 -0
  479. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/__init__.py +0 -0
  480. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/auth.py +0 -0
  481. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/client.py +0 -0
  482. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/exceptions.py +0 -0
  483. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/framing.py +0 -0
  484. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/handshake.py +0 -0
  485. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/http.py +0 -0
  486. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/protocol.py +0 -0
  487. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/legacy/server.py +0 -0
  488. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/protocol.py +0 -0
  489. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/proxy.py +0 -0
  490. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/py.typed +0 -0
  491. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/server.py +0 -0
  492. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/streams.py +0 -0
  493. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/__init__.py +0 -0
  494. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/client.py +0 -0
  495. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/connection.py +0 -0
  496. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/messages.py +0 -0
  497. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/router.py +0 -0
  498. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/server.py +0 -0
  499. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/sync/utils.py +0 -0
  500. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/__init__.py +0 -0
  501. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/client.py +0 -0
  502. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/connection.py +0 -0
  503. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/messages.py +0 -0
  504. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/router.py +0 -0
  505. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/server.py +0 -0
  506. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/trio/utils.py +0 -0
  507. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/typing.py +0 -0
  508. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/uri.py +0 -0
  509. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/utils.py +0 -0
  510. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_vendor/websockets/version.py +0 -0
  511. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/_version.py +0 -0
  512. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/app_discovery.py +0 -0
  513. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/auth/__init__.py +0 -0
  514. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/auth/consent_form.py +0 -0
  515. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/auth/iss_stamp.py +0 -0
  516. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/auth/oidc_compat.py +0 -0
  517. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/auth/provider.py +0 -0
  518. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_dashboards.py +0 -0
  519. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_diff.py +0 -0
  520. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_entities.py +0 -0
  521. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_entity_ids.py +0 -0
  522. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_helper_target.py +0 -0
  523. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_integrations.py +0 -0
  524. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_manager.py +0 -0
  525. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_tags.py +0 -0
  526. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_todo.py +0 -0
  527. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/backup_zones.py +0 -0
  528. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/browser_landing.py +0 -0
  529. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/__init__.py +0 -0
  530. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/admin_routes.py +0 -0
  531. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/error_log_journald.py +0 -0
  532. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/event_listeners.py +0 -0
  533. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/models.py +0 -0
  534. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/rest_client.py +0 -0
  535. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/supervisor_client.py +0 -0
  536. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/websocket_client.py +0 -0
  537. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/client/websocket_listener.py +0 -0
  538. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/config.py +0 -0
  539. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/config_backup.py +0 -0
  540. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/config_meta.py +0 -0
  541. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/config_overrides.py +0 -0
  542. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/config_registry.py +0 -0
  543. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/config_settings.py +0 -0
  544. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
  545. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
  546. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
  547. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/engine_compat.py +0 -0
  548. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
  549. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
  550. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/theme_check.py +0 -0
  551. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
  552. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/errors.py +0 -0
  553. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/ha_request_queue.py +0 -0
  554. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/hacs_auto_refresh.py +0 -0
  555. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/http_transport.py +0 -0
  556. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/image_info.py +0 -0
  557. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/ipv6_lan_guard.py +0 -0
  558. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/listen_sockets.py +0 -0
  559. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/llm_exposure.py +0 -0
  560. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/log_filters.py +0 -0
  561. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/mcp_client_context.py +0 -0
  562. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/__init__.py +0 -0
  563. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/approval_queue.py +0 -0
  564. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/decision_pin.py +0 -0
  565. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/decisions.py +0 -0
  566. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/editing.py +0 -0
  567. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/evaluator.py +0 -0
  568. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/events.py +0 -0
  569. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/handlers.py +0 -0
  570. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/middleware.py +0 -0
  571. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/model.py +0 -0
  572. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/mrtr.py +0 -0
  573. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/persistence.py +0 -0
  574. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/server_channels.py +0 -0
  575. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/policy/value_sources.py +0 -0
  576. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/py.typed +0 -0
  577. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/read_only.py +0 -0
  578. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/redaction.py +0 -0
  579. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/renamed_tools.py +0 -0
  580. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
  581. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
  582. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
  583. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-actions.md +0 -0
  584. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/backups.md +0 -0
  585. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
  586. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
  587. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
  588. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
  589. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
  590. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
  591. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
  592. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
  593. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
  594. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
  595. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/triggers-and-conditions.md +0 -0
  596. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
  597. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/server.py +0 -0
  598. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/server_instructions.py +0 -0
  599. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/server_lifespan.py +0 -0
  600. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/server_tool_text.py +0 -0
  601. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/__init__.py +0 -0
  602. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
  603. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
  604. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
  605. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_oauth_callbacks.py +0 -0
  606. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
  607. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
  608. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
  609. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_i18n.py +0 -0
  610. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_locale_policy.py +0 -0
  611. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_persistence.py +0 -0
  612. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
  613. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_theme.py +0 -0
  614. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
  615. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/README.md +0 -0
  616. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/locales/tlh.json +0 -0
  617. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/01_i18n_state.js +0 -0
  618. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/02_tools_restart.js +0 -0
  619. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/03_render_save.js +0 -0
  620. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/04_backups.js +0 -0
  621. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/05_feature_flags.js +0 -0
  622. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/06_policy_cards.js +0 -0
  623. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/08_advanced.js +0 -0
  624. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/settings_ui/settings_js/10_oauth_callbacks.js +0 -0
  625. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/smoke_test.py +0 -0
  626. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
  627. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/storage_helper_types.py +0 -0
  628. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/strict_bps.py +0 -0
  629. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tool_catalog.py +0 -0
  630. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tool_dispatch.py +0 -0
  631. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/__init__.py +0 -0
  632. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/addon_connection_hints.py +0 -0
  633. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/area_messages.py +0 -0
  634. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/auto_backup.py +0 -0
  635. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/automation_errors.py +0 -0
  636. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/backup.py +0 -0
  637. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/backup_access.py +0 -0
  638. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/backup_on_demand.py +0 -0
  639. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/backup_snapshot.py +0 -0
  640. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/backup_snapshot_restore.py +0 -0
  641. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/best_practice_checker.py +0 -0
  642. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/best_practice_result.py +0 -0
  643. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/best_practice_variables.py +0 -0
  644. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/blueprint_sources.py +0 -0
  645. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/blueprint_substitute.py +0 -0
  646. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/blueprint_write.py +0 -0
  647. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/bug_report_config.py +0 -0
  648. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/bug_report_redaction.py +0 -0
  649. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/bug_report_sources.py +0 -0
  650. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/bug_report_templates.py +0 -0
  651. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/bulk_selector.py +0 -0
  652. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/coercion.py +0 -0
  653. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_api.py +0 -0
  654. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_automation.py +0 -0
  655. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_config_entries.py +0 -0
  656. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_config_reads.py +0 -0
  657. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_dashboard_edit.py +0 -0
  658. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_devices.py +0 -0
  659. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_helper_collections.py +0 -0
  660. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_registries.py +0 -0
  661. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
  662. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/component_todo.py +0 -0
  663. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_backup.py +0 -0
  664. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_flow.py +0 -0
  665. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_flow_form.py +0 -0
  666. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_flow_introspect.py +0 -0
  667. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_flow_menu.py +0 -0
  668. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_flow_walker.py +0 -0
  669. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_identity.py +0 -0
  670. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_reconfigure.py +0 -0
  671. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_entry_reload_watch.py +0 -0
  672. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_file_visibility.py +0 -0
  673. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/__init__.py +0 -0
  674. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/core_payload.py +0 -0
  675. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/create.py +0 -0
  676. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/describe.py +0 -0
  677. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/flow.py +0 -0
  678. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/icon_route.py +0 -0
  679. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/listing.py +0 -0
  680. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/registry.py +0 -0
  681. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/schemas.py +0 -0
  682. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/typed_config.py +0 -0
  683. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/update.py +0 -0
  684. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_helpers/validation.py +0 -0
  685. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_subentry_restore.py +0 -0
  686. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_write_errors.py +0 -0
  687. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/config_write_helpers.py +0 -0
  688. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/core_contract.py +0 -0
  689. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/dashboard_card_describe.py +0 -0
  690. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/dashboard_edit_errors.py +0 -0
  691. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/dashboard_list_checks.py +0 -0
  692. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/dashboard_read_errors.py +0 -0
  693. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/dev_backup.py +0 -0
  694. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/device_control.py +0 -0
  695. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/device_enrichment.py +0 -0
  696. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/diagnostics_helpers.py +0 -0
  697. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/energy_preferences.py +0 -0
  698. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/entity_expose_batch.py +0 -0
  699. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/entity_param_parsing.py +0 -0
  700. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/entity_registration.py +0 -0
  701. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/entity_removal.py +0 -0
  702. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/entity_update_fields.py +0 -0
  703. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/error_log_parsing.py +0 -0
  704. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/event_call.py +0 -0
  705. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/event_listener_fields.py +0 -0
  706. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/flow_helper_lookup.py +0 -0
  707. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/hacs_backend.py +0 -0
  708. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/hacs_registration.py +0 -0
  709. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/helper_flows.py +0 -0
  710. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/helpers.py +0 -0
  711. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/history_response.py +0 -0
  712. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/integration_entry_state.py +0 -0
  713. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/integration_reconfigure.py +0 -0
  714. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/log_common.py +0 -0
  715. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/log_sources.py +0 -0
  716. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/log_sources_fault.py +0 -0
  717. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/log_sources_logbook.py +0 -0
  718. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/log_sources_supervisor.py +0 -0
  719. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/__init__.py +0 -0
  720. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/base.py +0 -0
  721. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/matter.py +0 -0
  722. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/thread.py +0 -0
  723. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/zigbee.py +0 -0
  724. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/zwave.py +0 -0
  725. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/radio/zwave_parameters.py +0 -0
  726. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/recorder_errors.py +0 -0
  727. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/reference_validator.py +0 -0
  728. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/registry.py +0 -0
  729. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/renamed_tool_middleware.py +0 -0
  730. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/resource_codec.py +0 -0
  731. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/resource_patch.py +0 -0
  732. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/response_helpers.py +0 -0
  733. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/scene_discovery.py +0 -0
  734. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/__init__.py +0 -0
  735. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/base.py +0 -0
  736. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/component.py +0 -0
  737. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/entities.py +0 -0
  738. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/legacy.py +0 -0
  739. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/modes.py +0 -0
  740. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/overview.py +0 -0
  741. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/response.py +0 -0
  742. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/search/state.py +0 -0
  743. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/server_version.py +0 -0
  744. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
  745. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_base.py +0 -0
  746. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_config.py +0 -0
  747. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
  748. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
  749. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
  750. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_graph.py +0 -0
  751. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
  752. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
  753. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
  754. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/statistics_calendar.py +0 -0
  755. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/statistics_helpers.py +0 -0
  756. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/statistics_resets.py +0 -0
  757. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/system_restart.py +0 -0
  758. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tool_hints.py +0 -0
  759. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
  760. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_addons.py +0 -0
  761. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_areas.py +0 -0
  762. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_assist_pipeline.py +0 -0
  763. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_blueprints.py +0 -0
  764. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_bug_report.py +0 -0
  765. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_calendar.py +0 -0
  766. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_camera.py +0 -0
  767. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_categories.py +0 -0
  768. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_code.py +0 -0
  769. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_config_automations.py +0 -0
  770. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
  771. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
  772. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
  773. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
  774. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
  775. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_dev.py +0 -0
  776. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_energy.py +0 -0
  777. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_entities.py +0 -0
  778. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_filesystem.py +0 -0
  779. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_groups.py +0 -0
  780. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_hacs.py +0 -0
  781. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_history.py +0 -0
  782. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_integrations.py +0 -0
  783. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_labels.py +0 -0
  784. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_logs.py +0 -0
  785. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_radio.py +0 -0
  786. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_registry.py +0 -0
  787. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_resources.py +0 -0
  788. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_search.py +0 -0
  789. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_security_policy.py +0 -0
  790. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_service.py +0 -0
  791. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_services.py +0 -0
  792. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_system.py +0 -0
  793. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_themes.py +0 -0
  794. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_todo.py +0 -0
  795. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_traces.py +0 -0
  796. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_updates.py +0 -0
  797. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_utility.py +0 -0
  798. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
  799. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
  800. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_yaml_read.py +0 -0
  801. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/tools_zones.py +0 -0
  802. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/update_categories.py +0 -0
  803. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/util_helpers.py +0 -0
  804. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/validation_middleware.py +0 -0
  805. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/tools/ws_waiters.py +0 -0
  806. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/__init__.py +0 -0
  807. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/categorized_search.py +0 -0
  808. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/compact_params.py +0 -0
  809. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/component_helpers.py +0 -0
  810. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/component_search.py +0 -0
  811. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
  812. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transforms/write_tool_note.py +0 -0
  813. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/transport_security.py +0 -0
  814. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/update_check.py +0 -0
  815. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/__init__.py +0 -0
  816. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/config_hash.py +0 -0
  817. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/config_write_lock.py +0 -0
  818. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/dashboard_patch.py +0 -0
  819. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/data_paths.py +0 -0
  820. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/device_registry_semantics.py +0 -0
  821. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/domain_handlers.py +0 -0
  822. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/entity_membership.py +0 -0
  823. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/fuzzy_search.py +0 -0
  824. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
  825. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/mcp_client_host.py +0 -0
  826. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/operation_manager.py +0 -0
  827. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/python_sandbox.py +0 -0
  828. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/registry_update_lock.py +0 -0
  829. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/skill_loader.py +0 -0
  830. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/utils/usage_logger.py +0 -0
  831. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/__init__.py +0 -0
  832. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/config_files.py +0 -0
  833. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/enforcement.py +0 -0
  834. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/identifier_aliases.py +0 -0
  835. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/model.py +0 -0
  836. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/persistence.py +0 -0
  837. {ha_mcp_dev-9.1.0.dev3355 → ha_mcp_dev-9.1.1.dev3362}/src/ha_mcp/visibility/resolver.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ha-mcp-dev
3
- Version: 9.1.0.dev3355
3
+ Version: 9.1.1.dev3362
4
4
  Summary: Home Assistant MCP Server - Complete control of Home Assistant through MCP
5
5
  Keywords: mcp,home-assistant,ai,automation,smart-home
6
6
  Author: Julien
@@ -4,7 +4,7 @@ build-backend = "uv_build"
4
4
 
5
5
  [project]
6
6
  name = "ha-mcp-dev"
7
- version = "9.1.0.dev3355"
7
+ version = "9.1.1.dev3362"
8
8
  description = "Home Assistant MCP Server - Complete control of Home Assistant through MCP"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.13,<3.15"
@@ -4,7 +4,7 @@ build-backend = "uv_build"
4
4
 
5
5
  [project]
6
6
  name = "ha-mcp-dev"
7
- version = "9.1.0.dev3355"
7
+ version = "9.1.1.dev3362"
8
8
  description = "Home Assistant MCP Server - Complete control of Home Assistant through MCP"
9
9
  readme = "README.md"
10
10
  # Upper bound widened to <3.15 so the package installs on Home Assistant's
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Parametrlər interfeysinin köməkçi proses portu",
520
520
  "advanced.sidecar_pin_port.help": "0 ilk işə salınmada boş port seçir və sonrakı yenidən başlatmalar üçün onu saxlayır; aralıqdakı port üstünlük verilən portu sabitləyir (tutulubsa boş olanına keçir).",
521
521
  "advanced.enable_dev_mode.label": "Proqramçı rejimi",
522
- "advanced.enable_dev_mode.help": "⚠ Parametrləri dəyişdirə və işləyən serveri əvəz edə bilən gizli alətləri qeydiyyatdan keçirir. Yalnız inkişaf və sınaq üçün.",
522
+ "advanced.enable_dev_mode.help": "⚠ Parametrləri dəyişə və işləyən serveri əvəz edə bilən gizli alətləri qeydiyyatdan keçirir. O, həmçinin bəzi obyektin görünməliyini və ya digər məhdudiyyətləri yan keçə bilər. Yalnız inkişaf və sınaq məqsədləri üçündür.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Proqramçı alətlərinin təhlükəsizlik siyasətlərinə girişi",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Proqramçı rejimi aktiv olduqda proqramçı alətlərinə alətlərin təhlükəsizlik siyasətlərini yenidən yazmağa, ayrı-ayrı alətlər üçün təsdiq tələbləri əlavə etməyə və ya onları çıxarmağa, gözləyən təsdiq sorğularını sizin adınızdan təsdiqləməyə və ya rədd etməyə imkan verir — AI agenti öz təsdiq tələb edən çağırışlarını qəbul edə bilər. Yalnız siyasətlərin sınağı üçün. Yenidən başlatmadan qüvvəyə minir.",
525
525
  "addon.secret_path.name": "Gizli yolun əvəzlənməsi",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Port sidecaru uživatelského rozhraní nastavení",
520
520
  "advanced.sidecar_pin_port.help": "Hodnota 0 vybere volný port při prvním spuštění a ponechá si ho pro pozdější restarty; port v zadaném rozsahu zafixuje preferovaný port (pokud je obsazen, přejde na volný).",
521
521
  "advanced.enable_dev_mode.label": "Režim vývojáře",
522
- "advanced.enable_dev_mode.help": "⚠ Registruje skryté nástroje, které mohou měnit nastavení a nahradit běžící server. Pouze pro vývoj a testování.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registruje skryté nástroje, které mohou měnit nastavení a nahradit běžící server. Může také obejít některá omezení viditelnosti entit nebo jiná omezení. Pouze pro vývoj a testování.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Přístup k bezpečnostním zásadám vývojářských nástrojů",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Zatímco je zapnutý režim vývojáře, umožňuje vývojářským nástrojům přepisovat bezpečnostní zásady nástrojů, přidávat nebo odebírat brány schválení pro jednotlivé nástroje a schvalovat nebo zamítat čekající schválení vaším jménem — agent AI může přijímat svá vlastní řízená volání. Pouze pro testování zásad. Projeví se bez restartu.",
525
525
  "addon.secret_path.name": "Přepsání tajné cesty",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Einstellungs-UI-Sidecar-Port",
520
520
  "advanced.sidecar_pin_port.help": "0 wählt beim ersten Start einen freien Port und behält ihn für spätere Neustarts bei; ein Port im Bereich fixiert einen bevorzugten Port (weicht auf einen freien aus, falls dieser belegt ist).",
521
521
  "advanced.enable_dev_mode.label": "Entwicklermodus",
522
- "advanced.enable_dev_mode.help": "⚠ Registriert versteckte Tools, die Einstellungen ändern und den laufenden Server ersetzen können. Nur für Entwicklung und Tests.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registriert versteckte Tools, die Einstellungen ändern und den laufenden Server ersetzen können. Es kann außerdem einige Entitätssichtbarkeiten oder andere Einschränkungen umgehen. Nur für Entwicklung und Tests.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Zugriff der Entwicklertools auf Sicherheitsrichtlinien",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Solange der Entwicklermodus aktiviert ist, können die Entwicklertools Tool-Sicherheitsrichtlinien umschreiben, Genehmigungstore pro Tool hinzufügen oder entfernen und ausstehende Genehmigungen in deinem Namen genehmigen oder ablehnen – ein KI-Agent kann seine eigenen gesperrten Aufrufe akzeptieren. Nur zum Testen von Richtlinien. Tritt ohne Neustart in Kraft.",
525
525
  "addon.secret_path.name": "Secret-Pfad Override",
@@ -444,6 +444,7 @@
444
444
  "policies.pending.decision.denied": "denied",
445
445
  "policies.pending.invalid_token": "This approval token is no longer valid (already consumed or expired).",
446
446
  "policies.pending.action_failed": "Approval action failed: {detail}",
447
+ "policies.pending.announcement": "Pending approvals: {count}",
447
448
  "visibility.errors.reach_server": "Could not reach the server: {message}",
448
449
  "visibility.errors.corrupt_suffix": " (entity_visibility.json appears corrupt; edit or delete it in the server's data directory)",
449
450
  "visibility.errors.load_detail": "Failed to load visibility config: {detail}",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Flankveturila pordo de Agorda UI",
520
520
  "advanced.sidecar_pin_port.help": "0 elektas liberan pordon ĉe unua komenco kaj konservas ĝin por postaj restartigoj; pordo en la intervalo pinglas preferatan pordon (falas al libera se okupata).",
521
521
  "advanced.enable_dev_mode.label": "Disvolva reĝimo",
522
- "advanced.enable_dev_mode.help": "⚠ Registras kaŝitajn ilojn kiuj povas ŝanĝi agordojn kaj anstataŭigi la rulantan servilon. Nur por disvolvo kaj testado.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registras kaŝitajn ilojn kiuj povas ŝanĝi agordojn kaj anstataŭigi la rulumantan servilon. Ĝi ankaŭ eble preterpasas iujn vidindecajn aŭ aliajn limigojn de entoj. Nur por evoluigo kaj testado.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Aliro al sekureca politiko de disvolvaj iloj",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Dum la disvolva reĝimo estas ŝaltita, permesas al la disvolvaj iloj reverki ilajn sekurecajn politikojn, aldoni aŭ forigi aprobo-pordojn por ĉiu ilo, kaj aprobi aŭ nei atendajn aprobojn je via nomo — AI-agento povas akcepti siajn proprajn porditajn vokojn. Nur por testado de politikoj. Efektiviĝas sen restartigo.",
525
525
  "addon.secret_path.name": "Anstataŭigo de sekreta vojo",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Puerto del sidecar de la interfaz de ajustes",
520
520
  "advanced.sidecar_pin_port.help": "0 selecciona un puerto libre en el primer inicio y lo mantiene para posteriores reinicios; un puerto dentro del rango fija un puerto preferido (recurre a uno libre si está ocupado).",
521
521
  "advanced.enable_dev_mode.label": "Modo de desarrollo",
522
- "advanced.enable_dev_mode.help": "⚠ Registra herramientas ocultas que pueden cambiar la configuración y reemplazar el servidor en ejecución. Solo para desarrollo y pruebas.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registra herramientas ocultas que pueden cambiar la configuración y reemplazar el servidor en ejecución. También puede omitir algunas limitaciones de visibilidad de entidades u otras. Solo para desarrollo y pruebas.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Acceso de las herramientas de desarrollo a las políticas de seguridad",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Mientras el modo de desarrollador esté activado, permite que las herramientas de desarrollo reescriban las políticas de seguridad de las herramientas, añadan o eliminen puertas de aprobación por herramienta y aprueben o denieguen aprobaciones pendientes en tu nombre; un agente de IA puede aceptar sus propias llamadas restringidas. Solo para pruebas de políticas. Se aplica sin reiniciar.",
525
525
  "addon.secret_path.name": "Ruta secreta personalizada",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Port du sidecar de l'interface des paramètres",
520
520
  "advanced.sidecar_pin_port.help": "0 choisit un port libre au premier démarrage et le conserve pour les redémarrages ultérieurs ; un port dans la plage épingle un port préféré (revient à un port libre s'il est pris).",
521
521
  "advanced.enable_dev_mode.label": "Mode développeur",
522
- "advanced.enable_dev_mode.help": "⚠ Enregistre des outils cachés qui peuvent modifier les paramètres et remplacer le serveur en cours d'exécution. Développement et test uniquement.",
522
+ "advanced.enable_dev_mode.help": "⚠ Enregistre des outils masqués qui peuvent modifier les paramètres et remplacer le serveur en cours d'exécution. Cela peut également contourner certaines limitations de visibilité des entités ou d'autres restrictions. Développement et test uniquement.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Accès aux politiques de sécurité des outils de développement",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Tant que le mode développeur est activé, permet aux outils de développement de réécrire les politiques de sécurité des outils, d'ajouter ou de supprimer des portes d'approbation par outil, et d'approuver ou de refuser les approbations en attente en votre nom — un agent IA peut accepter ses propres appels contrôlés. Test des politiques uniquement. Prend effet sans redémarrage.",
525
525
  "addon.secret_path.name": "Remplacement du chemin secret",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Beállítások felület sidecar portja",
520
520
  "advanced.sidecar_pin_port.help": "A 0 szabad portot választ az első indításkor, és megőrzi a későbbi újraindításokhoz; egy adott tartománybeli port rögzít egy előnyben részesített portot (ha foglalt, szabadra vált vissza).",
521
521
  "advanced.enable_dev_mode.label": "Fejlesztői mód",
522
- "advanced.enable_dev_mode.help": "⚠ Olyan rejtett eszközöket regisztrál, amelyek módosíthatják a beállításokat és lecserélhetik a futó szervert. Csak fejlesztési és tesztelési céllal.",
522
+ "advanced.enable_dev_mode.help": "⚠ Olyan rejtett eszközöket regisztrál, amelyek módosíthatják a beállításokat és lecserélhetik a futó szervert. Emellett megkerülhet bizonyos entitásláthatósági vagy egyéb korlátozásokat. Csak fejlesztési és tesztelési célra.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Fejlesztői eszközök biztonsági házirendjének elérése",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Amikor a fejlesztői mód be van van kapcsolva, lehetővé teszi a fejlesztői eszközök számára az eszközök biztonsági házirendjeinek átírását, eszközönkénti jóváhagyási korlátok hozzáadását vagy eltávolítását, valamint a függőben lévő jóváhagyások jóváhagyását vagy elutasítását az Ön nevében – egy AI-ügynök elfogadhatja a saját korlátozott hívásait. Csak házirendek tesztelésére. Újraindítás nélkül érvénybe lép.",
525
525
  "addon.secret_path.name": "Titkos útvonal felülbírálása",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Porta del sidecar dell'interfaccia delle impostazioni",
520
520
  "advanced.sidecar_pin_port.help": "0 sceglie una porta libera al primo avvio e la mantiene per i riavvii successivi; una porta nell'intervallo fissa una porta preferita (passa a una libera se occupata).",
521
521
  "advanced.enable_dev_mode.label": "Modalità sviluppatore",
522
- "advanced.enable_dev_mode.help": "⚠ Registra strumenti nascosti in grado di modificare le impostazioni e sostituire il server in esecuzione. Solo per sviluppo e test.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registra strumenti nascosti che possono modificare le impostazioni e sostituire il server in esecuzione. Inoltre, potrebbe aggirare alcune limitazioni di visibilità delle entità o di altro tipo. Solo per sviluppo e test.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Accesso alle politiche di sicurezza degli strumenti per sviluppatori",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Mentre la modalità sviluppatore è attiva, consente agli strumenti per sviluppatori di riscrivere le politiche di sicurezza degli strumenti, aggiungere o rimuovere gate di approvazione per strumento e approvare o negare approvazioni in sospeso per tuo conto — un agente IA può accettare le proprie chiamate con gate. Solo per il test delle politiche. Ha effetto senza riavvio.",
525
525
  "addon.secret_path.name": "Percorso segreto personalizzato",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "설정 UI 사이드카 포트",
520
520
  "advanced.sidecar_pin_port.help": "0은 첫 시작 시 빈 포트를 선택하고 이후 재시작 시 유지합니다. 범위 내의 포트는 선호하는 포트를 고정합니다(사용 중인 경우 빈 포트로 대체됨).",
521
521
  "advanced.enable_dev_mode.label": "개발자 모드",
522
- "advanced.enable_dev_mode.help": "⚠ 설정을 변경하고 실행 중인 서버를 교체할 수 있는 숨겨진 도구를 등록합니다. 개발 및 테스트 전용입니다.",
522
+ "advanced.enable_dev_mode.help": "⚠ 설정을 변경하고 실행 중인 서버를 교체할 수 있는 숨겨진 도구를 등록합니다. 또한 일부 엔티티 가시성이나 기타 제한을 우회할 수 있습니다. 개발 및 테스트 용도로만 사용하세요.",
523
523
  "advanced.dev_tools_security_policy_access.label": "개발자 도구의 보안 정책 접근",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ 개발자 모드가 켜져 있는 동안, 개발자 도구가 도구 보안 정책을 다시 쓰고 도구별 승인 게이트를 추가하거나 제거하며 대기 중인 승인을 사용자 대신 승인하거나 거부할 수 있게 합니다. AI 에이전트가 자기 자신의 게이팅된 호출을 승인할 수 있다는 뜻입니다. 정책 테스트 용도로만 사용하세요. 다시 시작하지 않아도 적용됩니다.",
525
525
  "addon.secret_path.name": "비밀 경로 재정의",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Instellingen UI sidecar-poort",
520
520
  "advanced.sidecar_pin_port.help": "0 kiest een vrije poort bij de eerste start en behoudt deze voor latere herstarts; een poort in het bereik zet een voorkeurspoort vast (valt terug op een vrije poort als deze bezet is).",
521
521
  "advanced.enable_dev_mode.label": "Ontwikkelaarsmodus",
522
- "advanced.enable_dev_mode.help": "⚠ Registreert verborgen tools die instellingen kunnen wijzigen en de draaiende server kunnen vervangen. Alleen voor ontwikkeling en testen.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registreert verborgen tools die instellingen kunnen wijzigen en de actieve server kunnen vervangen. Het kan ook sommige entiteitszichtbaarheid of andere beperkingen omzeilen. Alleen voor ontwikkeling en testen.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Toegang tot beveiligingsbeleid ontwikkelaarstools",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Terwijl de ontwikkelaarsmodus is ingeschakeld, laten de ontwikkelaarstools het beveiligingsbeleid van tools herschrijven, per-tool goedkeuringspoorten toevoegen of verwijderen, en openstaande goedkeuringen namens jou goedkeuren of weigeren — een AI-agent kan zijn eigen afgeschermde oproepen accepteren. Alleen voor beleidstesten. Wordt van kracht zonder herstart.",
525
525
  "addon.secret_path.name": "Overschrijving van geheim pad",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Port sidecar interfejsu ustawień",
520
520
  "advanced.sidecar_pin_port.help": "Wartość 0 wybiera wolny port przy pierwszym uruchomieniu i zachowuje go na kolejne restarty; port z podanego zakresu przypisuje preferowany port (w razie zajętości następuje powrót do wolnego portu).",
521
521
  "advanced.enable_dev_mode.label": "Tryb dewelopera",
522
- "advanced.enable_dev_mode.help": "⚠ Rejestruje ukryte narzędzia, które mogą zmieniać ustawienia i zastępować działający serwer. Wyłącznie do celów programistycznych i testowych.",
522
+ "advanced.enable_dev_mode.help": "⚠ Rejestruje ukryte narzędzia, które mogą zmieniać ustawienia i zastępować działający serwer. Może również omijać niektóre ograniczenia widoczności encji lub inne ograniczenia. Wyłącznie do celów programistycznych i testowych.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Dostęp do zasad bezpieczeństwa narzędzi deweloperskich",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Gdy tryb dewelopera jest włączony, umożliwia narzędziom deweloperskim przepisywanie zasad bezpieczeństwa narzędzi, dodawanie lub usuwanie bramek zatwierdzających dla poszczególnych narzędzi oraz zatwierdzanie lub odrzucanie oczekujących zatwierdzeń w Twoim imieniu — agent AI może akceptować własne wywołania z bramkami. Tylko do testowania zasad. Wchodzi w życie bez ponownego uruchomienia.",
525
525
  "addon.secret_path.name": "Nadpisanie tajnej ścieżki",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Порт sidecar интерфейса настроек",
520
520
  "advanced.sidecar_pin_port.help": "0 выбирает свободный порт при первом запуске и сохраняет его для последующих перезапусков; порт из указанного диапазона закрепляет предпочитаемый порт (при занятости происходит возврат к свободному).",
521
521
  "advanced.enable_dev_mode.label": "Режим разработчика",
522
- "advanced.enable_dev_mode.help": "⚠ Регистрирует скрытые инструменты, которые могут изменять настройки и заменять работающий сервер. Только для разработки и тестирования.",
522
+ "advanced.enable_dev_mode.help": "⚠ Регистрирует скрытые инструменты, которые могут изменять настройки и заменять запущенный сервер. Это также может обходить некоторые ограничения видимости сущностей и другие ограничения. Только для разработки и тестирования.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Доступ инструментов разработчика к политикам безопасности",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ Пока включен режим разработчика, позволяет инструментам разработчика переписывать политики безопасности инструментов, добавлять или удалять шлюзы одобрения для каждого инструмента, а также одобрять или отклонять ожидающие одобрения от вашего имени — ИИ-агент может принимать свои собственные вызовы, требующие одобрения. Только для тестирования политик. Вступает в силу без перезапуска.",
525
525
  "addon.secret_path.name": "Переопределение секретного пути",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "Inställnings-UI sidovagnsport",
520
520
  "advanced.sidecar_pin_port.help": "0 väljer en ledig port vid första start och behåller den för senare omstarter; en port i intervallet låser fast en föredragen port (återgår till en ledig om den är upptagen).",
521
521
  "advanced.enable_dev_mode.label": "Utvecklarläge",
522
- "advanced.enable_dev_mode.help": "⚠ Registrerar dolda verktyg som kan ändra inställningar och ersätta den körande servern. Endast för utveckling och testning.",
522
+ "advanced.enable_dev_mode.help": "⚠ Registrerar dolda verktyg som kan ändra inställningar och ersätta den körande servern. Det kan också kringgå vissa begränsningar för entitetssynlighet eller annat. Endast för utveckling och testning.",
523
523
  "advanced.dev_tools_security_policy_access.label": "Åtkomst till säkerhetspolicy för utvecklarverktyg",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ När utvecklarläget är aktiverat låter det utvecklarverktygen skriva om verktygens säkerhetspolicyer, lägga till eller ta bort godkännandegrindar per verktyg, och godkänna eller neka väntande godkännanden å dina vägnar – en AI-agent kan acceptera sina egna grindade anrop. Endast för policytestning. Träder i kraft utan omstart.",
525
525
  "addon.secret_path.name": "Åsidosättning av hemlig sökväg",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "设置界面旁路服务端口",
520
520
  "advanced.sidecar_pin_port.help": "0 会在首次启动时选择一个空闲端口并在后续重启中保留;范围内的端口会固定一个首选端口(若被占用则回退到空闲端口)。",
521
521
  "advanced.enable_dev_mode.label": "开发者模式",
522
- "advanced.enable_dev_mode.help": "⚠ 注册可更改设置并替换运行中服务器的隐藏工具。仅限开发和测试使用。",
522
+ "advanced.enable_dev_mode.help": "⚠ 注册可更改设置并替换运行中服务器的隐藏工具。它还可能会绕过某些实体可见性或其他限制。仅供开发和测试使用。",
523
523
  "advanced.dev_tools_security_policy_access.label": "开发者工具安全策略访问",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ 在开发者模式开启时,允许开发者工具重写工具安全策略、添加或移除每个工具的审批门,并代表您批准或拒绝待处理的审批——AI 代理可以接受其自己的受门控调用。仅用于策略测试。无需重启即可生效。",
525
525
  "addon.secret_path.name": "密钥路径覆盖",
@@ -519,7 +519,7 @@
519
519
  "advanced.sidecar_pin_port.label": "設定 UI sidecar 連接埠",
520
520
  "advanced.sidecar_pin_port.help": "0 會在首次啟動時挑選一個可用連接埠並保留給後續重新啟動使用;範圍內的連接埠會釘選偏好的連接埠(若已被佔用則會改用可用連接埠)。",
521
521
  "advanced.enable_dev_mode.label": "開發者模式",
522
- "advanced.enable_dev_mode.help": "⚠ 註冊可變更設定並取代執行中伺服器的隱藏工具。僅限開發與測試使用。",
522
+ "advanced.enable_dev_mode.help": "⚠ 註冊可變更設定並取代執行中伺服器的隱藏工具。它也可能會繞過某些實體可見性或其他限制。僅限開發與測試使用。",
523
523
  "advanced.dev_tools_security_policy_access.label": "開發者工具安全性策略存取權",
524
524
  "advanced.dev_tools_security_policy_access.help": "⚠ 當開發者模式開啟時,允許開發者工具重寫工具安全性策略、新增或移除每個工具的批准閘道,以及代表您批准或拒絕待處理的批准——AI 代理程式可以接受其自己的受閘道保護的呼叫。僅限策略測試。無需重新啟動即可生效。",
525
525
  "addon.secret_path.name": "密鑰路徑覆寫",
@@ -734,10 +734,17 @@
734
734
  #panel-tool-security-policies > h2 {
735
735
  font-size: 1.125rem; font-weight: 500; margin-bottom: 8px;
736
736
  }
737
- .policy-rule-card {
737
+ .policy-rule-card, .policy-pending-card {
738
738
  background: var(--surface); border: var(--card-border); border-radius: 12px;
739
739
  padding: 14px 16px; margin: 8px 0;
740
740
  }
741
+ .policy-pending-card strong { font-size: 0.9375rem; font-weight: 500; }
742
+ .policy-pending-args {
743
+ white-space: pre-wrap; overflow-wrap: anywhere; background: var(--bg);
744
+ padding: 8px; margin: 6px 0; border-radius: 6px; font-size: 0.8rem;
745
+ }
746
+ .policy-pending-expires { font-size: 0.75rem; color: var(--text-secondary); }
747
+ .policy-pending-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
741
748
  .policy-rule-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
742
749
  .policy-rule-header strong { font-size: 0.9375rem; font-weight: 500; }
743
750
  .policy-rule-remove {
@@ -479,6 +479,7 @@
479
479
  <section id="policy-pending" style="margin-bottom:16px">
480
480
  <h3 style="font-size:1rem;margin-bottom:8px" data-i18n="policies.pending.title">Pending approvals</h3>
481
481
  <div id="policy-pending-list" class="backup-empty" data-i18n="policies.pending.empty">No pending approvals.</div>
482
+ <div id="policy-pending-announcement" class="visually-hidden" role="status" aria-live="polite"></div>
482
483
  </section>
483
484
 
484
485
  <section id="policy-rules">
@@ -271,6 +271,29 @@ async function policyClearPin() {
271
271
  await policyRefreshPinStatus();
272
272
  }
273
273
 
274
+ // The list holds either approval cards or one status message; only a message
275
+ // belongs in the dashed, centred empty-state box. Also announces the message.
276
+ function policyShowPendingMessage(list, message, {emphasis = true, isError = false} = {}) {
277
+ delete list.dataset.pendingTokens;
278
+ list.classList.add('backup-empty');
279
+ list.innerHTML = emphasis ? '<em>' + escapeHtml(message) + '</em>' : escapeHtml(message);
280
+ policyAnnouncePending(message, {isError});
281
+ }
282
+
283
+ // The list is polled, so only a changed message is written here: a rewrite
284
+ // would make a screen reader repeat an unchanged outage. `repeat` is for a
285
+ // caller that knows the news is new although the text is the same.
286
+ function policyAnnouncePending(message, {isError = false, repeat = false} = {}) {
287
+ const region = document.getElementById('policy-pending-announcement');
288
+ if (!repeat && region.textContent === message) return;
289
+ setStatusAlert(region, isError);
290
+ region.textContent = message;
291
+ }
292
+
293
+ function policyPendingExpiry(entry) {
294
+ return t('policies.pending.expires', {time: entry.expires_at}, 'Expires: ' + entry.expires_at);
295
+ }
296
+
274
297
  async function policyLoadPending() {
275
298
  const list = document.getElementById('policy-pending-list');
276
299
  let resp;
@@ -279,11 +302,11 @@ async function policyLoadPending() {
279
302
  } catch (e) {
280
303
  // Surface the failure inline — silent return leaves the pending
281
304
  // list visibly frozen with no signal that polling broke.
282
- list.innerHTML = '<em style="color:var(--text-secondary)">' + escapeHtml(t(
305
+ policyShowPendingMessage(list, t(
283
306
  'policies.pending.offline',
284
307
  {message: e.message},
285
308
  'Lost contact with server (' + e.message + '). Retrying.'
286
- )) + '</em>';
309
+ ), {isError: true});
287
310
  return;
288
311
  }
289
312
  if (resp.status === 503) {
@@ -293,11 +316,11 @@ async function policyLoadPending() {
293
316
  // the server's 503 message rather than misleadingly claiming the
294
317
  // user disabled the feature.
295
318
  if (policyState.enabledKnown && !policyState.enabled) {
296
- list.innerHTML = '<em>' + escapeHtml(t(
319
+ policyShowPendingMessage(list, t(
297
320
  'policies.pending.disabled',
298
321
  {},
299
322
  'Tool Security Policies is turned off. Toggle it on (top of this tab or in Server Settings) and restart the App (add-on) to enable gating.'
300
- )) + '</em>';
323
+ ));
301
324
  } else {
302
325
  // Feature is on (or unknown) but the queue isn't reachable —
303
326
  // sidecar mode, startup ImportError, or transient outage.
@@ -310,7 +333,7 @@ async function policyLoadPending() {
310
333
  const body = await resp.json();
311
334
  if (body && body.error) msg = body.error;
312
335
  } catch (_e) { /* keep default */ }
313
- list.innerHTML = '<em>' + escapeHtml(msg) + '</em>';
336
+ policyShowPendingMessage(list, msg, {isError: true});
314
337
  }
315
338
  return;
316
339
  }
@@ -318,22 +341,50 @@ async function policyLoadPending() {
318
341
  const data = await resp.json();
319
342
  const pending = data.pending || [];
320
343
  if (pending.length === 0) {
321
- list.textContent = t('policies.pending.empty', {}, 'No pending approvals.');
344
+ policyShowPendingMessage(
345
+ list,
346
+ t('policies.pending.empty', {}, 'No pending approvals.'),
347
+ {emphasis: false}
348
+ );
349
+ return;
350
+ }
351
+ // Rebuilding unchanged cards would drop keyboard focus from Approve/Deny on
352
+ // every poll and reset a screen reader's cursor. A deadline can still be cut
353
+ // under an unchanged token, so that text is updated in place and announced:
354
+ // with focus held on a button, nothing else tells a screen reader.
355
+ const tokens = JSON.stringify(pending.map(p => p.token));
356
+ if (list.dataset.pendingTokens === tokens) {
357
+ const expiries = list.querySelectorAll('.policy-pending-expires');
358
+ const changed = [];
359
+ pending.forEach((p, i) => {
360
+ const text = policyPendingExpiry(p);
361
+ if (expiries[i].textContent === text) return;
362
+ expiries[i].textContent = text;
363
+ changed.push(p.tool_name + ': ' + text);
364
+ });
365
+ if (changed.length) policyAnnouncePending(changed.join(' '), {repeat: true});
322
366
  return;
323
367
  }
368
+ list.dataset.pendingTokens = tokens;
369
+ list.classList.remove('backup-empty');
370
+ policyAnnouncePending(t(
371
+ 'policies.pending.announcement',
372
+ {count: pending.length},
373
+ 'Pending approvals: ' + pending.length
374
+ ), {repeat: true});
324
375
  list.innerHTML = pending.map(p => (
325
- '<div data-pending-token="' + escapeHtml(p.token) + '" style="border:1px solid var(--border); padding:10px; margin:6px 0; border-radius:8px; background:var(--surface)">' +
376
+ '<div class="policy-pending-card" data-pending-token="' + escapeHtml(p.token) + '">' +
326
377
  '<strong>' + escapeHtml(p.tool_name) + '</strong>' +
327
- '<pre style="white-space:pre-wrap; background:var(--bg); padding:8px; margin:6px 0; border-radius:6px; font-size:0.8rem">' +
378
+ '<pre class="policy-pending-args">' +
328
379
  escapeHtml(JSON.stringify(p.args, null, 2)) + '</pre>' +
329
- '<small style="color:var(--text-secondary)">' + escapeHtml(t('policies.pending.expires', {time: p.expires_at}, 'Expires: ' + p.expires_at)) + '</small><br>' +
330
- '<div style="margin-top:8px; display:flex; gap:8px">' +
380
+ '<div class="policy-pending-expires">' + escapeHtml(policyPendingExpiry(p)) + '</div>' +
381
+ '<div class="policy-pending-actions">' +
331
382
  '<button class="restart-btn" data-policy-token="' + escapeHtml(p.token) + '" data-policy-action="approve">' + escapeHtml(t('actions.approve', {}, 'Approve')) + '</button>' +
332
383
  '<button class="danger-btn" data-policy-token="' + escapeHtml(p.token) + '" data-policy-action="deny">' + escapeHtml(t('actions.deny', {}, 'Deny')) + '</button>' +
333
384
  '</div></div>'
334
385
  )).join('');
335
- // Re-bind decision buttons each render (no event delegation needed —
336
- // pending list is small and re-rendered on every poll).
386
+ // Bind decision buttons each render (no event delegation needed — the
387
+ // pending list is small and rebuilt whenever the queue changes).
337
388
  list.querySelectorAll('button[data-policy-token]').forEach(btn => {
338
389
  btn.addEventListener('click', () =>
339
390
  policyDecide(btn.dataset.policyToken, btn.dataset.policyAction)
@@ -1,5 +1,5 @@
1
- // Auto-activate tab from ?tab=<name> query string (used by approval URLs
2
- // generated by the policy middleware: /settings?tab=tool-security-policies&token=...).
1
+ // Auto-activate tab from the query string; supports deep links of the form
2
+ // ?tab=<panel>&token=<approval token>.
3
3
  // If a &token=X is present and the target is the policy tab, scroll to
4
4
  // the matching pending entry once policyLoadPending() resolves.
5
5
  (function activateTabFromQuery() {
@@ -12,8 +12,8 @@
12
12
  activateTab(target);
13
13
  const token = params.get('token');
14
14
  if (token && target === 'tool-security-policies') {
15
- // policyLoadPending() runs inside activateTab; wait a tick then
16
- // scroll to the matching pending entry if it exists.
15
+ // policyLoadPending() runs inside activateTab; wait a fixed 500 ms,
16
+ // then scroll to the matching pending entry if it exists.
17
17
  setTimeout(() => {
18
18
  const row = document.querySelector('[data-pending-token="' + token + '"]');
19
19
  if (row && row.scrollIntoView) {