ha-mcp-dev 7.14.2.dev2089__tar.gz → 7.14.2.dev2091__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 (188) hide show
  1. {ha_mcp_dev-7.14.2.dev2089/src/ha_mcp_dev.egg-info → ha_mcp_dev-7.14.2.dev2091}/PKG-INFO +2 -2
  2. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/README.md +1 -1
  3. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/pyproject.toml +1 -1
  4. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/locales/de.json +2 -2
  5. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/locales/en.json +2 -2
  6. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/locales/ru.json +2 -2
  7. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/locales/zh-Hans.json +2 -2
  8. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091/src/ha_mcp_dev.egg-info}/PKG-INFO +2 -2
  9. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/LICENSE +0 -0
  10. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/MANIFEST.in +0 -0
  11. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/setup.cfg +0 -0
  12. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/__init__.py +0 -0
  13. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/__main__.py +0 -0
  14. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/_pypi_marker +0 -0
  15. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/_version.py +0 -0
  16. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/auth/__init__.py +0 -0
  17. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/auth/consent_form.py +0 -0
  18. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/auth/provider.py +0 -0
  19. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/backup_manager.py +0 -0
  20. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/browser_landing.py +0 -0
  21. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/client/__init__.py +0 -0
  22. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/client/rest_client.py +0 -0
  23. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/client/supervisor_client.py +0 -0
  24. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/client/websocket_client.py +0 -0
  25. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/client/websocket_listener.py +0 -0
  26. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/config.py +0 -0
  27. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
  28. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
  29. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
  30. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
  31. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
  32. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
  33. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/errors.py +0 -0
  34. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/llm_exposure.py +0 -0
  35. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/__init__.py +0 -0
  36. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/approval_queue.py +0 -0
  37. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/evaluator.py +0 -0
  38. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/handlers.py +0 -0
  39. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/middleware.py +0 -0
  40. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/model.py +0 -0
  41. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/persistence.py +0 -0
  42. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/policy/value_sources.py +0 -0
  43. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/py.typed +0 -0
  44. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/read_only.py +0 -0
  45. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
  46. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
  47. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
  48. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
  49. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
  50. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
  51. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
  52. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
  53. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
  54. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
  55. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
  56. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
  57. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
  58. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
  59. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
  60. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
  61. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
  62. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
  63. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
  64. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
  65. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
  66. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
  67. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
  68. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
  69. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
  70. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/server.py +0 -0
  71. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/__init__.py +0 -0
  72. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
  73. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
  74. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
  75. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
  76. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
  77. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
  78. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_i18n.py +0 -0
  79. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_persistence.py +0 -0
  80. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
  81. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_theme.py +0 -0
  82. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
  83. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/locales/README.md +0 -0
  84. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/settings.css +0 -0
  85. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/settings.html +0 -0
  86. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/settings_ui/settings.js +0 -0
  87. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/smoke_test.py +0 -0
  88. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
  89. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/strict_bps.py +0 -0
  90. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/__init__.py +0 -0
  91. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/auto_backup.py +0 -0
  92. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/backup.py +0 -0
  93. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/best_practice_checker.py +0 -0
  94. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/component_api.py +0 -0
  95. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/component_config_reads.py +0 -0
  96. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/component_devices.py +0 -0
  97. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/component_registries.py +0 -0
  98. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
  99. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/config_entry_flow.py +0 -0
  100. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/device_control.py +0 -0
  101. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/enhanced.py +0 -0
  102. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/helpers.py +0 -0
  103. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/radio/__init__.py +0 -0
  104. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/radio/base.py +0 -0
  105. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/radio/matter.py +0 -0
  106. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/radio/thread.py +0 -0
  107. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/radio/zigbee.py +0 -0
  108. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/radio/zwave.py +0 -0
  109. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/reference_validator.py +0 -0
  110. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/registry.py +0 -0
  111. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
  112. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_base.py +0 -0
  113. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_config.py +0 -0
  114. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
  115. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
  116. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
  117. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
  118. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
  119. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
  120. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
  121. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_addons.py +0 -0
  122. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_areas.py +0 -0
  123. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_blueprints.py +0 -0
  124. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_bug_report.py +0 -0
  125. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_calendar.py +0 -0
  126. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_camera.py +0 -0
  127. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_categories.py +0 -0
  128. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_code.py +0 -0
  129. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_config_automations.py +0 -0
  130. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
  131. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
  132. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
  133. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
  134. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
  135. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_dev.py +0 -0
  136. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_energy.py +0 -0
  137. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_entities.py +0 -0
  138. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_filesystem.py +0 -0
  139. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_groups.py +0 -0
  140. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_hacs.py +0 -0
  141. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_history.py +0 -0
  142. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_integrations.py +0 -0
  143. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_labels.py +0 -0
  144. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_radio.py +0 -0
  145. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_registry.py +0 -0
  146. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_resources.py +0 -0
  147. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_search.py +0 -0
  148. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_service.py +0 -0
  149. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_services.py +0 -0
  150. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_system.py +0 -0
  151. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_themes.py +0 -0
  152. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_todo.py +0 -0
  153. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_traces.py +0 -0
  154. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_updates.py +0 -0
  155. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_utility.py +0 -0
  156. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
  157. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
  158. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_yaml_read.py +0 -0
  159. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/tools_zones.py +0 -0
  160. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/util_helpers.py +0 -0
  161. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/tools/validation_middleware.py +0 -0
  162. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/transforms/__init__.py +0 -0
  163. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/transforms/categorized_search.py +0 -0
  164. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
  165. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/transport_security.py +0 -0
  166. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/update_check.py +0 -0
  167. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/__init__.py +0 -0
  168. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/config_hash.py +0 -0
  169. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/data_paths.py +0 -0
  170. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/domain_handlers.py +0 -0
  171. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/fuzzy_search.py +0 -0
  172. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
  173. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/operation_manager.py +0 -0
  174. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/python_sandbox.py +0 -0
  175. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/skill_loader.py +0 -0
  176. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/utils/usage_logger.py +0 -0
  177. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/visibility/__init__.py +0 -0
  178. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/visibility/model.py +0 -0
  179. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/visibility/persistence.py +0 -0
  180. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp/visibility/resolver.py +0 -0
  181. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
  182. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
  183. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
  184. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
  185. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
  186. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/tests/__init__.py +0 -0
  187. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/tests/test_constants.py +0 -0
  188. {ha_mcp_dev-7.14.2.dev2089 → ha_mcp_dev-7.14.2.dev2091}/tests/test_env_manager.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ha-mcp-dev
3
- Version: 7.14.2.dev2089
3
+ Version: 7.14.2.dev2091
4
4
  Summary: Home Assistant MCP Server - Complete control of Home Assistant through MCP
5
5
  Author-email: Julien <github@qc-h.net>
6
6
  License: MIT
@@ -395,7 +395,7 @@ The proxy split lets MCP clients apply different permission policies per categor
395
395
 
396
396
  Leave it off when using Claude Sonnet/Opus or any client with deferred tool loading; the full catalog has no idle cost there and direct calls skip the search step. If you choose to use our toolsearch then you should disable the native Claude Opus/Sonnet toolsearch, which is called deferred tools in the settings.
397
397
 
398
- > 🔄 **Refresh your client's tool list after changing this (or any) setting.** Toggling `ENABLE_TOOL_SEARCH` (or changing pinned/disabled tools, Read Only Mode, etc.) changes the tools the server exposes, but your AI client keeps serving its **cached** tool list until it re-fetches. Restarting the add-on or Home Assistant does **not** refresh the client — reconnect or refresh the MCP server in your client (e.g. re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop). If you skip this, tools shown as available will return `Unknown tool` when called.
398
+ > 🔄 **Refresh your client's tool list after changing this (or any) setting.** Toggling `ENABLE_TOOL_SEARCH` (or changing pinned/disabled tools, Read Only Mode, etc.) changes the tools the server exposes, but your AI client keeps serving its **cached** tool list until it re-fetches. Restarting the add-on or Home Assistant does **not** refresh the client — reconnect or refresh the MCP server in your client (e.g. re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop). If you skip this, newly enabled tools won't appear in the client at all, and tools the server no longer exposes still show as available but return `Unknown tool` when called. ChatGPT sometimes keeps serving the stale list even after the connector is removed and re-added under the same name — if tools are still missing after re-adding, delete the connector and create a new one with a **different name**.
399
399
 
400
400
  For the HA add-on, the same option is documented in [`homeassistant-addon/DOCS.md`](homeassistant-addon/DOCS.md#enable_tool_search) along with the in-add-on settings UI for fine-grained tool enable/disable/pin.
401
401
 
@@ -362,7 +362,7 @@ The proxy split lets MCP clients apply different permission policies per categor
362
362
 
363
363
  Leave it off when using Claude Sonnet/Opus or any client with deferred tool loading; the full catalog has no idle cost there and direct calls skip the search step. If you choose to use our toolsearch then you should disable the native Claude Opus/Sonnet toolsearch, which is called deferred tools in the settings.
364
364
 
365
- > 🔄 **Refresh your client's tool list after changing this (or any) setting.** Toggling `ENABLE_TOOL_SEARCH` (or changing pinned/disabled tools, Read Only Mode, etc.) changes the tools the server exposes, but your AI client keeps serving its **cached** tool list until it re-fetches. Restarting the add-on or Home Assistant does **not** refresh the client — reconnect or refresh the MCP server in your client (e.g. re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop). If you skip this, tools shown as available will return `Unknown tool` when called.
365
+ > 🔄 **Refresh your client's tool list after changing this (or any) setting.** Toggling `ENABLE_TOOL_SEARCH` (or changing pinned/disabled tools, Read Only Mode, etc.) changes the tools the server exposes, but your AI client keeps serving its **cached** tool list until it re-fetches. Restarting the add-on or Home Assistant does **not** refresh the client — reconnect or refresh the MCP server in your client (e.g. re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop). If you skip this, newly enabled tools won't appear in the client at all, and tools the server no longer exposes still show as available but return `Unknown tool` when called. ChatGPT sometimes keeps serving the stale list even after the connector is removed and re-added under the same name — if tools are still missing after re-adding, delete the connector and create a new one with a **different name**.
366
366
 
367
367
  For the HA add-on, the same option is documented in [`homeassistant-addon/DOCS.md`](homeassistant-addon/DOCS.md#enable_tool_search) along with the in-add-on settings UI for fine-grained tool enable/disable/pin.
368
368
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ha-mcp-dev"
7
- version = "7.14.2.dev2089"
7
+ version = "7.14.2.dev2091"
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
@@ -21,7 +21,7 @@
21
21
  "tabs.policies": "Tool-Sicherheitsrichtlinien",
22
22
  "tabs.visibility": "Entitäts-Sichtbarkeit",
23
23
  "tabs.accessibility": "Barrierefreiheit",
24
- "notice.restart_required": "⚠ Änderungen gespeichert. Starte HA-MCP neu, damit sie wirksam werden. Beim nächsten Start entfernt HA-MCP deaktivierte Tools vollständig aus der MCP-Tool-Liste. Verbinde dann den MCP-Server in deinem KI-Client neu oder aktualisiere ihn (z. B. Tool-Liste auf claude.ai aktualisieren, Connector in ChatGPT erneut hinzufügen oder aktualisieren oder Claude Desktop schließen und neu öffnen), damit die Tool-Liste neu geladen wird. Das Neustarten des Add-ons oder von Home Assistant aktualisiert NICHT die vom Client zwischengespeicherte Tool-Liste.",
24
+ "notice.restart_required": "⚠ Änderungen gespeichert. Starte HA-MCP neu, damit sie wirksam werden. Beim nächsten Start entfernt HA-MCP deaktivierte Tools vollständig aus der MCP-Tool-Liste. Verbinde dann den MCP-Server in deinem KI-Client neu oder aktualisiere ihn (z. B. Tool-Liste auf claude.ai aktualisieren, Connector in ChatGPT erneut hinzufügen oder aktualisieren oder Claude Desktop schließen und neu öffnen), damit die Tool-Liste neu geladen wird. Das Neustarten des Add-ons oder von Home Assistant aktualisiert NICHT die vom Client zwischengespeicherte Tool-Liste. ChatGPT liefert die zwischengespeicherte Tool-Liste manchmal auch nach dem Entfernen und erneuten Hinzufügen des Connectors weiter aus — fehlen Tools weiterhin, lösche den Connector und lege ihn unter einem anderen Namen neu an.",
25
25
  "notice.shared_settings": "Server-weite Funktionen (Tool-Suche, YAML-Konfigurationsbearbeitung, Dateisystem-Tools usw.) erscheinen sowohl im Tab <strong>Server-Einstellungen</strong> als auch auf der Add-on-Konfigurationsseite; es sind dieselben Einstellungen. Beide Ansichten bleiben nach dem Neustart des Add-ons synchron. Änderungen erfordern einen Neustart von HA-MCP.",
26
26
  "notice.env_pins": "Tools, die in den Umgebungsvariablen <code>DISABLED_TOOLS</code> oder <code>PINNED_TOOLS</code> aufgeführt sind, sind schreibgeschützt gesperrt; hebe die Umgebungsvariable auf, um sie hier zu bearbeiten. Anheftungs-Toggles wirken nur, wenn die Tool-Suche aktiviert ist (Tab Server-Einstellungen oder Add-on-Konfigurationsseite).",
27
27
  "actions.restart_addon": "Add-on neu starten",
@@ -33,7 +33,7 @@
33
33
  "tools.read_only.help": "Schaltet alle Schreibtools aus und verhindert, dass Tools Schreib- oder destruktive Aufrufe tätigen. Gemischte Lese-/Schreib-Tools (Backups, Add-ons, Energiepräferenzen, Voice-Pipelines und Code-Modus, wenn aktiviert) bleiben verfügbar, wobei ihre Schreiboperationen blockiert sind.",
34
34
  "tools.read_only.unknown": "Server-Einstellungen konnten nicht gelesen werden. Status des Nur-Lese-Modus unbekannt; diese Ansicht spiegelt möglicherweise nicht wider, was der Server erzwingt.",
35
35
  "tools.search": "Tools durchsuchen...",
36
- "server.auto_save_notice": "Einstellungen auf diesem Tab werden automatisch gespeichert. Änderungen werden erst wirksam, nachdem du das Add-on neu gestartet hast (wendet sie serverseitig an) und die MCP-Server-Verbindung in deinem KI-Client neu verbindest oder aktualisierst (lädt die Tool-Liste neu), z. B. Tool-Liste auf claude.ai aktualisieren, Connector in ChatGPT erneut hinzufügen oder aktualisieren oder Claude Desktop schließen und neu öffnen.",
36
+ "server.auto_save_notice": "Einstellungen auf diesem Tab werden automatisch gespeichert. Änderungen werden erst wirksam, nachdem du das Add-on neu gestartet hast (wendet sie serverseitig an) und die MCP-Server-Verbindung in deinem KI-Client neu verbindest oder aktualisierst (lädt die Tool-Liste neu), z. B. Tool-Liste auf claude.ai aktualisieren, Connector in ChatGPT erneut hinzufügen oder aktualisieren oder Claude Desktop schließen und neu öffnen. ChatGPT liefert die zwischengespeicherte Tool-Liste manchmal auch nach dem Entfernen und erneuten Hinzufügen des Connectors weiter aus — fehlen Tools weiterhin, lösche den Connector und lege ihn unter einem anderen Namen neu an.",
37
37
  "server.sections.search": "Suche & Abgleich",
38
38
  "server.sections.operations": "Operationen",
39
39
  "server.sections.tool_surface": "Tool-Oberfläche",
@@ -21,7 +21,7 @@
21
21
  "tabs.policies": "Tool Security Policies",
22
22
  "tabs.visibility": "Entity Visibility",
23
23
  "tabs.accessibility": "Accessibility",
24
- "notice.restart_required": "⚠ Changes saved. Restart HA-MCP for them to take effect. On next startup, HA-MCP fully removes disabled tools from the MCP tool list. Then reconnect or refresh the MCP server in your AI client (e.g. refresh tool list on claude.ai, re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop) so it reloads the tool list. Restarting the App (add-on) or Home Assistant does NOT refresh your client's cached tool list.",
24
+ "notice.restart_required": "⚠ Changes saved. Restart HA-MCP for them to take effect. On next startup, HA-MCP fully removes disabled tools from the MCP tool list. Then reconnect or refresh the MCP server in your AI client (e.g. refresh tool list on claude.ai, re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop) so it reloads the tool list. Restarting the App (add-on) or Home Assistant does NOT refresh your client's cached tool list. ChatGPT sometimes keeps serving its cached tool list even after the connector is removed and re-added — if tools are still missing, delete the connector and create a new one under a different name.",
25
25
  "notice.shared_settings": "Server-wide features (Tool Search, YAML config editing, filesystem tools, etc.) appear in both the <strong>Server Settings</strong> tab and the App (add-on) Configuration page; they're the same settings either way. Either surface stays in sync with the other after the App (add-on) restarts. Changes require HA-MCP to be restarted.",
26
26
  "notice.env_pins": "Tools listed in the <code>DISABLED_TOOLS</code> or <code>PINNED_TOOLS</code> env vars are locked read-only; unset the env var to edit them here. Pin toggles only take effect when Tool Search is enabled (Server Settings tab or App (add-on) Configuration page).",
27
27
  "actions.restart_addon": "Restart App (add-on)",
@@ -33,7 +33,7 @@
33
33
  "tools.read_only.help": "Turns off all write tools and blocks every tool from making write or destructive calls. Mixed read/write tools (backups, Apps (add-ons), energy preferences, voice pipelines, and code mode when enabled) stay available with their write operations blocked.",
34
34
  "tools.read_only.unknown": "Could not read server settings. Read Only Mode status unknown; this view may not reflect what the server enforces.",
35
35
  "tools.search": "Search tools...",
36
- "server.auto_save_notice": "Settings on this tab save automatically. Changes take effect only after you restart the App (add-on) (applies them server-side) and reconnect or refresh the MCP server in your AI client (reloads the tool list), e.g. refresh tool list on claude.ai, re-add or refresh the connector in ChatGPT, or close and reopen Claude Desktop.",
36
+ "server.auto_save_notice": "Settings on this tab save automatically. Changes take effect only after you restart the App (add-on) (applies them server-side) and reconnect or refresh the MCP server in your AI client (reloads the tool list), e.g. refresh tool list on claude.ai, re-add or refresh the connector in ChatGPT, or close and reopen Claude Desktop. ChatGPT sometimes keeps serving its cached tool list even after the connector is removed and re-added — if tools are still missing, delete the connector and create a new one under a different name.",
37
37
  "server.sections.search": "Search & matching",
38
38
  "server.sections.operations": "Operations",
39
39
  "server.sections.tool_surface": "Tool surface",
@@ -21,7 +21,7 @@
21
21
  "tabs.policies": "Политики безопасности",
22
22
  "tabs.visibility": "Видимость сущностей",
23
23
  "tabs.accessibility": "Оформление и доступность",
24
- "notice.restart_required": "⚠ Изменения сохранены. Чтобы они вступили в силу, перезапустите HA-MCP. При следующем запуске HA-MCP полностью удалит отключённые инструменты из списка MCP. Затем переподключите или обновите MCP-сервер в клиенте ИИ, чтобы он заново загрузил список инструментов: обновите список на claude.ai, повторно добавьте или обновите коннектор в ChatGPT либо закройте и снова откройте Claude Desktop. Перезапуск приложения (дополнения) или Home Assistant НЕ обновляет список инструментов, сохранённый в кеше клиента.",
24
+ "notice.restart_required": "⚠ Изменения сохранены. Чтобы они вступили в силу, перезапустите HA-MCP. При следующем запуске HA-MCP полностью удалит отключённые инструменты из списка MCP. Затем переподключите или обновите MCP-сервер в клиенте ИИ, чтобы он заново загрузил список инструментов: обновите список на claude.ai, повторно добавьте или обновите коннектор в ChatGPT либо закройте и снова откройте Claude Desktop. Перезапуск приложения (дополнения) или Home Assistant НЕ обновляет список инструментов, сохранённый в кеше клиента. ChatGPT иногда продолжает использовать кешированный список инструментов даже после удаления и повторного добавления коннектора — если инструменты по-прежнему отсутствуют, удалите коннектор и создайте новый под другим именем.",
25
25
  "notice.shared_settings": "Общие серверные функции — поиск инструментов, редактирование YAML-конфигурации, работа с файлами и другие — отображаются и на вкладке <strong>Настройки сервера</strong>, и на странице конфигурации приложения (дополнения). Это одни и те же параметры. После перезапуска приложения обе страницы синхронизируются. Изменения требуют перезапуска HA-MCP.",
26
26
  "notice.env_pins": "Инструменты, перечисленные в переменных окружения <code>DISABLED_TOOLS</code> или <code>PINNED_TOOLS</code>, заблокированы от редактирования. Чтобы изменить их здесь, удалите инструмент из соответствующей переменной. Переключатели закрепления действуют только при включённом поиске инструментов — на вкладке настроек сервера или странице конфигурации приложения.",
27
27
  "actions.restart_addon": "Перезапустить приложение",
@@ -33,7 +33,7 @@
33
33
  "tools.read_only.help": "Отключает все инструменты записи и запрещает каждому инструменту выполнять изменяющие или разрушительные операции. Смешанные инструменты чтения и записи — резервные копии, приложения, параметры энергии, голосовые конвейеры и режим кода — остаются доступными, но их операции записи блокируются.",
34
34
  "tools.read_only.unknown": "Не удалось прочитать настройки сервера. Состояние режима только для чтения неизвестно; показанное значение может не соответствовать фактическим ограничениям сервера.",
35
35
  "tools.search": "Поиск инструментов...",
36
- "server.auto_save_notice": "Настройки на этой вкладке сохраняются автоматически. Изменения вступят в силу только после перезапуска приложения, который применит их на сервере, и повторного подключения или обновления MCP-сервера в клиенте ИИ, который заново загрузит список инструментов. Например, обновите список на claude.ai, повторно добавьте или обновите коннектор в ChatGPT либо закройте и снова откройте Claude Desktop.",
36
+ "server.auto_save_notice": "Настройки на этой вкладке сохраняются автоматически. Изменения вступят в силу только после перезапуска приложения, который применит их на сервере, и повторного подключения или обновления MCP-сервера в клиенте ИИ, который заново загрузит список инструментов. Например, обновите список на claude.ai, повторно добавьте или обновите коннектор в ChatGPT либо закройте и снова откройте Claude Desktop. ChatGPT иногда продолжает использовать кешированный список инструментов даже после удаления и повторного добавления коннектора — если инструменты по-прежнему отсутствуют, удалите коннектор и создайте новый под другим именем.",
37
37
  "server.sections.search": "Поиск и сопоставление",
38
38
  "server.sections.operations": "Операции",
39
39
  "server.sections.tool_surface": "Набор инструментов",
@@ -21,7 +21,7 @@
21
21
  "tabs.policies": "工具安全策略",
22
22
  "tabs.visibility": "实体可见性",
23
23
  "tabs.accessibility": "无障碍",
24
- "notice.restart_required": "⚠ 更改已保存。请重启 HA-MCP 使其生效。下次启动时,HA-MCP 会从 MCP 工具列表中彻底移除已禁用的工具。随后请在你的 AI 客户端中重新连接或刷新 MCP 服务器(例如在 claude.ai 上刷新工具列表、在 ChatGPT 中重新添加/刷新连接器,或关闭并重新打开 Claude Desktop)以重新加载工具列表。仅重启应用(插件)或 Home Assistant 不会刷新客户端缓存的工具列表。",
24
+ "notice.restart_required": "⚠ 更改已保存。请重启 HA-MCP 使其生效。下次启动时,HA-MCP 会从 MCP 工具列表中彻底移除已禁用的工具。随后请在你的 AI 客户端中重新连接或刷新 MCP 服务器(例如在 claude.ai 上刷新工具列表、在 ChatGPT 中重新添加/刷新连接器,或关闭并重新打开 Claude Desktop)以重新加载工具列表。仅重启应用(插件)或 Home Assistant 不会刷新客户端缓存的工具列表。ChatGPT 有时在删除并重新添加连接器后仍会继续使用缓存的工具列表——如果工具仍然缺失,请删除该连接器并用一个不同的名称重新创建。",
25
25
  "notice.shared_settings": "服务器级功能(工具搜索、YAML 配置编辑、文件系统工具等)会同时出现在<strong>服务器设置</strong>选项卡和应用(插件)配置页中;无论在哪里设置都是同一份配置。在应用(插件)重启后,两个入口会保持同步。更改需要重启 HA-MCP 才能生效。",
26
26
  "notice.env_pins": "列在 <code>DISABLED_TOOLS</code> 或 <code>PINNED_TOOLS</code> 环境变量中的工具被锁定为只读;取消该环境变量才能在此编辑。固定开关仅在启用工具搜索时生效(服务器设置选项卡或应用(插件)配置页)。",
27
27
  "actions.restart_addon": "重启应用(插件)",
@@ -33,7 +33,7 @@
33
33
  "tools.read_only.help": "关闭所有写入工具,并阻止任何工具进行写入或破坏性调用。读写混合工具(备份、应用(插件)、能源偏好、语音流水线,以及启用时的代码模式)仍可用,但其写入操作被阻止。",
34
34
  "tools.read_only.unknown": "无法读取服务器设置。只读模式状态未知;此视图可能无法反映服务器实际执行的策略。",
35
35
  "tools.search": "搜索工具…",
36
- "server.auto_save_notice": "此选项卡上的设置会自动保存。更改仅在重启应用(插件)(在服务端生效)并在你的 AI 客户端中重新连接或刷新 MCP 服务器(重新加载工具列表)后才会生效,例如在 claude.ai 上刷新工具列表、在 ChatGPT 中重新添加或刷新连接器,或关闭并重新打开 Claude Desktop。",
36
+ "server.auto_save_notice": "此选项卡上的设置会自动保存。更改仅在重启应用(插件)(在服务端生效)并在你的 AI 客户端中重新连接或刷新 MCP 服务器(重新加载工具列表)后才会生效,例如在 claude.ai 上刷新工具列表、在 ChatGPT 中重新添加或刷新连接器,或关闭并重新打开 Claude Desktop。ChatGPT 有时在删除并重新添加连接器后仍会继续使用缓存的工具列表——如果工具仍然缺失,请删除该连接器并用一个不同的名称重新创建。",
37
37
  "server.sections.search": "搜索与匹配",
38
38
  "server.sections.operations": "操作",
39
39
  "server.sections.tool_surface": "工具面",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ha-mcp-dev
3
- Version: 7.14.2.dev2089
3
+ Version: 7.14.2.dev2091
4
4
  Summary: Home Assistant MCP Server - Complete control of Home Assistant through MCP
5
5
  Author-email: Julien <github@qc-h.net>
6
6
  License: MIT
@@ -395,7 +395,7 @@ The proxy split lets MCP clients apply different permission policies per categor
395
395
 
396
396
  Leave it off when using Claude Sonnet/Opus or any client with deferred tool loading; the full catalog has no idle cost there and direct calls skip the search step. If you choose to use our toolsearch then you should disable the native Claude Opus/Sonnet toolsearch, which is called deferred tools in the settings.
397
397
 
398
- > 🔄 **Refresh your client's tool list after changing this (or any) setting.** Toggling `ENABLE_TOOL_SEARCH` (or changing pinned/disabled tools, Read Only Mode, etc.) changes the tools the server exposes, but your AI client keeps serving its **cached** tool list until it re-fetches. Restarting the add-on or Home Assistant does **not** refresh the client — reconnect or refresh the MCP server in your client (e.g. re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop). If you skip this, tools shown as available will return `Unknown tool` when called.
398
+ > 🔄 **Refresh your client's tool list after changing this (or any) setting.** Toggling `ENABLE_TOOL_SEARCH` (or changing pinned/disabled tools, Read Only Mode, etc.) changes the tools the server exposes, but your AI client keeps serving its **cached** tool list until it re-fetches. Restarting the add-on or Home Assistant does **not** refresh the client — reconnect or refresh the MCP server in your client (e.g. re-add/refresh the connector in ChatGPT, or close and reopen Claude Desktop). If you skip this, newly enabled tools won't appear in the client at all, and tools the server no longer exposes still show as available but return `Unknown tool` when called. ChatGPT sometimes keeps serving the stale list even after the connector is removed and re-added under the same name — if tools are still missing after re-adding, delete the connector and create a new one with a **different name**.
399
399
 
400
400
  For the HA add-on, the same option is documented in [`homeassistant-addon/DOCS.md`](homeassistant-addon/DOCS.md#enable_tool_search) along with the in-add-on settings UI for fine-grained tool enable/disable/pin.
401
401