LICENSE
MANIFEST.in
README.md
pyproject.toml
src/ha_mcp/__init__.py
src/ha_mcp/__main__.py
src/ha_mcp/_pypi_marker
src/ha_mcp/_version.py
src/ha_mcp/backup_manager.py
src/ha_mcp/browser_landing.py
src/ha_mcp/config.py
src/ha_mcp/errors.py
src/ha_mcp/llm_exposure.py
src/ha_mcp/py.typed
src/ha_mcp/read_only.py
src/ha_mcp/server.py
src/ha_mcp/smoke_test.py
src/ha_mcp/stdio_settings_sidecar.py
src/ha_mcp/strict_bps.py
src/ha_mcp/transport_security.py
src/ha_mcp/update_check.py
src/ha_mcp/auth/__init__.py
src/ha_mcp/auth/consent_form.py
src/ha_mcp/auth/provider.py
src/ha_mcp/client/__init__.py
src/ha_mcp/client/rest_client.py
src/ha_mcp/client/supervisor_client.py
src/ha_mcp/client/websocket_client.py
src/ha_mcp/client/websocket_listener.py
src/ha_mcp/dashboard_screenshot/__init__.py
src/ha_mcp/dashboard_screenshot/capture.py
src/ha_mcp/dashboard_screenshot/content.py
src/ha_mcp/dashboard_screenshot/paths.py
src/ha_mcp/dashboard_screenshot/provision.py
src/ha_mcp/dashboard_screenshot/theme_guard.py
src/ha_mcp/policy/__init__.py
src/ha_mcp/policy/approval_queue.py
src/ha_mcp/policy/evaluator.py
src/ha_mcp/policy/handlers.py
src/ha_mcp/policy/middleware.py
src/ha_mcp/policy/model.py
src/ha_mcp/policy/persistence.py
src/ha_mcp/policy/value_sources.py
src/ha_mcp/resources/skills-vendor/AGENTS.md
src/ha_mcp/resources/skills-vendor/CLAUDE.md
src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md
src/ha_mcp/resources/skills-vendor/LICENSE
src/ha_mcp/resources/skills-vendor/README.md
src/ha_mcp/resources/skills-vendor/.claude/settings.json
src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json
src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json
src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md
src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md
src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md
src/ha_mcp/settings_ui/__init__.py
src/ha_mcp/settings_ui/_handlers_advanced.py
src/ha_mcp/settings_ui/_handlers_backups.py
src/ha_mcp/settings_ui/_handlers_fs.py
src/ha_mcp/settings_ui/_handlers_server.py
src/ha_mcp/settings_ui/_handlers_theme.py
src/ha_mcp/settings_ui/_handlers_tools.py
src/ha_mcp/settings_ui/_i18n.py
src/ha_mcp/settings_ui/_persistence.py
src/ha_mcp/settings_ui/_supervisor.py
src/ha_mcp/settings_ui/_theme.py
src/ha_mcp/settings_ui/_tools_meta.py
src/ha_mcp/settings_ui/settings.css
src/ha_mcp/settings_ui/settings.html
src/ha_mcp/settings_ui/settings.js
src/ha_mcp/settings_ui/locales/README.md
src/ha_mcp/settings_ui/locales/de.json
src/ha_mcp/settings_ui/locales/en.json
src/ha_mcp/settings_ui/locales/es.json
src/ha_mcp/settings_ui/locales/fr.json
src/ha_mcp/settings_ui/locales/it.json
src/ha_mcp/settings_ui/locales/ru.json
src/ha_mcp/settings_ui/locales/zh-Hans.json
src/ha_mcp/tools/__init__.py
src/ha_mcp/tools/auto_backup.py
src/ha_mcp/tools/backup.py
src/ha_mcp/tools/best_practice_checker.py
src/ha_mcp/tools/component_api.py
src/ha_mcp/tools/component_config_reads.py
src/ha_mcp/tools/component_devices.py
src/ha_mcp/tools/component_registries.py
src/ha_mcp/tools/component_registry_lookup.py
src/ha_mcp/tools/config_entry_flow.py
src/ha_mcp/tools/device_control.py
src/ha_mcp/tools/helpers.py
src/ha_mcp/tools/reference_validator.py
src/ha_mcp/tools/registry.py
src/ha_mcp/tools/tool_search_hint_middleware.py
src/ha_mcp/tools/tools_addons.py
src/ha_mcp/tools/tools_areas.py
src/ha_mcp/tools/tools_blueprints.py
src/ha_mcp/tools/tools_bug_report.py
src/ha_mcp/tools/tools_calendar.py
src/ha_mcp/tools/tools_camera.py
src/ha_mcp/tools/tools_categories.py
src/ha_mcp/tools/tools_code.py
src/ha_mcp/tools/tools_config_automations.py
src/ha_mcp/tools/tools_config_dashboards.py
src/ha_mcp/tools/tools_config_helpers.py
src/ha_mcp/tools/tools_config_scenes.py
src/ha_mcp/tools/tools_config_scripts.py
src/ha_mcp/tools/tools_dashboard_screenshot.py
src/ha_mcp/tools/tools_dev.py
src/ha_mcp/tools/tools_energy.py
src/ha_mcp/tools/tools_entities.py
src/ha_mcp/tools/tools_filesystem.py
src/ha_mcp/tools/tools_groups.py
src/ha_mcp/tools/tools_hacs.py
src/ha_mcp/tools/tools_history.py
src/ha_mcp/tools/tools_integrations.py
src/ha_mcp/tools/tools_labels.py
src/ha_mcp/tools/tools_radio.py
src/ha_mcp/tools/tools_registry.py
src/ha_mcp/tools/tools_resources.py
src/ha_mcp/tools/tools_search.py
src/ha_mcp/tools/tools_service.py
src/ha_mcp/tools/tools_services.py
src/ha_mcp/tools/tools_system.py
src/ha_mcp/tools/tools_themes.py
src/ha_mcp/tools/tools_todo.py
src/ha_mcp/tools/tools_traces.py
src/ha_mcp/tools/tools_updates.py
src/ha_mcp/tools/tools_utility.py
src/ha_mcp/tools/tools_voice_assistant.py
src/ha_mcp/tools/tools_yaml_config.py
src/ha_mcp/tools/tools_yaml_read.py
src/ha_mcp/tools/tools_zones.py
src/ha_mcp/tools/util_helpers.py
src/ha_mcp/tools/validation_middleware.py
src/ha_mcp/tools/radio/__init__.py
src/ha_mcp/tools/radio/base.py
src/ha_mcp/tools/radio/matter.py
src/ha_mcp/tools/radio/thread.py
src/ha_mcp/tools/radio/zigbee.py
src/ha_mcp/tools/radio/zwave.py
src/ha_mcp/tools/smart_search/__init__.py
src/ha_mcp/tools/smart_search/_base.py
src/ha_mcp/tools/smart_search/_config.py
src/ha_mcp/tools/smart_search/_deep.py
src/ha_mcp/tools/smart_search/_entities.py
src/ha_mcp/tools/smart_search/_fetch.py
src/ha_mcp/tools/smart_search/_overview.py
src/ha_mcp/tools/smart_search/_scenes.py
src/ha_mcp/tools/smart_search/_scoring.py
src/ha_mcp/transforms/__init__.py
src/ha_mcp/transforms/categorized_search.py
src/ha_mcp/transforms/lite_docstrings.py
src/ha_mcp/utils/__init__.py
src/ha_mcp/utils/config_hash.py
src/ha_mcp/utils/config_write_lock.py
src/ha_mcp/utils/data_paths.py
src/ha_mcp/utils/domain_handlers.py
src/ha_mcp/utils/fuzzy_search.py
src/ha_mcp/utils/kill_signal_diagnostics.py
src/ha_mcp/utils/operation_manager.py
src/ha_mcp/utils/python_sandbox.py
src/ha_mcp/utils/skill_loader.py
src/ha_mcp/utils/usage_logger.py
src/ha_mcp/visibility/__init__.py
src/ha_mcp/visibility/enforcement.py
src/ha_mcp/visibility/model.py
src/ha_mcp/visibility/persistence.py
src/ha_mcp/visibility/resolver.py
src/ha_mcp_dev.egg-info/PKG-INFO
src/ha_mcp_dev.egg-info/SOURCES.txt
src/ha_mcp_dev.egg-info/dependency_links.txt
src/ha_mcp_dev.egg-info/entry_points.txt
src/ha_mcp_dev.egg-info/requires.txt
src/ha_mcp_dev.egg-info/top_level.txt
tests/__init__.py
tests/test_constants.py
tests/test_env_manager.py