ha-mcp-dev 7.13.0.dev2031__tar.gz → 7.13.0.dev2035__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.
- {ha_mcp_dev-7.13.0.dev2031/src/ha_mcp_dev.egg-info → ha_mcp_dev-7.13.0.dev2035}/PKG-INFO +1 -1
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/pyproject.toml +1 -1
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/read_only.py +7 -4
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_yaml_read.py +23 -1
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/LICENSE +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/MANIFEST.in +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/README.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/setup.cfg +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/__main__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/browser_landing.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/llm_exposure.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_i18n.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_persistence.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_theme.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/README.md +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/de.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/en.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/ru.json +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/settings.css +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/settings.html +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/settings.js +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/strict_bps.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/backup.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_api.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_config_reads.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_devices.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_registries.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/enhanced.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/radio/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/radio/base.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/radio/matter.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/radio/thread.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/radio/zigbee.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/radio/zwave.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_addons.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_areas.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_blueprints.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_bug_report.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_calendar.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_camera.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_categories.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_code.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_automations.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_dev.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_energy.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_entities.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_filesystem.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_groups.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_hacs.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_history.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_integrations.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_labels.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_radio.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_registry.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_resources.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_search.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_service.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_services.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_system.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_themes.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_todo.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_traces.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_updates.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_utility.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_zones.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/transport_security.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/python_sandbox.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/visibility/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/visibility/model.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/visibility/persistence.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/visibility/resolver.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/tests/__init__.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/tests/test_constants.py +0 -0
- {ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/tests/test_env_manager.py +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "ha-mcp-dev"
|
|
7
|
-
version = "7.13.0.
|
|
7
|
+
version = "7.13.0.dev2035"
|
|
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
|
|
@@ -66,9 +66,11 @@ class ReadOnlyExemption(NamedTuple):
|
|
|
66
66
|
def _backup_write(args: dict[str, Any]) -> str | None:
|
|
67
67
|
scope = args.get("scope")
|
|
68
68
|
action = args.get("action")
|
|
69
|
-
# Read-only-safe: per-edit backup listing/viewing, and snapshot listing
|
|
69
|
+
# Read-only-safe: per-edit backup listing/viewing/diffing, and snapshot listing
|
|
70
70
|
# (issue #1586 — pure ``backup/info`` read, no tarball mutation).
|
|
71
|
-
|
|
71
|
+
# ``diff`` (added in #1632) only reads the stored snapshot and fetches
|
|
72
|
+
# the live config to compare; it never mutates (issue #1944).
|
|
73
|
+
if scope == "edits" and action in ("list", "view", "diff"):
|
|
72
74
|
return None
|
|
73
75
|
if scope == "snapshot" and action == "list":
|
|
74
76
|
return None
|
|
@@ -195,8 +197,9 @@ READ_ONLY_EXEMPT_TOOLS: dict[str, ReadOnlyExemption] = {
|
|
|
195
197
|
),
|
|
196
198
|
"ha_manage_backup": ReadOnlyExemption(
|
|
197
199
|
_backup_write,
|
|
198
|
-
"listing and
|
|
199
|
-
"'view') and listing snapshots
|
|
200
|
+
"listing, viewing, and diffing per-edit backups (scope='edits', "
|
|
201
|
+
"action='list', 'view', or 'diff') and listing snapshots "
|
|
202
|
+
"(scope='snapshot', action='list')",
|
|
200
203
|
),
|
|
201
204
|
"ha_manage_addon": ReadOnlyExemption(
|
|
202
205
|
_addon_write,
|
|
@@ -82,6 +82,28 @@ def _failure_text(payload: dict[str, Any]) -> str:
|
|
|
82
82
|
return str(error or "read failed")
|
|
83
83
|
|
|
84
84
|
|
|
85
|
+
def _parse_error_result(
|
|
86
|
+
target: str, yaml_path: str, parse_error: str, *, is_glob: bool
|
|
87
|
+
) -> tuple[None, str]:
|
|
88
|
+
"""Decide a file the component could not parse: raise for a single target.
|
|
89
|
+
|
|
90
|
+
A single explicit target has no siblings to salvage, so a parse failure
|
|
91
|
+
raises rather than soft-degrading to a warning that reads as "key absent".
|
|
92
|
+
Under a glob it stays a per-file warning so one broken file does not sink
|
|
93
|
+
the whole search.
|
|
94
|
+
"""
|
|
95
|
+
if not is_glob:
|
|
96
|
+
raise_tool_error(
|
|
97
|
+
create_error_response(
|
|
98
|
+
ErrorCode.CONFIG_INVALID,
|
|
99
|
+
f"{target} could not be parsed as YAML: {parse_error}",
|
|
100
|
+
suggestions=[f"Fix the YAML syntax error in {target} and retry."],
|
|
101
|
+
context={"file": target, "yaml_path": yaml_path},
|
|
102
|
+
)
|
|
103
|
+
)
|
|
104
|
+
return None, f"{target} was not searched: {parse_error}."
|
|
105
|
+
|
|
106
|
+
|
|
85
107
|
def _evaluate_read(
|
|
86
108
|
response: Any,
|
|
87
109
|
target: str,
|
|
@@ -125,7 +147,7 @@ def _evaluate_read(
|
|
|
125
147
|
|
|
126
148
|
parse_error = unwrapped.get("parse_error")
|
|
127
149
|
if parse_error:
|
|
128
|
-
return
|
|
150
|
+
return _parse_error_result(target, yaml_path, str(parse_error), is_glob=is_glob)
|
|
129
151
|
|
|
130
152
|
if unwrapped.get("subtree") is None:
|
|
131
153
|
return None, None
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/supervisor_client.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/websocket_client.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/client/websocket_listener.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/capture.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/content.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/paths.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/dashboard_screenshot/provision.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/AGENTS.md
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/CLAUDE.md
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/LICENSE
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/resources/skills-vendor/README.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_advanced.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_backups.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_fs.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_server.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_theme.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_handlers_tools.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_persistence.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_supervisor.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/_tools_meta.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/README.md
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/de.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/en.json
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/locales/ru.json
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/settings_ui/settings.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/stdio_settings_sidecar.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/best_practice_checker.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_config_reads.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_devices.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/component_registries.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/config_entry_flow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/reference_validator.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_base.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_config.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_deep.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_entities.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_fetch.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_overview.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_scenes.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/smart_search/_scoring.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_blueprints.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_bug_report.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_categories.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_automations.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_dashboards.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_helpers.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_scenes.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_config_scripts.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_filesystem.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_integrations.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_voice_assistant.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/tools_yaml_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/tools/validation_middleware.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/transforms/categorized_search.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/transforms/lite_docstrings.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/kill_signal_diagnostics.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/utils/operation_manager.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp/visibility/persistence.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/requires.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.13.0.dev2031 → ha_mcp_dev-7.13.0.dev2035}/src/ha_mcp_dev.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|