ha-mcp-dev 8.6.0.dev2879__tar.gz → 8.6.0.dev2881__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 (749) hide show
  1. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/PKG-INFO +1 -1
  2. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/pyproject.toml +1 -1
  3. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/pyproject.toml.orig +1 -1
  4. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/az.json +2 -2
  5. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/cs.json +2 -2
  6. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/de.json +2 -2
  7. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/eo.json +2 -2
  8. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/es.json +2 -2
  9. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/fr.json +2 -2
  10. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/it.json +2 -2
  11. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/ko.json +2 -2
  12. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/nl.json +2 -2
  13. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/pl.json +2 -2
  14. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/ru.json +2 -2
  15. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/sv.json +2 -2
  16. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/zh-Hans.json +2 -2
  17. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/zh-Hant.json +2 -2
  18. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/LICENSE +0 -0
  19. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/README.md +0 -0
  20. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/__init__.py +0 -0
  21. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/__main__.py +0 -0
  22. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_pypi_marker +0 -0
  23. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_rich_compat.py +0 -0
  24. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/__init__.py +0 -0
  25. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/LICENSE +0 -0
  26. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/MANIFEST.sha256 +0 -0
  27. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/REQUIRES.txt +0 -0
  28. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/VENDORED +0 -0
  29. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/__init__.py +0 -0
  30. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/_compat.py +0 -0
  31. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/_install_hints.py +0 -0
  32. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/_warnings.py +0 -0
  33. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/__init__.py +0 -0
  34. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/app.py +0 -0
  35. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/approval.py +0 -0
  36. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/choice.py +0 -0
  37. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/config.py +0 -0
  38. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/file_upload.py +0 -0
  39. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/form.py +0 -0
  40. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/apps/generative.py +0 -0
  41. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/__init__.py +0 -0
  42. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/__main__.py +0 -0
  43. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/apps_dev.py +0 -0
  44. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/auth.py +0 -0
  45. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/cimd.py +0 -0
  46. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/cli.py +0 -0
  47. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/client.py +0 -0
  48. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/__init__.py +0 -0
  49. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/authentication.py +0 -0
  50. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/command.py +0 -0
  51. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/configuration.py +0 -0
  52. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/credentials.py +0 -0
  53. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/horizon_client.py +0 -0
  54. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/output.py +0 -0
  55. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/deploy/state.py +0 -0
  56. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/discovery.py +0 -0
  57. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/generate.py +0 -0
  58. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/__init__.py +0 -0
  59. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/claude_code.py +0 -0
  60. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/claude_desktop.py +0 -0
  61. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/cursor.py +0 -0
  62. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/gemini_cli.py +0 -0
  63. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/goose.py +0 -0
  64. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/mcp_json.py +0 -0
  65. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/shared.py +0 -0
  66. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/install/stdio.py +0 -0
  67. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/cli/run.py +0 -0
  68. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/__init__.py +0 -0
  69. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/_sdk_context_shim.py +0 -0
  70. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/auth/__init__.py +0 -0
  71. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/auth/bearer.py +0 -0
  72. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/auth/client_credentials.py +0 -0
  73. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/auth/oauth.py +0 -0
  74. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/caching.py +0 -0
  75. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/client.py +0 -0
  76. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/dependencies.py +0 -0
  77. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/elicitation.py +0 -0
  78. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/extension_hooks.py +0 -0
  79. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/group.py +0 -0
  80. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/logging.py +0 -0
  81. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/messages.py +0 -0
  82. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/mixins/__init__.py +0 -0
  83. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/mixins/prompts.py +0 -0
  84. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/mixins/resources.py +0 -0
  85. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/mixins/tools.py +0 -0
  86. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/oauth_callback.py +0 -0
  87. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/progress.py +0 -0
  88. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/roots.py +0 -0
  89. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/sampling/__init__.py +0 -0
  90. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/__init__.py +0 -0
  91. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/anthropic.py +0 -0
  92. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/google_genai.py +0 -0
  93. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/openai.py +0 -0
  94. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/telemetry.py +0 -0
  95. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/__init__.py +0 -0
  96. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/base.py +0 -0
  97. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/config.py +0 -0
  98. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/http.py +0 -0
  99. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/inference.py +0 -0
  100. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/memory.py +0 -0
  101. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/sse.py +0 -0
  102. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/client/transports/stdio.py +0 -0
  103. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/README.md +0 -0
  104. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/README.md +0 -0
  105. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/__init__.py +0 -0
  106. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/bulk_tool_caller.py +0 -0
  107. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/example.py +0 -0
  108. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/README.md +0 -0
  109. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/__init__.py +0 -0
  110. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/component_manager.py +0 -0
  111. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/example.py +0 -0
  112. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/README.md +0 -0
  113. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/__init__.py +0 -0
  114. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/example.py +0 -0
  115. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/mcp_mixin.py +0 -0
  116. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/decorators.py +0 -0
  117. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/dependencies.py +0 -0
  118. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/exceptions.py +0 -0
  119. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/experimental/__init__.py +0 -0
  120. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/__init__.py +0 -0
  121. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/code_mode.py +0 -0
  122. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/mcp_config.py +0 -0
  123. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/prompts/__init__.py +0 -0
  124. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/prompts/base.py +0 -0
  125. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/prompts/function_prompt.py +0 -0
  126. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/py.typed +0 -0
  127. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/resources/__init__.py +0 -0
  128. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/resources/base.py +0 -0
  129. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/resources/function_resource.py +0 -0
  130. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/resources/security.py +0 -0
  131. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/resources/template.py +0 -0
  132. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/resources/types.py +0 -0
  133. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/__init__.py +0 -0
  134. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/__init__.py +0 -0
  135. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/auth.py +0 -0
  136. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/cimd.py +0 -0
  137. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/handlers/__init__.py +0 -0
  138. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/handlers/authorize.py +0 -0
  139. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/identity_assertion.py +0 -0
  140. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/jwt_issuer.py +0 -0
  141. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/middleware.py +0 -0
  142. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/__init__.py +0 -0
  143. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/consent.py +0 -0
  144. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/models.py +0 -0
  145. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/proxy.py +0 -0
  146. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/ui.py +0 -0
  147. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/upstream.py +0 -0
  148. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/oidc_proxy.py +0 -0
  149. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/__init__.py +0 -0
  150. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/auth0.py +0 -0
  151. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/aws.py +0 -0
  152. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/azure.py +0 -0
  153. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/clerk.py +0 -0
  154. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/debug.py +0 -0
  155. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/descope.py +0 -0
  156. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/discord.py +0 -0
  157. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/github.py +0 -0
  158. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/google.py +0 -0
  159. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/huggingface.py +0 -0
  160. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/in_memory.py +0 -0
  161. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/introspection.py +0 -0
  162. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/jwt.py +0 -0
  163. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/keycloak.py +0 -0
  164. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/oci.py +0 -0
  165. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/propelauth.py +0 -0
  166. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/scalekit.py +0 -0
  167. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/supabase.py +0 -0
  168. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/workos.py +0 -0
  169. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/redirect_validation.py +0 -0
  170. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/auth/ssrf.py +0 -0
  171. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/caching.py +0 -0
  172. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/completions.py +0 -0
  173. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/context.py +0 -0
  174. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/dependencies.py +0 -0
  175. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/elicitation.py +0 -0
  176. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/event_store.py +0 -0
  177. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/extensions.py +0 -0
  178. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/http.py +0 -0
  179. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/lifespan.py +0 -0
  180. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/low_level.py +0 -0
  181. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/__init__.py +0 -0
  182. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/authorization.py +0 -0
  183. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/caching.py +0 -0
  184. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/dereference.py +0 -0
  185. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/error_handling.py +0 -0
  186. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/logging.py +0 -0
  187. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/middleware.py +0 -0
  188. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/ping.py +0 -0
  189. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/rate_limiting.py +0 -0
  190. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/response_limiting.py +0 -0
  191. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/timing.py +0 -0
  192. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/middleware/tool_injection.py +0 -0
  193. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/mixins/__init__.py +0 -0
  194. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/mixins/lifespan.py +0 -0
  195. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/mixins/mcp_operations.py +0 -0
  196. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/mixins/transport.py +0 -0
  197. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/__init__.py +0 -0
  198. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/addressing.py +0 -0
  199. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/aggregate.py +0 -0
  200. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/base.py +0 -0
  201. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/fastmcp_provider.py +0 -0
  202. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/filesystem.py +0 -0
  203. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/filesystem_discovery.py +0 -0
  204. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/__init__.py +0 -0
  205. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/__init__.py +0 -0
  206. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/prompts.py +0 -0
  207. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/resources.py +0 -0
  208. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/tools.py +0 -0
  209. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/local_provider.py +0 -0
  210. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/README.md +0 -0
  211. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/__init__.py +0 -0
  212. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/components.py +0 -0
  213. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/provider.py +0 -0
  214. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/routing.py +0 -0
  215. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/prefab_payload.py +0 -0
  216. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/prefab_synthesis.py +0 -0
  217. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/proxy.py +0 -0
  218. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/__init__.py +0 -0
  219. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/_common.py +0 -0
  220. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/claude_provider.py +0 -0
  221. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/directory_provider.py +0 -0
  222. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/skill_provider.py +0 -0
  223. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/vendor_providers.py +0 -0
  224. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/providers/wrapped_provider.py +0 -0
  225. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/server.py +0 -0
  226. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/session_scoped_event_store.py +0 -0
  227. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/sessions.py +0 -0
  228. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/telemetry.py +0 -0
  229. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/__init__.py +0 -0
  230. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/catalog.py +0 -0
  231. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/namespace.py +0 -0
  232. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/prompts_as_tools.py +0 -0
  233. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/resources_as_tools.py +0 -0
  234. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/__init__.py +0 -0
  235. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/base.py +0 -0
  236. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/bm25.py +0 -0
  237. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/regex.py +0 -0
  238. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/tool_transform.py +0 -0
  239. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/version_filter.py +0 -0
  240. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/server/transforms/visibility.py +0 -0
  241. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/settings.py +0 -0
  242. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/telemetry.py +0 -0
  243. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/tools/__init__.py +0 -0
  244. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/tools/base.py +0 -0
  245. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/tools/function_parsing.py +0 -0
  246. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/tools/function_tool.py +0 -0
  247. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/tools/tool_transform.py +0 -0
  248. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/types.py +0 -0
  249. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/__init__.py +0 -0
  250. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/asgi_transport.py +0 -0
  251. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/async_utils.py +0 -0
  252. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/auth.py +0 -0
  253. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/authorization.py +0 -0
  254. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/cli.py +0 -0
  255. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/components.py +0 -0
  256. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/docstring_parsing.py +0 -0
  257. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/exceptions.py +0 -0
  258. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/http.py +0 -0
  259. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/inspect.py +0 -0
  260. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/json_schema.py +0 -0
  261. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/json_schema_type.py +0 -0
  262. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/lifespan.py +0 -0
  263. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/logging.py +0 -0
  264. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/__init__.py +0 -0
  265. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/__init__.py +0 -0
  266. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/__init__.py +0 -0
  267. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/base.py +0 -0
  268. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/uv.py +0 -0
  269. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/mcp_server_config.py +0 -0
  270. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/schema.json +0 -0
  271. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/__init__.py +0 -0
  272. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/base.py +0 -0
  273. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/filesystem.py +0 -0
  274. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/mime.py +0 -0
  275. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/README.md +0 -0
  276. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/__init__.py +0 -0
  277. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/director.py +0 -0
  278. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/formatters.py +0 -0
  279. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/json_schema_converter.py +0 -0
  280. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/models.py +0 -0
  281. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/parser.py +0 -0
  282. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/schemas.py +0 -0
  283. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/pagination.py +0 -0
  284. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/prefab.py +0 -0
  285. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/skills.py +0 -0
  286. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/tasks.py +0 -0
  287. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/tests.py +0 -0
  288. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/timeout.py +0 -0
  289. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/token_cache.py +0 -0
  290. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/types.py +0 -0
  291. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/ui.py +0 -0
  292. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/version_check.py +0 -0
  293. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/fastmcp/utilities/versions.py +0 -0
  294. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/LICENSE +0 -0
  295. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/MANIFEST.sha256 +0 -0
  296. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/REQUIRES.txt +0 -0
  297. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/VENDORED +0 -0
  298. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/__init__.py +0 -0
  299. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/cli/__init__.py +0 -0
  300. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/cli/claude.py +0 -0
  301. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/cli/cli.py +0 -0
  302. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/__init__.py +0 -0
  303. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/__main__.py +0 -0
  304. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/_input_required.py +0 -0
  305. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/_memory.py +0 -0
  306. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/_probe.py +0 -0
  307. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/_transport.py +0 -0
  308. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/__init__.py +0 -0
  309. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/exceptions.py +0 -0
  310. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/extensions/__init__.py +0 -0
  311. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/extensions/client_credentials.py +0 -0
  312. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/extensions/identity_assertion.py +0 -0
  313. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/oauth2.py +0 -0
  314. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/auth/utils.py +0 -0
  315. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/caching.py +0 -0
  316. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/client.py +0 -0
  317. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/context.py +0 -0
  318. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/extension.py +0 -0
  319. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/session.py +0 -0
  320. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/session_group.py +0 -0
  321. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/sse.py +0 -0
  322. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/stdio.py +0 -0
  323. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/streamable_http.py +0 -0
  324. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/client/subscriptions.py +0 -0
  325. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/os/__init__.py +0 -0
  326. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/os/posix/__init__.py +0 -0
  327. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/os/posix/utilities.py +0 -0
  328. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/os/win32/__init__.py +0 -0
  329. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/os/win32/utilities.py +0 -0
  330. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/py.typed +0 -0
  331. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/__init__.py +0 -0
  332. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/__main__.py +0 -0
  333. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/_otel.py +0 -0
  334. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/_streamable_http_modern.py +0 -0
  335. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/apps.py +0 -0
  336. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/__init__.py +0 -0
  337. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/errors.py +0 -0
  338. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/handlers/__init__.py +0 -0
  339. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/handlers/authorize.py +0 -0
  340. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/handlers/metadata.py +0 -0
  341. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/handlers/register.py +0 -0
  342. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/handlers/revoke.py +0 -0
  343. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/handlers/token.py +0 -0
  344. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/json_response.py +0 -0
  345. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/middleware/__init__.py +0 -0
  346. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/middleware/auth_context.py +0 -0
  347. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/middleware/bearer_auth.py +0 -0
  348. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/middleware/client_auth.py +0 -0
  349. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/provider.py +0 -0
  350. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/routes.py +0 -0
  351. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/auth/settings.py +0 -0
  352. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/caching.py +0 -0
  353. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/connection.py +0 -0
  354. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/context.py +0 -0
  355. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/elicitation.py +0 -0
  356. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/extension.py +0 -0
  357. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/fastmcp.py +0 -0
  358. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/lowlevel/__init__.py +0 -0
  359. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/lowlevel/helper_types.py +0 -0
  360. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/lowlevel/server.py +0 -0
  361. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/__init__.py +0 -0
  362. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/context.py +0 -0
  363. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/exceptions.py +0 -0
  364. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/__init__.py +0 -0
  365. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/base.py +0 -0
  366. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/manager.py +0 -0
  367. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/resolve.py +0 -0
  368. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/__init__.py +0 -0
  369. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/base.py +0 -0
  370. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/resource_manager.py +0 -0
  371. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/templates.py +0 -0
  372. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/types.py +0 -0
  373. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/server.py +0 -0
  374. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/__init__.py +0 -0
  375. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/base.py +0 -0
  376. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/tool_manager.py +0 -0
  377. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/__init__.py +0 -0
  378. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/context_injection.py +0 -0
  379. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/func_metadata.py +0 -0
  380. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/logging.py +0 -0
  381. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/types.py +0 -0
  382. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/models.py +0 -0
  383. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/request_state.py +0 -0
  384. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/runner.py +0 -0
  385. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/session.py +0 -0
  386. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/sse.py +0 -0
  387. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/stdio.py +0 -0
  388. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/streamable_http.py +0 -0
  389. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/streamable_http_manager.py +0 -0
  390. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/subscriptions.py +0 -0
  391. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/transport_security.py +0 -0
  392. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/server/validation.py +0 -0
  393. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/__init__.py +0 -0
  394. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/_callable_inspection.py +0 -0
  395. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/_compat.py +0 -0
  396. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/_context_streams.py +0 -0
  397. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/_httpx_utils.py +0 -0
  398. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/_otel.py +0 -0
  399. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/_stream_protocols.py +0 -0
  400. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/auth.py +0 -0
  401. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/auth_utils.py +0 -0
  402. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/context.py +0 -0
  403. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/direct_dispatcher.py +0 -0
  404. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/dispatcher.py +0 -0
  405. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/exceptions.py +0 -0
  406. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/extension.py +0 -0
  407. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/inbound.py +0 -0
  408. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/jsonrpc_dispatcher.py +0 -0
  409. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/memory.py +0 -0
  410. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/message.py +0 -0
  411. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/metadata_utils.py +0 -0
  412. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/path_security.py +0 -0
  413. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/peer.py +0 -0
  414. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/subscriptions.py +0 -0
  415. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/tool_name_validation.py +0 -0
  416. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/transport_context.py +0 -0
  417. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/shared/uri_template.py +0 -0
  418. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/types/__init__.py +0 -0
  419. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/types/jsonrpc.py +0 -0
  420. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/types/methods.py +0 -0
  421. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp/types/version.py +0 -0
  422. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/LICENSE +0 -0
  423. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/MANIFEST.sha256 +0 -0
  424. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/REQUIRES.txt +0 -0
  425. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/VENDORED +0 -0
  426. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/__init__.py +0 -0
  427. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/_types.py +0 -0
  428. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/_v2025_11_25/__init__.py +0 -0
  429. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/_v2026_07_28/__init__.py +0 -0
  430. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/_wire_base.py +0 -0
  431. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/jsonrpc.py +0 -0
  432. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/methods.py +0 -0
  433. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/py.typed +0 -0
  434. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/mcp_types/version.py +0 -0
  435. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/requirements.txt +0 -0
  436. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/LICENSE +0 -0
  437. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256 +0 -0
  438. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/VENDORED +0 -0
  439. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/__init__.py +0 -0
  440. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/__main__.py +0 -0
  441. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/asyncio/__init__.py +0 -0
  442. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/asyncio/client.py +0 -0
  443. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/asyncio/connection.py +0 -0
  444. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/asyncio/messages.py +0 -0
  445. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/asyncio/router.py +0 -0
  446. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/asyncio/server.py +0 -0
  447. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/auth.py +0 -0
  448. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/cli.py +0 -0
  449. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/client.py +0 -0
  450. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/connection.py +0 -0
  451. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/datastructures.py +0 -0
  452. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/exceptions.py +0 -0
  453. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/extensions/__init__.py +0 -0
  454. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/extensions/base.py +0 -0
  455. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/extensions/permessage_deflate.py +0 -0
  456. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/frames.py +0 -0
  457. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/headers.py +0 -0
  458. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/http11.py +0 -0
  459. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/imports.py +0 -0
  460. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/__init__.py +0 -0
  461. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/auth.py +0 -0
  462. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/client.py +0 -0
  463. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/exceptions.py +0 -0
  464. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/framing.py +0 -0
  465. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/handshake.py +0 -0
  466. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/http.py +0 -0
  467. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/protocol.py +0 -0
  468. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/legacy/server.py +0 -0
  469. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/protocol.py +0 -0
  470. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/proxy.py +0 -0
  471. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/py.typed +0 -0
  472. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/server.py +0 -0
  473. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/streams.py +0 -0
  474. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/__init__.py +0 -0
  475. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/client.py +0 -0
  476. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/connection.py +0 -0
  477. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/messages.py +0 -0
  478. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/router.py +0 -0
  479. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/server.py +0 -0
  480. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/sync/utils.py +0 -0
  481. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/__init__.py +0 -0
  482. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/client.py +0 -0
  483. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/connection.py +0 -0
  484. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/messages.py +0 -0
  485. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/router.py +0 -0
  486. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/server.py +0 -0
  487. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/trio/utils.py +0 -0
  488. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/typing.py +0 -0
  489. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/uri.py +0 -0
  490. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/utils.py +0 -0
  491. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_vendor/websockets/version.py +0 -0
  492. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/_version.py +0 -0
  493. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/auth/__init__.py +0 -0
  494. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/auth/consent_form.py +0 -0
  495. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/auth/oidc_compat.py +0 -0
  496. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/auth/provider.py +0 -0
  497. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/backup_manager.py +0 -0
  498. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/browser_landing.py +0 -0
  499. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/client/__init__.py +0 -0
  500. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/client/admin_routes.py +0 -0
  501. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/client/rest_client.py +0 -0
  502. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/client/supervisor_client.py +0 -0
  503. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/client/websocket_client.py +0 -0
  504. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/client/websocket_listener.py +0 -0
  505. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/config.py +0 -0
  506. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/config_backup.py +0 -0
  507. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/config_overrides.py +0 -0
  508. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/config_registry.py +0 -0
  509. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/config_settings.py +0 -0
  510. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
  511. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
  512. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
  513. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
  514. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
  515. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
  516. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/errors.py +0 -0
  517. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/ha_request_queue.py +0 -0
  518. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/hacs_auto_refresh.py +0 -0
  519. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/http_transport.py +0 -0
  520. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/llm_exposure.py +0 -0
  521. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/log_filters.py +0 -0
  522. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/__init__.py +0 -0
  523. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/approval_queue.py +0 -0
  524. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/decision_pin.py +0 -0
  525. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/decisions.py +0 -0
  526. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/editing.py +0 -0
  527. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/evaluator.py +0 -0
  528. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/events.py +0 -0
  529. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/handlers.py +0 -0
  530. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/middleware.py +0 -0
  531. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/model.py +0 -0
  532. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/mrtr.py +0 -0
  533. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/persistence.py +0 -0
  534. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/server_channels.py +0 -0
  535. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/policy/value_sources.py +0 -0
  536. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/py.typed +0 -0
  537. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/read_only.py +0 -0
  538. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/redaction.py +0 -0
  539. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/renamed_tools.py +0 -0
  540. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
  541. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
  542. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
  543. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-actions.md +0 -0
  544. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/backups.md +0 -0
  545. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
  546. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
  547. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
  548. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
  549. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
  550. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
  551. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
  552. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
  553. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
  554. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
  555. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/triggers-and-conditions.md +0 -0
  556. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
  557. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/server.py +0 -0
  558. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/server_lifespan.py +0 -0
  559. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/server_tool_text.py +0 -0
  560. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/__init__.py +0 -0
  561. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
  562. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
  563. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
  564. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
  565. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
  566. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
  567. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_i18n.py +0 -0
  568. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_locale_policy.py +0 -0
  569. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_persistence.py +0 -0
  570. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
  571. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_theme.py +0 -0
  572. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
  573. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/README.md +0 -0
  574. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/en.json +0 -0
  575. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/locales/tlh.json +0 -0
  576. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings.css +0 -0
  577. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings.html +0 -0
  578. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/01_i18n_state.js +0 -0
  579. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/02_tools_restart.js +0 -0
  580. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/03_render_save.js +0 -0
  581. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/04_backups.js +0 -0
  582. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/05_feature_flags.js +0 -0
  583. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/06_policy_cards.js +0 -0
  584. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/07_policy_actions.js +0 -0
  585. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/08_advanced.js +0 -0
  586. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/settings_ui/settings_js/09_prefs_visibility.js +0 -0
  587. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/smoke_test.py +0 -0
  588. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
  589. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/strict_bps.py +0 -0
  590. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tool_dispatch.py +0 -0
  591. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/__init__.py +0 -0
  592. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/area_messages.py +0 -0
  593. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/auto_backup.py +0 -0
  594. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/backup.py +0 -0
  595. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/best_practice_checker.py +0 -0
  596. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/best_practice_result.py +0 -0
  597. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/best_practice_variables.py +0 -0
  598. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/blueprint_sources.py +0 -0
  599. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/blueprint_substitute.py +0 -0
  600. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/blueprint_write.py +0 -0
  601. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/bug_report_templates.py +0 -0
  602. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/bulk_selector.py +0 -0
  603. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/coercion.py +0 -0
  604. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_api.py +0 -0
  605. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_config_entries.py +0 -0
  606. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_config_reads.py +0 -0
  607. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_dashboard_edit.py +0 -0
  608. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_devices.py +0 -0
  609. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_helper_collections.py +0 -0
  610. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_registries.py +0 -0
  611. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
  612. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_flow.py +0 -0
  613. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_flow_form.py +0 -0
  614. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_flow_menu.py +0 -0
  615. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_flow_walker.py +0 -0
  616. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_identity.py +0 -0
  617. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_reconfigure.py +0 -0
  618. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_entry_reload_watch.py +0 -0
  619. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/__init__.py +0 -0
  620. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/create.py +0 -0
  621. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/flow.py +0 -0
  622. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/listing.py +0 -0
  623. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/registry.py +0 -0
  624. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/schemas.py +0 -0
  625. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/typed_config.py +0 -0
  626. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/update.py +0 -0
  627. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_helpers/validation.py +0 -0
  628. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/config_write_helpers.py +0 -0
  629. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/dashboard_edit_errors.py +0 -0
  630. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/dashboard_list_checks.py +0 -0
  631. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/device_control.py +0 -0
  632. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/device_enrichment.py +0 -0
  633. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/diagnostics_helpers.py +0 -0
  634. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/entity_param_parsing.py +0 -0
  635. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/entity_registration.py +0 -0
  636. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/entity_update_fields.py +0 -0
  637. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/error_log_parsing.py +0 -0
  638. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/hacs_registration.py +0 -0
  639. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/helpers.py +0 -0
  640. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/integration_reconfigure.py +0 -0
  641. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/log_common.py +0 -0
  642. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/log_sources.py +0 -0
  643. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/log_sources_fault.py +0 -0
  644. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/log_sources_supervisor.py +0 -0
  645. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/radio/__init__.py +0 -0
  646. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/radio/base.py +0 -0
  647. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/radio/matter.py +0 -0
  648. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/radio/thread.py +0 -0
  649. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/radio/zigbee.py +0 -0
  650. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/radio/zwave.py +0 -0
  651. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/reference_validator.py +0 -0
  652. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/registry.py +0 -0
  653. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/renamed_tool_middleware.py +0 -0
  654. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/response_helpers.py +0 -0
  655. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/scene_discovery.py +0 -0
  656. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/__init__.py +0 -0
  657. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/base.py +0 -0
  658. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/component.py +0 -0
  659. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/entities.py +0 -0
  660. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/legacy.py +0 -0
  661. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/modes.py +0 -0
  662. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/overview.py +0 -0
  663. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/response.py +0 -0
  664. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/search/state.py +0 -0
  665. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
  666. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_base.py +0 -0
  667. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_config.py +0 -0
  668. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
  669. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
  670. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
  671. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_graph.py +0 -0
  672. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
  673. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
  674. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
  675. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
  676. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_addons.py +0 -0
  677. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_areas.py +0 -0
  678. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_assist_pipeline.py +0 -0
  679. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_blueprints.py +0 -0
  680. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_bug_report.py +0 -0
  681. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_calendar.py +0 -0
  682. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_camera.py +0 -0
  683. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_categories.py +0 -0
  684. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_code.py +0 -0
  685. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_config_automations.py +0 -0
  686. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
  687. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
  688. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
  689. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
  690. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
  691. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_dev.py +0 -0
  692. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_energy.py +0 -0
  693. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_entities.py +0 -0
  694. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_filesystem.py +0 -0
  695. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_groups.py +0 -0
  696. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_hacs.py +0 -0
  697. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_history.py +0 -0
  698. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_integrations.py +0 -0
  699. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_labels.py +0 -0
  700. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_logs.py +0 -0
  701. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_radio.py +0 -0
  702. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_registry.py +0 -0
  703. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_resources.py +0 -0
  704. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_search.py +0 -0
  705. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_security_policy.py +0 -0
  706. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_service.py +0 -0
  707. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_services.py +0 -0
  708. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_system.py +0 -0
  709. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_themes.py +0 -0
  710. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_todo.py +0 -0
  711. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_traces.py +0 -0
  712. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_updates.py +0 -0
  713. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_utility.py +0 -0
  714. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
  715. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
  716. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_yaml_read.py +0 -0
  717. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/tools_zones.py +0 -0
  718. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/util_helpers.py +0 -0
  719. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/validation_middleware.py +0 -0
  720. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/tools/ws_waiters.py +0 -0
  721. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transforms/__init__.py +0 -0
  722. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transforms/categorized_search.py +0 -0
  723. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transforms/component_helpers.py +0 -0
  724. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transforms/component_search.py +0 -0
  725. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
  726. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transforms/write_tool_note.py +0 -0
  727. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/transport_security.py +0 -0
  728. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/update_check.py +0 -0
  729. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/__init__.py +0 -0
  730. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/config_hash.py +0 -0
  731. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/config_write_lock.py +0 -0
  732. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/dashboard_patch.py +0 -0
  733. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/data_paths.py +0 -0
  734. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/device_registry_semantics.py +0 -0
  735. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/domain_handlers.py +0 -0
  736. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/entity_membership.py +0 -0
  737. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/fuzzy_search.py +0 -0
  738. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
  739. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/mcp_client_host.py +0 -0
  740. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/operation_manager.py +0 -0
  741. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/python_sandbox.py +0 -0
  742. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/registry_update_lock.py +0 -0
  743. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/skill_loader.py +0 -0
  744. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/utils/usage_logger.py +0 -0
  745. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/visibility/__init__.py +0 -0
  746. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/visibility/enforcement.py +0 -0
  747. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/visibility/model.py +0 -0
  748. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/src/ha_mcp/visibility/persistence.py +0 -0
  749. {ha_mcp_dev-8.6.0.dev2879 → ha_mcp_dev-8.6.0.dev2881}/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: 8.6.0.dev2879
3
+ Version: 8.6.0.dev2881
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 = "8.6.0.dev2879"
7
+ version = "8.6.0.dev2881"
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 = "8.6.0.dev2879"
7
+ version = "8.6.0.dev2881"
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
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Alət axtarışını aktivləşdir",
133
133
  "features.enable_tool_search.help": "Tam alət kataloqunu axtarış əsasında alət tapma ilə əvəz edir. Başlanğıc kontekst həcmini təxminən 90% azaldaraq təqribən 5K tokenə endirir. ⚠️ Öz daxili alət axtarışı / sonradan yüklənən alətləri olan müştərilərdə (claude.ai, Claude Desktop, Claude Code) bunu AKTİVLƏŞDİRMƏYİN — iki axtarış qatı ziddiyyət yaradır və həmin müştərinin daxili alət axtarışı daha yaxşı seçimdir; bunu deaktiv saxlayın. Alətlərin sonradan yüklənməsi müştəri və model birləşməsindən asılıdır: quruluşunuz tam kataloqu əvvəlcədən yükləyirsə, bundan istifadə edin — sonradan yüklənən alətlər üçün daxili dəstəyi olmayan modellərdə (məsələn, Gemini, OpenAI ilə uyğun lokal modellər, Claude Haiku), modeldən asılı olmayaraq bütün alət sxemlərini birbaşa kontekstə daxil edən müştərilərdə (məsələn, GitHub Copilot CLI) və ya daha kiçik kontekst pəncərələrində. Bəzi Codex modellərində və ChatGPT-də də sonradan yüklənən alətlər var — bu seçimi ehtiyac olmadan aktiv saxlamamaq üçün müştərinizin/modelinizin imkanlarını birbaşa yoxlayın. Alətlər ha_search_tools vasitəsilə tapılır və kateqoriyalara ayrılmış proksilər vasitəsilə icra olunur (oxuma/yazma/silmə). Qüvvəyə minməsi üçün yenidən başlatma tələb olunur.",
134
134
  "features.tool_search_max_results.label": "Alət axtarışında maksimum nəticə sayı",
135
- "features.tool_search_max_results.help": "Alət axtarışı aktiv olduqda ha_search_tools tərəfindən qaytarılan alətlərin maksimum sayı. Daha aşağı dəyərlər (2-3) kontekst tokenlərinə qənaət edir, lakin uyğun alətləri nəzərdən qaçıra bilər. Aralıq: 2-10. Yenidən başlatma tələb olunur.",
135
+ "features.tool_search_max_results.help": "Alət axtarışı aktiv olduqda hər ha_search_tools çağırışı üçün qaytarılan gizli alətlərin maksimum sayı; həmin yuxarı sayda yer alan bərkidilmiş alət onun üzərinə qısa yalnız ad daxiletməsi kimi əlavə edilir. Aşağı qiymətlər (2-3) kontekst tokenlərinə qənaət edir, lakin uyğun alətləri qaçıra bilər. Aralıq: 2-10. Yenidən başladılmasını tələb edir.",
136
136
  "features.enable_tool_security_policies.label": "Alətlərin təhlükəsizlik siyasətlərini aktivləşdir (qabaqcıl)",
137
137
  "features.enable_tool_security_policies.help": "Ciddi nəticələr doğura bilən alət çağırışları (kilid/siqnalizasiya idarəetməsi, avtomatlaşdırmaların yazılması və s.) üçün istifadəçi təsdiqi tələb edir. Qorunan alət çağırıldıqda agent istifadəçidən veb interfeysdə Alətlərin təhlükəsizlik siyasətləri bölməsini açmağı və çağırışın davam etməsi üçün Təsdiqlə düyməsinə basmağı istəyir. Hər alət üçün qaydalar və istəyə bağlı arqument şərtləri Alətlərin təhlükəsizlik siyasətləri bölməsində konfiqurasiya olunur. Standart olaraq deaktivdir. Qüvvəyə minməsi üçün yenidən başlatma tələb olunur.",
138
138
  "features.read_only_mode.label": "Yalnız oxuma rejimi",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "Problem və ya rəy bildir",
877
- "description": "Diaqnostika və səhv hesabatı və ya agent rəyi üçün hazır GitHub məsələsi əldə edin."
877
+ "description": "Xəta, agent rəyi və ya yeni funksiyalar üçün diaqnostikanı və hazırcavab GitHub məsələsini əldə edin."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Home Assistant-ı yenidən başlat",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Povolit vyhledávání nástrojů",
133
133
  "features.enable_tool_search.help": "Nahradí celý katalog nástrojů vyhledáváním. Snižuje nečinný kontext přibližně o 90 %, na zhruba 5K tokenů. ⚠️ NEPOVOLUJTE toto v klientech s vlastním vestavěným vyhledáváním nástrojů / odloženými nástroji (claude.ai, Claude Desktop, Claude Code) — dvě vrstvy vyhledávání se střetávají a vestavěné vyhledávání nástrojů klienta je tam lepší volbou; nechte to vypnuté. Zda jsou nástroje odložené, závisí na kombinaci vašeho klienta a modelu: použijte toto, když vaše nastavení načítá celý katalog předem — modely bez nativních odložených nástrojů (např. Gemini, lokální modely kompatibilní s OpenAI, Claude Haiku), klienti, kteří vkládají všechna schémata nástrojů bez ohledu na model (např. GitHub Copilot CLI), nebo menší kontextová okna. Některé modely Codex a ChatGPT také zahrnují odložené nástroje — zkontrolujte přímo svého klienta/model, abyste potvrdili jeho funkce a nenechali to zbytečně povolené. Nástroje jsou nalezeny pomocí ha_search_tools a spouštěny prostřednictvím kategorizovaných proxy (čtení/zápis/mazání). Vyžaduje restart, aby se projevilo.",
134
134
  "features.tool_search_max_results.label": "Max. výsledků vyhledávání nástrojů",
135
- "features.tool_search_max_results.help": "Maximální počet nástrojů vrácených ha_search_tools, když je povoleno vyhledávání nástrojů. Nižší hodnoty (2-3) šetří kontextové tokeny, ale mohou přehlédnout relevantní nástroje. Rozsah: 2-10. Vyžaduje restart.",
135
+ "features.tool_search_max_results.help": "Maximální počet skrytých nástrojů vrácených na jedno volání ha_search_tools, když je vyhledávání nástrojů povolené; připnutý nástroj, který se umisťuje v rámci tohoto horního počtu, je přidán jako krátká položka obsahující pouze název navrch. Nižší hodnoty (2-3) šetří kontextové tokeny, ale mohou minout relevantní nástroje. Rozsah: 2-10. Vyžaduje restart.",
136
136
  "features.enable_tool_security_policies.label": "Povolit zásady zabezpečení nástrojů (pokročilé)",
137
137
  "features.enable_tool_security_policies.help": "Podmiňuje vysoce rizikové volání nástrojů (ovládání zámků/alarmů, zápisy automatizací atd.) schválením uživatelem. Když je volán chráněný nástroj, agent řekne uživateli, aby otevřel záložku Zásady zabezpečení nástrojů ve webovém rozhraní a klikl na Schválit, než volání pokračuje. Pravidla pro jednotlivé nástroje s volitelnými podmínkami argumentů se konfigurují na záložce Zásady zabezpečení nástrojů. Ve výchozím nastavení vypnuto. Vyžaduje restart, aby se projevilo.",
138
138
  "features.read_only_mode.label": "Režim pouze pro čtení",
@@ -843,7 +843,7 @@
843
843
  },
844
844
  "ha_report_issue": {
845
845
  "title": "Nahlásit problém nebo zpětnou vazbu",
846
- "description": "Získat diagnostiku a hotový GitHub issue pro hllášení chyby nebo zpětnou vazbu agenta."
846
+ "description": "Získejte diagnostiku a hotový GitHub problém pro chybu, zpětnou vazbu k agentovi nebo požadavek na novou funkci."
847
847
  },
848
848
  "ha_restart": {
849
849
  "title": "Restartovat Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Tool-Suche aktivieren",
133
133
  "features.enable_tool_search.help": "Ersetzt den vollständigen Tool-Katalog durch suchbasierte Entdeckung. Reduziert den Leerlauf-Kontext um rund 90 % auf etwa 5K Tokens. ⚠️ Aktiviere dies NICHT in Clients mit eigener integrierter Tool-Suche / aufgeschobenen Tools (claude.ai, Claude Desktop, Claude Code) – die beiden Suchebenen kollidieren, und die integrierte Tool-Suche des Clients ist dort die bessere Wahl; lasse dies ausgeschaltet. Ob Tools aufgeschoben werden, hängt von der Kombination aus Client und Modell ab: Verwende dies, wenn dein Setup den vollständigen Katalog von Anfang an lädt – Modelle ohne native aufgeschobene Tools (z. B. Gemini, lokale OpenAI-kompatible Modelle, Claude Haiku), Clients, die alle Tool-Schemata unabhängig vom Modell direkt einbetten (z. B. GitHub Copilot CLI), oder kleinere Kontextfenster. Auch einige Codex-Modelle und ChatGPT haben aufgeschobene Tools – prüfe direkt bei deinem Client/Modell, welche Features er hat, damit du dies nicht unnötig aktiviert lässt. Tools werden über ha_search_tools gefunden und über kategorisierte Proxys (read/write/delete) ausgeführt. Erfordert Neustart, um wirksam zu werden.",
134
134
  "features.tool_search_max_results.label": "Max. Tool-Suchergebnisse",
135
- "features.tool_search_max_results.help": "Maximale Anzahl von Tools, die von ha_search_tools zurückgegeben werden, wenn die Tool-Suche aktiviert ist. Niedrigere Werte (2-3) sparen Kontext-Tokens, können aber relevante Tools übersehen. Bereich: 2-10. Erfordert Neustart.",
135
+ "features.tool_search_max_results.help": "Maximale Anzahl versteckter Tools, die pro ha_search_tools-Aufruf zurückgegeben werden, wenn die Tool-Suche aktiviert ist; ein angepinntes Tool, das in diesen oberen Bereich fällt, wird zusätzlich als kurzer Eintrag mit nur dem Namen oben hinzugefügt. Niedrigere Werte (2-3) sparen Kontexte-Tokens, können aber relevante Tools verfehlen. Bereich: 2-10. Erfordert einen Neustart.",
136
136
  "features.enable_tool_security_policies.label": "Tool-Sicherheitsrichtlinien aktivieren (erweitert)",
137
137
  "features.enable_tool_security_policies.help": "Gating kritischer Tool-Aufrufe (Schloss-/Alarmsteuerung, Automatisierungsschreibvorgänge usw.) hinter Benutzergenehmigung. Wenn ein geschütztes Tool aufgerufen wird, weist der Agent den Benutzer an, den Tab Tool-Sicherheitsrichtlinien in der Web-UI zu öffnen und auf Genehmigen zu klicken, bevor der Aufruf fortgesetzt wird. Tool-bezogene Regeln mit optionalen Argumentbedingungen werden im Tab Tool-Sicherheitsrichtlinien konfiguriert. Standardmäßig ausgeschaltet. Erfordert Neustart, um wirksam zu werden.",
138
138
  "features.read_only_mode.label": "Nur-Lese-Modus",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "Problem melden oder Feedback geben",
877
- "description": "Erhalte Diagnosen und ein fertiges GitHub-Issue für einen Bug-Report oder Agenten-Feedback."
877
+ "description": "Erhalte Diagnosedaten und ein fertiges GitHub-Issue für einen Bug, Agenten-Feedback oder einen Feature-Wunsch."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Home Assistant neu starten",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Ebligi ilo-serĉon",
133
133
  "features.enable_tool_search.help": "Anstataŭigi la plenan ilo-katalogon per serĉ-bazita malkovro. Reduktas neaktivan kuntekston je proksimume 90%, al ĉirkaŭ 5K ĵetonoj. ⚠️ NE ebligu ĉi tion en klientoj kun sia propra enkonstruita ilo-serĉo / prokrastitaj iloj (claude.ai, Claude Desktop, Claude Code) — la du serĉtavoloj konfliktas, kaj la enkonstruita ilo-serĉo de la kliento estas la pli bona elekto tie; lasu ĉi tion malŝaltita. Ĉu iloj estas prokrastitaj dependas de via kliento kaj modelo-kombino: uzu ĉi tion kiam via agordo ŝarĝas la plenan katalogon antaŭe — modeloj sen denaskaj prokrastitaj iloj (ekz. Gemini, OpenAI-kongruaj lokaj modeloj, Claude Haiku), klientoj kiuj enlinigas ĉiujn ilo-skemojn sendepende de modelo (ekz. GitHub Copilot CLI), aŭ pli malgrandaj kuntekstaj fenestroj. Iuj Codex-modeloj kaj ChatGPT ankaŭ inkluzivas prokrastitajn ilojn — kontrolu vian klienton/modelon rekte por konfirmi ĝiajn funkciojn, por ke vi ne lasu ĉi tion ebligita senbezone. Iloj estas trovitaj per ha_search_tools kaj ekzekutitaj per kategoriigitaj prokuriloj (legi/skribi/forigi). Postulas restartigon por ekvalidi.",
134
134
  "features.tool_search_max_results.label": "Maksimumaj rezultoj de ilo-serĉo",
135
- "features.tool_search_max_results.help": "Maksimuma nombro de iloj redonitaj de ha_search_tools kiam ilo-serĉo estas ebligita. Pli malaltaj valoroj (2-3) ŝparas kuntekstajn ĵetonojn sed povas maltrafi gravajn ilojn. Gamo: 2-10. Postulas restartigon.",
135
+ "features.tool_search_max_results.help": "Maksimuma nombro de kaŝitaj iloj redonitaj po voko de ha_search_tools kiam ilserĉado estas ebligita; alpinglita ilo kiu altas en tiu pinta nombro estas aldonita kiel mallonga nur-noma eniro super ĝi. Pli malaltaj valoroj (2-3) ŝparas kuntekstajn signojn, sed povas maltrafi signifajn ilojn. Intervalo: 2-10. Postulas restartigon.",
136
136
  "features.enable_tool_security_policies.label": "Ebligi Ilo-Sekurecajn Politikojn (altnivela)",
137
137
  "features.enable_tool_security_policies.help": "Gardu alt-riskajn ilo-vokojn (seruro/alarmo-kontrolo, aŭtomatigo-skriboj, ktp.) malantaŭ uzant-aprobo. Kiam gardita ilo estas vokita, la agento diras al la uzanto malfermi la langeton Ilo-Sekurecaj Politikoj en la TTT-UI kaj klaki Aprobi antaŭ ol la voko daŭras. Reguloj por ĉiu ilo kun laŭvolaj argumentaj kondiĉoj estas agorditaj en la langeto Ilo-Sekurecaj Politikoj. Malŝaltita defaŭlte. Postulas restartigon por ekvalidi.",
138
138
  "features.read_only_mode.label": "Nur-lega Reĝimo",
@@ -843,7 +843,7 @@
843
843
  },
844
844
  "ha_report_issue": {
845
845
  "title": "Raporti Problemom aŭ Reagon",
846
- "description": "Akiri diagnozon kaj pretan GitHub-problemon por raporto pri cimo aŭ retrosciigo de agento."
846
+ "description": "Akiri diagnozon kaj pretan GitHub-problemon por cimoj, agenta opinio aŭ peto pri funkcio."
847
847
  },
848
848
  "ha_restart": {
849
849
  "title": "Restartigi Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Activar la búsqueda de herramientas",
133
133
  "features.enable_tool_search.help": "Sustituye el catálogo completo de herramientas por un descubrimiento basado en búsqueda. Reduce el contexto en reposo en torno a un 90 %, hasta unos 5K tokens. ⚠️ NO actives esto en clientes con su propia búsqueda de herramientas / herramientas diferidas integrada (claude.ai, Claude Desktop, Claude Code): las dos capas de búsqueda entran en conflicto y la búsqueda integrada del cliente es allí la mejor opción; deja esto desactivado. Que las herramientas se difieran depende de la combinación de cliente y modelo: usa esto cuando tu configuración carga el catálogo completo de entrada — modelos sin herramientas diferidas nativas (p. ej. Gemini, modelos locales compatibles con OpenAI, Claude Haiku), clientes que insertan todos los esquemas de herramientas sea cual sea el modelo (p. ej. GitHub Copilot CLI) o ventanas de contexto más pequeñas. Algunos modelos Codex y ChatGPT también incluyen herramientas diferidas: comprueba directamente con tu cliente/modelo qué características tiene para no dejar esto activado innecesariamente. Las herramientas se localizan mediante ha_search_tools y se ejecutan a través de proxies por categoría (lectura/escritura/borrado). Requiere reiniciar para que surta efecto.",
134
134
  "features.tool_search_max_results.label": "Máximo de resultados de la búsqueda de herramientas",
135
- "features.tool_search_max_results.help": "Número máximo de herramientas que devuelve ha_search_tools cuando la búsqueda de herramientas está activada. Los valores bajos (2-3) ahorran tokens de contexto pero pueden dejar fuera herramientas relevantes. Rango: 2-10. Requiere reiniciar.",
135
+ "features.tool_search_max_results.help": "Número máximo de herramientas ocultas devueltas por cada llamada a ha_search_tools cuando la búsqueda de herramientas está habilitada; una herramienta fijada que se encuentre dentro de ese recuento superior se añade como una entrada breve de solo nombre además de este. Los valores más bajos (2-3) ahorran tokens de contexto, pero pueden omitir herramientas relevantes. Rango: 2-10. Requiere reinicio.",
136
136
  "features.enable_tool_security_policies.label": "Activar las políticas de seguridad de herramientas (avanzado)",
137
137
  "features.enable_tool_security_policies.help": "Somete a aprobación del usuario las llamadas a herramientas de alto riesgo (control de cerraduras y alarmas, escritura de automatizaciones, etc.). Cuando se llama a una herramienta protegida, el agente indica al usuario que abra la pestaña Políticas de seguridad de herramientas en la interfaz web y pulse Aprobar antes de que la llamada continúe. Las reglas por herramienta, con condiciones opcionales sobre los argumentos, se configuran en esa misma pestaña. Desactivado de forma predeterminada. Requiere reiniciar para que surta efecto.",
138
138
  "features.read_only_mode.label": "Modo de solo lectura",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "Informar de un problema o enviar comentarios",
877
- "description": "Obtén diagnósticos y un informe de errores listo para GitHub para reportar un fallo o enviar comentarios del agente."
877
+ "description": "Obtén diagnóstico y un issue de GitHub redactado para un error, comentarios sobre el agente o una solicitud de función."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Reiniciar Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Activer la recherche d'outils",
133
133
  "features.enable_tool_search.help": "Remplace le catalogue complet d'outils par une découverte basée sur la recherche. Réduit le contexte inactif d'environ 90 %, à près de 5K tokens. ⚠️ N'activez PAS ceci dans les clients qui ont leur propre recherche d'outils intégrée / outils différés (claude.ai, Claude Desktop, Claude Code) — les deux couches de recherche entrent en conflit, et la recherche d'outils intégrée du client y est le meilleur choix ; laissez ceci désactivé. Le report des outils dépend de la combinaison client/modèle : utilisez ceci lorsque votre configuration charge le catalogue complet d'emblée — modèles sans outils différés natifs (p. ex. Gemini, modèles locaux compatibles OpenAI, Claude Haiku), clients qui intègrent tous les schémas d'outils quel que soit le modèle (p. ex. GitHub Copilot CLI), ou fenêtres de contexte plus petites. Certains modèles Codex et ChatGPT incluent aussi des outils différés — vérifiez directement auprès de votre client/modèle quelles fonctionnalités il possède pour ne pas laisser ceci activé inutilement. Les outils sont trouvés via ha_search_tools et exécutés via des proxys catégorisés (lecture/écriture/suppression). Nécessite un redémarrage pour prendre effet.",
134
134
  "features.tool_search_max_results.label": "Résultats max. de la recherche d'outils",
135
- "features.tool_search_max_results.help": "Nombre maximum d'outils renvoyés par ha_search_tools lorsque la recherche d'outils est activée. Des valeurs plus basses (2-3) économisent des tokens de contexte mais peuvent manquer des outils pertinents. Plage : 2-10. Nécessite un redémarrage.",
135
+ "features.tool_search_max_results.help": "Nombre maximal d'outils cachés renvoyés par appel ha_search_tools lorsque la recherche d'outils est activée ; un outil épinglé qui se classe dans ce nombre maximal est ajouté en tant qu'entrée courte avec uniquement le nom en plus. Des valeurs plus faibles (2-3) économisent des jetons de contexte mais peuvent manquer des outils pertinents. Plage : 2-10. Nécessite un redémarrage.",
136
136
  "features.enable_tool_security_policies.label": "Activer les politiques de sécurité des outils (avancé)",
137
137
  "features.enable_tool_security_policies.help": "Contrôle les appels d'outils à enjeux élevés (contrôle des serrures/alarmes, écritures d'automatisations, etc.) derrière une approbation utilisateur. Lorsqu'un outil protégé est appelé, l'agent dit à l'utilisateur d'ouvrir l'onglet Politiques de sécurité des outils dans l'interface Web et de cliquer sur Approuver avant que l'appel ne continue. Les règles par outil avec conditions d'argument optionnelles sont configurées dans l'onglet Politiques de sécurité des outils. Désactivé par défaut. Nécessite un redémarrage pour prendre effet.",
138
138
  "features.read_only_mode.label": "Mode lecture seule",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "Signaler un problème ou envoyer un retour",
877
- "description": "Obtenez des diagnostics et une issue GitHub prête à l'emploi pour un rapport de bogue ou un retour d'agent."
877
+ "description": "Obtenez des diagnostics et un problème GitHub prêt à l'emploi pour un bug, un retour d'agent ou une demande de fonctionnalité."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Redémarrer Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Attiva la ricerca degli strumenti",
133
133
  "features.enable_tool_search.help": "Sostituisci il catalogo completo degli strumenti con la scoperta basata sulla ricerca. Riduce il contesto inattivo di circa il 90%, a circa 5K token. ⚠️ NON abilitare questa opzione nei client con la propria ricerca strumenti integrata / strumenti differiti (claude.ai, Claude Desktop, Claude Code) — i due livelli di ricerca entrano in conflitto, e la ricerca strumenti integrata del client è la scelta migliore in quel caso; lasciala disattivata. Se gli strumenti sono differiti dipende dalla combinazione client e modello: usa questa opzione quando la tua configurazione carica il catalogo completo in anticipo — modelli senza strumenti differiti nativi (es. Gemini, modelli locali compatibili con OpenAI, Claude Haiku), client che incorporano tutti gli schemi degli strumenti indipendentemente dal modello (es. GitHub Copilot CLI), o finestre di contesto più piccole. Alcuni modelli Codex e ChatGPT includono anche strumenti differiti — controlla direttamente il tuo client/modello per confermarne le funzionalità in modo da non lasciare questa opzione abilitata inutilmente. Gli strumenti vengono trovati tramite ha_search_tools ed eseguiti tramite proxy categorizzati (read/write/delete). Richiede un riavvio per avere effetto.",
134
134
  "features.tool_search_max_results.label": "Numero massimo di risultati della ricerca degli strumenti",
135
- "features.tool_search_max_results.help": "Numero massimo di strumenti restituiti da ha_search_tools quando la ricerca degli strumenti è attiva. Valori bassi (2-3) risparmiano token di contesto ma possono escludere strumenti pertinenti. Intervallo: 2-10. Richiede il riavvio.",
135
+ "features.tool_search_max_results.help": "Numero massimo di strumenti nascosti restituiti per ogni chiamata ha_search_tools quando la ricerca degli strumenti è abilitata; uno strumento fissato che rientra in quel conteggio massimo viene aggiunto come voce breve con solo il nome in cima. Valori più bassi (2-3) fanno risparmiare token di contesto ma potrebbero perdere strumenti rilevanti. Intervallo: 2-10. Richiede il riavvio.",
136
136
  "features.enable_tool_security_policies.label": "Attiva i criteri di sicurezza degli strumenti (avanzato)",
137
137
  "features.enable_tool_security_policies.help": "Subordina all'approvazione dell'utente le chiamate agli strumenti ad alto rischio (controllo di serrature e allarmi, scrittura di automazioni, ecc.). Quando viene chiamato uno strumento controllato, l'agente chiede all'utente di aprire la scheda Criteri di sicurezza degli strumenti nell'interfaccia web e di fare clic su Approva prima che la chiamata prosegua. Le regole per singolo strumento, con condizioni facoltative sugli argomenti, si configurano nella scheda Criteri di sicurezza degli strumenti. Disattivato per impostazione predefinita. Richiede il riavvio per avere effetto.",
138
138
  "features.read_only_mode.label": "Modalità di sola lettura",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "Segnala un problema o invia un riscontro",
877
- "description": "Ottieni diagnostica e una segnalazione GitHub pronta per una segnalazione di bug o feedback dell'agente."
877
+ "description": "Ottieni diagnostica e un problema GitHub pronto per un bug, un feedback dell'agente o una richiesta di funzionalità."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Riavvia Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "도구 검색 사용",
133
133
  "features.enable_tool_search.help": "전체 도구 카탈로그 대신 검색 기반 탐색을 사용합니다. 대기 상태 컨텍스트를 약 90% 줄여 약 5K 토큰 수준으로 낮춥니다. ⚠️ 자체 도구 검색이나 지연 로딩 도구 기능을 갖춘 클라이언트(claude.ai, Claude Desktop, Claude Code)에서는 켜지 마세요. 두 검색 계층이 충돌하며, 그런 환경에서는 클라이언트 내장 도구 검색이 더 낫습니다. 도구가 지연 로딩되는지는 클라이언트와 모델 조합에 따라 다릅니다. 전체 카탈로그를 처음부터 모두 불러오는 환경(네이티브 지연 로딩 도구가 없는 모델(예: Gemini, OpenAI 호환 로컬 모델, Claude Haiku), 모델과 무관하게 모든 도구 스키마를 인라인으로 넣는 클라이언트(예: GitHub Copilot CLI), 컨텍스트 창이 작은 경우)에서 사용하세요. 일부 Codex 모델과 ChatGPT도 지연 로딩 도구를 지원하므로, 불필요하게 켜 두지 않도록 사용 중인 클라이언트/모델의 기능을 직접 확인하세요. 도구는 ha_search_tools로 찾고 범주별 프록시(읽기/쓰기/삭제)를 통해 실행됩니다. 적용하려면 다시 시작해야 합니다.",
134
134
  "features.tool_search_max_results.label": "도구 검색 최대 결과 수",
135
- "features.tool_search_max_results.help": "도구 검색이 켜져 있을 때 ha_search_tools가 반환하는 도구의 최대 개수입니다. 값을 낮추면(2~3) 컨텍스트 토큰을 아낄 수 있지만 관련 도구를 놓칠 수 있습니다. 범위: 2~10. 다시 시작해야 적용됩니다.",
135
+ "features.tool_search_max_results.help": "도구 검색이 활성화된 경우 ha_search_tools 호출당 반환되는 숨겨진 도구의 최대 개수입니다. 해당 상위 개수에 포함된 고정(pinned) 도구는 그 위에 이름만 있는 짧은 항목으로 추가됩니다. 낮은 값(2-3)은 컨텍스트 토큰을 절약하지만 관련 도구를 누락할 수 있습니다. 범위: 2-10. 다시 시작해야 합니다.",
136
136
  "features.enable_tool_security_policies.label": "도구 보안 정책 사용(고급)",
137
137
  "features.enable_tool_security_policies.help": "위험도가 높은 도구 호출(잠금·경보 제어, 자동화 쓰기 등)에 사용자 승인을 요구합니다. 보호된 도구가 호출되면 에이전트는 사용자에게 웹 UI의 도구 보안 정책 탭을 열고 승인을 누르라고 안내하며, 그 후에야 호출이 진행됩니다. 인수 조건을 선택적으로 붙일 수 있는 도구별 규칙은 도구 보안 정책 탭에서 설정합니다. 기본값은 꺼짐입니다. 적용하려면 다시 시작해야 합니다.",
138
138
  "features.read_only_mode.label": "읽기 전용 모드",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "이슈 또는 피드백 보고",
877
- "description": "버그 리포트 또는 에이전트 피드백을 위한 진단 정보와 작성된 GitHub 이슈를 가져옵니다."
877
+ "description": "버그, 에이전트 피드백 또는 기능 요청에 대한 진단 정보와 작성된 GitHub 이슈를 가져옵니다."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Home Assistant 다시 시작",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Schakel tool-zoekfunctie in",
133
133
  "features.enable_tool_search.help": "Vervang de volledige toolcatalogus door zoekgebaseerde ontdekking. Vermindert de inactieve context met ongeveer 90%, tot ongeveer 5K tokens. ⚠️ Schakel dit NIET in bij clients met hun eigen ingebouwde tool-zoekfunctie / uitgestelde tools (claude.ai, Claude Desktop, Claude Code) — de twee zoeklagen conflicteren, en de ingebouwde tool-zoekfunctie van de client is daar de betere keuze; laat dit uitgeschakeld. Of tools worden uitgesteld, hangt af van je client- en modelcombinatie: gebruik dit wanneer je setup de volledige catalogus vooraf laadt — modellen zonder native uitgestelde tools (bijv. Gemini, OpenAI-compatibele lokale modellen, Claude Haiku), clients die alle tool-schema's inline zetten ongeacht het model (bijv. GitHub Copilot CLI), of kleinere contextvensters. Sommige Codex-modellen en ChatGPT bevatten ook uitgestelde tools — controleer je client/model direct om de functies ervan te bevestigen, zodat je dit niet onnodig ingeschakeld laat. Tools worden gevonden via ha_search_tools en uitgevoerd via gecategoriseerde proxies (lezen/schrijven/verwijderen). Vereist een herstart om van kracht te worden.",
134
134
  "features.tool_search_max_results.label": "Max. resultaten tool-zoekfunctie",
135
- "features.tool_search_max_results.help": "Maximaal aantal tools geretourneerd door ha_search_tools wanneer de tool-zoekfunctie is ingeschakeld. Lagere waarden (2-3) besparen context-tokens, maar kunnen relevante tools missen. Bereik: 2-10. Vereist een herstart.",
135
+ "features.tool_search_max_results.help": "Maximum aantal verborgen tools dat wordt geretourneerd per ha_search_tools aanroep wanneer tool zoeken is ingeschakeld; een vastgezette tool die binnen die top valt, wordt hier bovenop toegevoegd als een korte vermelding met alleen de naam. Lagere waarden (2-3) besparen contexttokens, maar missen mogelijk relevante tools. Bereik: 2-10. Vereist een herstart.",
136
136
  "features.enable_tool_security_policies.label": "Schakel Tool Beveiligingsbeleid in (geavanceerd)",
137
137
  "features.enable_tool_security_policies.help": "Beveilig risicovolle tool-aanroepen (vergrendelings-/alarmbediening, automatiseringsschrijvingen, enz.) achter gebruikersgoedkeuring. Wanneer een beveiligde tool wordt aangeroepen, instrueert de agent de gebruiker om het tabblad 'Tool Security Policies' in de web-UI te openen en op 'Goedkeuren' te klikken voordat de aanroep doorgaat. Per-tool regels met optionele argumentcondities worden geconfigureerd in het tabblad 'Tool Security Policies'. Standaard uitgeschakeld. Vereist een herstart om van kracht te worden.",
138
138
  "features.read_only_mode.label": "Alleen-lezen modus",
@@ -843,7 +843,7 @@
843
843
  },
844
844
  "ha_report_issue": {
845
845
  "title": "Probleem of Feedback Rapporteren",
846
- "description": "Haal diagnostische gegevens en een kant-en-klaar GitHub-issue op voor een bugrapport of agent-feedback."
846
+ "description": "Haal diagnostische gegevens en een kant-en-klaar GitHub-issue op voor een bug, agent-feedback of een functieverzoek."
847
847
  },
848
848
  "ha_restart": {
849
849
  "title": "Home Assistant Herstarten",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Włącz wyszukiwanie narzędzi",
133
133
  "features.enable_tool_search.help": "Zastępuje pełny katalog narzędzi odkrywaniem opartym na wyszukiwaniu. Zmniejsza bezczynny kontekst o około 90%, do około 5 tys. tokenów. ⚠️ NIE włączaj tej opcji w klientach z własnym wbudowanym wyszukiwaniem narzędzi / odroczonymi narzędziami (claude.ai, Claude Desktop, Claude Code) — dwie warstwy wyszukiwania kolidują ze sobą, a wbudowane wyszukiwanie narzędzi klienta jest tam lepszym wyborem; pozostaw tę opcję wyłączoną. To, czy narzędzia są odroczone, zależy od kombinacji klienta i modelu: użyj tej opcji, gdy Twoja konfiguracja ładuje pełny katalog z góry — modele bez natywnych odroczonych narzędzi (np. Gemini, lokalne modele kompatybilne z OpenAI, Claude Haiku), klienci, którzy włączają wszystkie schematy narzędzi niezależnie od modelu (np. GitHub Copilot CLI), lub mniejsze okna kontekstowe. Niektóre modele Codex i ChatGPT również zawierają odroczone narzędzia — sprawdź bezpośrednio swojego klienta/model, aby potwierdzić jego funkcje, aby nie pozostawiać tej opcji włączonej niepotrzebnie. Narzędzia są znajdowane za pomocą ha_search_tools i wykonywane za pośrednictwem skategoryzowanych proxy (odczyt/zapis/usuwanie). Wymaga ponownego uruchomienia, aby zmiany weszły w życie.",
134
134
  "features.tool_search_max_results.label": "Maksymalna liczba wyników wyszukiwania narzędzi",
135
- "features.tool_search_max_results.help": "Maksymalna liczba narzędzi zwracanych przez ha_search_tools, gdy wyszukiwanie narzędzi jest włączone. Niższe wartości (2-3) oszczędzają tokeny kontekstu, ale mogą pominąć istotne narzędzia. Zakres: 2-10. Wymaga ponownego uruchomienia.",
135
+ "features.tool_search_max_results.help": "Maksymalna liczba ukrytych narzędzi zwracanych w jednym wywołaniu ha_search_tools, gdy wyszukiwanie narzędzi jest włączone; przypisane narzędzie, które mieści się w tym limicie, jest dodawane jako krótki wpis zawierający tylko nazwę na jego początku. Niższe wartości (2-3) oszczędzają tokeny kontekstu, ale mogą pominąć odpowiednie narzędzia. Zakres: 2-10. Wymaga ponownego uruchomienia.",
136
136
  "features.enable_tool_security_policies.label": "Włącz zasady bezpieczeństwa narzędzi (zaawansowane)",
137
137
  "features.enable_tool_security_policies.help": "Zabezpiecz wywołania narzędzi wysokiego ryzyka (kontrola zamków/alarmów, zapisy automatyzacji itp.) za zgodą użytkownika. Gdy wywoływane jest zabezpieczone narzędzie, agent informuje użytkownika, aby otworzył zakładkę „Zasady bezpieczeństwa narzędzi” w interfejsie sieciowym i kliknął „Zatwierdź”, zanim wywołanie zostanie wykonane. Reguły dla poszczególnych narzędzi z opcjonalnymi warunkami argumentów są konfigurowane w zakładce „Zasady bezpieczeństwa narzędzi”. Domyślnie wyłączone. Wymaga ponownego uruchomienia, aby zmiany weszły w życie.",
138
138
  "features.read_only_mode.label": "Tryb tylko do odczytu",
@@ -843,7 +843,7 @@
843
843
  },
844
844
  "ha_report_issue": {
845
845
  "title": "Zgłoś problem lub opinię",
846
- "description": "Uzyskaj dane diagnostyczne i gotowe zgłoszenie w serwisie GitHub dla raportu o błędzie lub opinii agenta."
846
+ "description": "Pobierz dane diagnostyczne oraz gotowe zgłoszenie w serwisie GitHub dla błędu, opinii o agencie lub prośby o nową funkcję."
847
847
  },
848
848
  "ha_restart": {
849
849
  "title": "Uruchom ponownie Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Включить поиск инструментов",
133
133
  "features.enable_tool_search.help": "Заменяет полный каталог инструментов поиском по запросу. Уменьшает неиспользуемый контекст примерно на 90 % — до порядка 5 тыс. токенов. ⚠️ НЕ включайте этот параметр в клиентах с собственным встроенным поиском инструментов и отложенными инструментами (claude.ai, Claude Desktop, Claude Code): два слоя поиска конфликтуют, а встроенный поиск инструментов клиента там — лучший выбор; оставьте этот параметр выключенным. Будут ли инструменты отложенными, зависит от сочетания клиента и модели: используйте этот параметр, когда ваша конфигурация загружает полный каталог сразу — модели без собственных отложенных инструментов (например, Gemini, локальные OpenAI-совместимые модели, Claude Haiku), клиенты, которые встраивают все схемы инструментов независимо от модели (например, GitHub Copilot CLI), или небольшие контекстные окна. Некоторые модели Codex и ChatGPT тоже включают отложенные инструменты — уточните непосредственно у своего клиента/модели, какие функции он поддерживает, чтобы не оставлять этот параметр включённым без необходимости. Инструменты находятся через ha_search_tools и выполняются через распределённые по категориям прокси (чтение, запись, удаление). Для применения требуется перезапуск.",
134
134
  "features.tool_search_max_results.label": "Максимальное количество результатов поиска инструментов",
135
- "features.tool_search_max_results.help": "Максимальное количество инструментов, возвращаемых ha_search_tools при включённом поиске инструментов. Меньшие значения (2–3) экономят токены контекста, но могут пропустить подходящие инструменты. Диапазон: 2–10. Требуется перезапуск.",
135
+ "features.tool_search_max_results.help": "Максимальное количество скрытых инструментов, возвращаемых за один вызов ha_search_tools при включенном поиске инструментов; закрепленный инструмент, попавший в этот топ, добавляется в виде краткой записи только с именем поверх него. Меньшие значения (2-3) экономят токены контекста, но могут пропустить нужные инструменты. Диапазон: 2-10. Требуется перезапуск.",
136
136
  "features.enable_tool_security_policies.label": "Включить политики безопасности инструментов (расширенная настройка)",
137
137
  "features.enable_tool_security_policies.help": "Требует подтверждения пользователя для особо важных вызовов инструментов (управление замками и сигнализацией, запись автоматизаций и т. д.). Когда вызывается защищённый инструмент, агент предлагает пользователю открыть вкладку «Политики безопасности инструментов» в веб-интерфейсе и нажать «Одобрить», прежде чем вызов будет выполнен. Правила для отдельных инструментов с необязательными условиями для аргументов настраиваются на вкладке «Политики безопасности инструментов». По умолчанию выключено. Для применения требуется перезапуск.",
138
138
  "features.read_only_mode.label": "Режим только для чтения",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "Сообщить о проблеме или отправить отзыв",
877
- "description": "Получите диагностику и готовый GitHub issue для отчета об ошибке или отзывов об агенте."
877
+ "description": "Получите диагностику и готовое обращение для GitHub при обнаружении ошибки, отзыве об агенте или запросе новой функции."
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "Перезапустить Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "Aktivera verktygssökning",
133
133
  "features.enable_tool_search.help": "Ersätter hela verktygskatalogen med sökbaserad upptäckt. Minskar inaktiv kontext med ungefär 90%, till cirka 5K tokens. ⚠️ Aktivera INTE detta i klienter med egen inbyggd verktygssökning / fördröjda verktyg (claude.ai, Claude Desktop, Claude Code) — de två söklagren kolliderar, och klientens inbyggda verktygssökning är det bättre valet där; lämna detta avstängt. Om verktyg är fördröjda beror på din klient- och modellkombination: använd detta när din installation laddar hela katalogen direkt — modeller utan inbyggda fördröjda verktyg (t.ex. Gemini, OpenAI-kompatibla lokala modeller, Claude Haiku), klienter som infogar alla verktygsscheman oavsett modell (t.ex. GitHub Copilot CLI), eller mindre kontextfönster. Vissa Codex-modeller och ChatGPT inkluderar också fördröjda verktyg — kontrollera din klient/modell direkt för att bekräfta dess funktioner så att du inte lämnar detta aktiverat i onödan. Verktyg hittas via ha_search_tools och exekveras via kategoriserade proxys (läs/skriv/radera). Kräver omstart för att träda i kraft.",
134
134
  "features.tool_search_max_results.label": "Max antal resultat för verktygssökning",
135
- "features.tool_search_max_results.help": "Maximalt antal verktyg som returneras av ha_search_tools när verktygssökning är aktiverad. Lägre värden (2-3) sparar kontext-tokens men kan missa relevanta verktyg. Omfång: 2-10. Kräver omstart.",
135
+ "features.tool_search_max_results.help": "Maximalt antal dolda verktyg som returneras per ha_search_tools-anrop när verktygssökning är aktiverat; ett fäst verktyg som placerar sig inom det toppantalet läggs till som en kort namnpost över det. Lägre värden (2-3) sparar kontexttoken men kan missa relevanta verktyg. Intervall: 2-10. Kräver omstart.",
136
136
  "features.enable_tool_security_policies.label": "Aktivera verktygssäkerhetspolicyer (avancerat)",
137
137
  "features.enable_tool_security_policies.help": "Spärra verktygsanrop med hög risk (lås-/larmkontroll, automatiseringsskrivningar, etc.) bakom användargodkännande. När ett skyddat verktyg anropas, ber agenten användaren att öppna fliken Verktygssäkerhetspolicyer i webbgränssnittet och klicka på Godkänn innan anropet fortsätter. Regler per verktyg med valfria argumentvillkor konfigureras i fliken Verktygssäkerhetspolicyer. Avstängt som standard. Kräver omstart för att träda i kraft.",
138
138
  "features.read_only_mode.label": "Skrivskyddat läge",
@@ -843,7 +843,7 @@
843
843
  },
844
844
  "ha_report_issue": {
845
845
  "title": "Rapportera problem eller feedback",
846
- "description": "Hämta diagnostik och ett färdigt GitHub-ärende för felrapportering eller agentfeedback."
846
+ "description": "Hämta diagnostik och ett färdigt GitHub-ärende för en bugg, agentfeedback eller en funktionsbegäran."
847
847
  },
848
848
  "ha_restart": {
849
849
  "title": "Starta om Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "启用工具搜索",
133
133
  "features.enable_tool_search.help": "用基于搜索的发现取代完整工具目录。将空闲上下文减少约 90%,降至约 5K token。⚠️ 如果客户端自带内置工具搜索/延迟工具(claude.ai、Claude Desktop、Claude Code),请勿启用此功能——两层搜索会相互冲突,且在这些客户端中其内置工具搜索是更好的选择;请保持关闭。工具是否延迟取决于客户端与模型的组合:当您的配置会一次性加载完整目录时才使用此功能——例如没有原生延迟工具的模型(如 Gemini、本地 OpenAI 兼容模型、Claude Haiku)、无论模型如何都会内联全部工具架构的客户端(如 GitHub Copilot CLI),或上下文窗口较小时。部分 Codex 模型和 ChatGPT 也带有延迟工具——请直接向您的客户端/模型确认其具备哪些功能,以免不必要地保持启用此功能。工具通过 ha_search_tools 发现,并通过分类代理(读/写/删)执行。需要重启才能生效。",
134
134
  "features.tool_search_max_results.label": "工具搜索最大结果数",
135
- "features.tool_search_max_results.help": "启用工具搜索时 ha_search_tools 返回的最大工具数。较小的值(2–3)可节省上下文 token,但可能遗漏相关工具。范围:2–10。需要重启。",
135
+ "features.tool_search_max_results.help": "启用工具搜索时,每次 ha_search_tools 调用返回的隐藏工具的最大数量;排在该上限内的置顶工具将作为仅含简短名称的条目额外添加在顶部。较低的值(2-3)可节省上下文 Token,但可能会漏掉相关工具。范围:2-10。需要重启。",
136
136
  "features.enable_tool_security_policies.label": "启用工具安全策略(高级)",
137
137
  "features.enable_tool_security_policies.help": "将高风险工具调用(锁具/报警控制、自动化写入等)置于用户审批之后。当调用受保护工具时,智能体会提示用户打开 Web UI 中的工具安全策略选项卡并点击批准,调用才会继续。逐工具规则及可选的参数条件在工具安全策略选项卡中配置。默认关闭。需要重启才能生效。",
138
138
  "features.read_only_mode.label": "只读模式",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "ha_report_issue": {
876
876
  "title": "报告问题或反馈",
877
- "description": "获取诊断信息以及用于错误报告或代理反馈的已完成的 GitHub issue。"
877
+ "description": "获取用于Bug、代理反馈或功能请求的诊断信息以及一份写好的 GitHub Issue。"
878
878
  },
879
879
  "ha_restart": {
880
880
  "title": "重启 Home Assistant",
@@ -132,7 +132,7 @@
132
132
  "features.enable_tool_search.label": "啟用工具搜尋",
133
133
  "features.enable_tool_search.help": "以基於搜尋的探索取代完整的工具目錄。可將閒置上下文減少約 90%,降至約 5K 個 Token。⚠️ 請勿在具有內建工具搜尋/延遲工具功能的用戶端(claude.ai、Claude Desktop、Claude Code)中啟用此功能 — 這兩個搜尋層會發生衝突,且在此情況下用戶端的內建工具搜尋是更好的選擇;請保持關閉。工具是否延遲取決於您的用戶端與模型組合:當您的設定在前端載入完整目錄時請使用此功能 — 不具備原生延遲工具的模型(例如 Gemini、相容 OpenAI 的本機模型、Claude Haiku)、不論模型為何均內嵌所有工具結構定義的用戶端(例如 GitHub Copilot CLI),或是較小的上下文視窗。某些 Codex 模型和 ChatGPT 也包含延遲工具 — 請直接檢查您的用戶端/模型以確認其功能,以免不必要地保持啟用。工具可透過 ha_search_tools 尋找,並透過已分類的代理程式(讀取/寫入/刪除)執行。需要重新啟動才能生效。",
134
134
  "features.tool_search_max_results.label": "工具搜尋最大結果數",
135
- "features.tool_search_max_results.help": "當啟用工具搜尋時,ha_search_tools 所回傳的最大工具數量。較低的值(2-3)可節省上下文 Token,但可能會遺漏相關工具。範圍:2-10。需要重新啟動。",
135
+ "features.tool_search_max_results.help": "啟用工具搜尋時,每次 ha_search_tools 呼叫所傳回的隱藏工具最大數量;排名在前幾名之內的釘選工具會以僅顯示名稱的簡短條目形式額外加入最上方。較低的值 (2-3) 可節省上下文符記,但可能會漏掉相關工具。範圍:2-10。需要重新啟動。",
136
136
  "features.enable_tool_security_policies.label": "啟用工具安全性策略(進階)",
137
137
  "features.enable_tool_security_policies.help": "將高風險工具呼叫(鎖定/警報控制、自動化寫入等)限制在使用者核准之後。當呼叫受保護的工具時,代理程式會指示使用者在網頁 UI 中開啟「工具安全性策略」分頁並點擊「核准」,然後呼叫才會繼續。具備選用引數條件的個別工具規則可在「工具安全性策略」分頁中進行設定。預設為關閉。需要重新啟動才能生效。",
138
138
  "features.read_only_mode.label": "唯讀模式",
@@ -843,7 +843,7 @@
843
843
  },
844
844
  "ha_report_issue": {
845
845
  "title": "回報問題或意見回饋",
846
- "description": "取得用於錯誤報告或代理程式回饋的診斷資料與完整的 GitHub 問題。"
846
+ "description": "取得針對錯誤、代理回饋或功能要求的診斷資料以及準備好的 GitHub Issue。"
847
847
  },
848
848
  "ha_restart": {
849
849
  "title": "重新啟動 Home Assistant",