ha-mcp-dev 7.8.1.dev729__tar.gz → 7.8.1.dev730__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.8.1.dev729/src/ha_mcp_dev.egg-info → ha_mcp_dev-7.8.1.dev730}/PKG-INFO +1 -1
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/pyproject.toml +1 -1
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/__main__.py +25 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/LICENSE +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/MANIFEST.in +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/README.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/setup.cfg +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/read_only.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/settings.css +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/settings.js +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/settings_ui.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/backup.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/enhanced.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_addons.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_areas.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_blueprints.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_bug_report.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_calendar.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_camera.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_categories.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_code.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_automations.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_scenes.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_dashboard_screenshot.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_energy.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_entities.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_filesystem.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_groups.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_hacs.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_history.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_integrations.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_labels.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_mcp_component.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_registry.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_resources.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_search.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_service.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_services.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_system.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_themes.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_todo.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_traces.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_updates.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_utility.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_zones.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/python_sandbox.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/tests/__init__.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/tests/test_constants.py +0 -0
- {ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/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.8.1.
|
|
7
|
+
version = "7.8.1.dev730"
|
|
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.14"
|
|
@@ -993,6 +993,31 @@ def register_browser_landing(
|
|
|
993
993
|
"connector or MCP settings of your AI/LLM client. No username or password required.\n"
|
|
994
994
|
"Setup instructions: https://homeassistant-ai.github.io/ha-mcp/\n"
|
|
995
995
|
"\n"
|
|
996
|
+
"--- Seeing this page? Your URL is set up correctly ---\n"
|
|
997
|
+
"\n"
|
|
998
|
+
"If this page loads in your browser, the MCP server is reachable and the\n"
|
|
999
|
+
"URL is correct. If your AI client still cannot connect, the problem is\n"
|
|
1000
|
+
"not on HA-MCP's side. Common causes:\n"
|
|
1001
|
+
"\n"
|
|
1002
|
+
"- Geo / country blocking in your reverse proxy / CDN (Cloudflare, NGINX,\n"
|
|
1003
|
+
" Traefik, Zoraxy, etc.). Most AI/LLM services connect from US-based\n"
|
|
1004
|
+
" cloud infrastructure, so if you block US IP addresses (or only allow\n"
|
|
1005
|
+
" your own country), that is why your client cannot connect. Allow your\n"
|
|
1006
|
+
" provider's IP ranges (or your client's egress IPs). For example,\n"
|
|
1007
|
+
# Anthropic's documented outbound range; re-verify at
|
|
1008
|
+
# https://platform.claude.com/docs/en/api/ip-addresses if it ever changes.
|
|
1009
|
+
" Claude.ai connects from Anthropic's network, 160.79.104.0/21.\n"
|
|
1010
|
+
"- WAF, bot-blocking, or rate-limiting rules on the proxy that drop or\n"
|
|
1011
|
+
" challenge the request.\n"
|
|
1012
|
+
"- The AI client's network can sometimes be spotty -- you may just need\n"
|
|
1013
|
+
" to try connecting again.\n"
|
|
1014
|
+
"- The AI client itself refusing certain domains or proxy providers on\n"
|
|
1015
|
+
" its end. This is rare and outside your control; try a different\n"
|
|
1016
|
+
" hostname or proxy if you suspect it.\n"
|
|
1017
|
+
"\n"
|
|
1018
|
+
"Your proxy's access logs will show the blocked attempt -- look for the\n"
|
|
1019
|
+
"request from your AI provider's IP (e.g. an Anthropic 160.79.x.x address).\n"
|
|
1020
|
+
"\n"
|
|
996
1021
|
"--- Cloudflare Users ---\n"
|
|
997
1022
|
"\n"
|
|
998
1023
|
'If your LLM cannot connect, Cloudflare\'s "Block AI training bots"\n'
|
|
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.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/dashboard_screenshot/__init__.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/dashboard_screenshot/capture.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/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
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/AGENTS.md
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/CLAUDE.md
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/resources/skills-vendor/LICENSE
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/best_practice_checker.py
RENAMED
|
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.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_config.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_entities.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_overview.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_scenes.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/smart_search/_scoring.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tool_search_hint_middleware.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
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_automations.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_dashboards.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_helpers.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_config_scripts.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_dashboard_screenshot.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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/tools_voice_assistant.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/tools/validation_middleware.py
RENAMED
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/transforms/categorized_search.py
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/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
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp/utils/kill_signal_diagnostics.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{ha_mcp_dev-7.8.1.dev729 → ha_mcp_dev-7.8.1.dev730}/src/ha_mcp_dev.egg-info/entry_points.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|