ha-mcp-dev 8.5.0.dev2737__tar.gz → 8.5.0.dev2742__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-8.5.0.dev2737/src/ha_mcp_dev.egg-info → ha_mcp_dev-8.5.0.dev2742}/PKG-INFO +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/pyproject.toml +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/az.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/cs.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/de.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/eo.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/es.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/fr.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/it.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/ko.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/nl.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/pl.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/ru.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/sv.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/zh-Hans.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/zh-Hant.json +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/backup.py +3 -5
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_addons.py +62 -75
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_areas.py +15 -17
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_assist_pipeline.py +12 -48
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_blueprints.py +20 -39
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_bug_report.py +29 -53
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_calendar.py +28 -131
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_camera.py +21 -42
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_categories.py +4 -12
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_code.py +44 -51
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_config_automations.py +64 -243
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_config_dashboards.py +78 -207
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_config_helpers.py +71 -138
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_config_scenes.py +19 -34
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_config_scripts.py +48 -187
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_dashboard_screenshot.py +6 -13
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_dev.py +9 -30
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_energy.py +47 -93
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_entities.py +68 -137
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_filesystem.py +40 -147
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_groups.py +19 -34
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_hacs.py +6 -13
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_history.py +40 -61
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_integrations.py +115 -202
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_labels.py +9 -20
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_logs.py +109 -83
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_radio.py +8 -7
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_registry.py +7 -12
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_resources.py +41 -108
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_search.py +79 -139
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_security_policy.py +2 -5
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_service.py +43 -81
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_services.py +24 -38
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_system.py +145 -169
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_themes.py +10 -16
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_todo.py +20 -70
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_traces.py +24 -56
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_updates.py +14 -24
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_utility.py +26 -73
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_voice_assistant.py +12 -18
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_yaml_config.py +24 -54
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_yaml_read.py +1 -2
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_zones.py +15 -26
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/transforms/component_search.py +3 -6
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/python_sandbox.py +0 -9
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/LICENSE +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/MANIFEST.in +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/setup.cfg +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/__main__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_pypi_marker +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_rich_compat.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/LICENSE +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/MANIFEST.sha256 +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/REQUIRES.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/VENDORED +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/_compat.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/_install_hints.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/_warnings.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/app.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/approval.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/choice.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/config.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/file_upload.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/form.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/apps/generative.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/__main__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/apps_dev.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/cimd.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/cli.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/authentication.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/command.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/configuration.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/credentials.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/horizon_client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/output.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/deploy/state.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/discovery.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/generate.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/claude_code.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/claude_desktop.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/cursor.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/gemini_cli.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/goose.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/mcp_json.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/shared.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/install/stdio.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/cli/run.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/_sdk_context_shim.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/auth/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/auth/bearer.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/auth/client_credentials.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/auth/oauth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/caching.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/dependencies.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/elicitation.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/extension_hooks.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/group.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/logging.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/messages.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/mixins/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/mixins/prompts.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/mixins/resources.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/mixins/tools.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/oauth_callback.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/progress.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/roots.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/sampling/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/anthropic.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/google_genai.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/sampling/handlers/openai.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/telemetry.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/config.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/http.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/inference.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/memory.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/sse.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/client/transports/stdio.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/bulk_tool_caller.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/bulk_tool_caller/example.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/component_manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/component_manager/example.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/example.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/contrib/mcp_mixin/mcp_mixin.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/decorators.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/dependencies.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/experimental/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/experimental/transforms/code_mode.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/mcp_config.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/prompts/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/prompts/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/prompts/function_prompt.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/py.typed +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/resources/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/resources/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/resources/function_resource.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/resources/security.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/resources/template.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/resources/types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/cimd.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/handlers/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/handlers/authorize.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/identity_assertion.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/jwt_issuer.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/middleware.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/consent.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/models.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/proxy.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/ui.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oauth_proxy/upstream.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/oidc_proxy.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/auth0.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/aws.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/azure.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/clerk.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/debug.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/descope.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/discord.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/github.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/google.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/huggingface.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/in_memory.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/introspection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/jwt.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/keycloak.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/oci.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/propelauth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/scalekit.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/supabase.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/providers/workos.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/redirect_validation.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/auth/ssrf.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/caching.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/completions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/dependencies.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/elicitation.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/event_store.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/extensions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/http.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/lifespan.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/low_level.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/authorization.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/caching.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/dereference.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/error_handling.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/logging.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/middleware.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/ping.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/rate_limiting.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/response_limiting.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/timing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/middleware/tool_injection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/mixins/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/mixins/lifespan.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/mixins/mcp_operations.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/mixins/transport.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/addressing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/aggregate.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/fastmcp_provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/filesystem.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/filesystem_discovery.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/prompts.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/resources.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/decorators/tools.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/local_provider/local_provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/components.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/openapi/routing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/prefab_payload.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/prefab_synthesis.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/proxy.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/_common.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/claude_provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/directory_provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/skill_provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/skills/vendor_providers.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/providers/wrapped_provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/session_scoped_event_store.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/sessions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/telemetry.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/catalog.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/namespace.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/prompts_as_tools.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/resources_as_tools.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/bm25.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/search/regex.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/tool_transform.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/version_filter.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/server/transforms/visibility.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/settings.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/telemetry.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/tools/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/tools/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/tools/function_parsing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/tools/function_tool.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/tools/tool_transform.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/asgi_transport.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/async_utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/authorization.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/cli.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/components.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/docstring_parsing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/http.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/inspect.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/json_schema.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/json_schema_type.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/lifespan.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/logging.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/environments/uv.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/mcp_server_config.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/schema.json +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mcp_server_config/v1/sources/filesystem.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/mime.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/director.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/formatters.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/json_schema_converter.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/models.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/parser.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/openapi/schemas.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/pagination.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/prefab.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/skills.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/tasks.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/tests.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/timeout.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/token_cache.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/ui.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/version_check.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/fastmcp/utilities/versions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/LICENSE +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/MANIFEST.sha256 +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/REQUIRES.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/VENDORED +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/cli/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/cli/claude.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/cli/cli.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/__main__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/_input_required.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/_memory.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/_probe.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/_transport.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/extensions/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/extensions/client_credentials.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/extensions/identity_assertion.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/oauth2.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/auth/utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/caching.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/extension.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/session.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/session_group.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/sse.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/stdio.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/streamable_http.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/client/subscriptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/os/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/os/posix/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/os/posix/utilities.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/os/win32/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/os/win32/utilities.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/py.typed +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/__main__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/_otel.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/_streamable_http_modern.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/apps.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/errors.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/handlers/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/handlers/authorize.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/handlers/metadata.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/handlers/register.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/handlers/revoke.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/handlers/token.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/json_response.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/middleware/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/middleware/auth_context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/middleware/bearer_auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/middleware/client_auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/routes.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/auth/settings.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/caching.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/connection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/elicitation.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/extension.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/fastmcp.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/lowlevel/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/lowlevel/helper_types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/lowlevel/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/prompts/manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/resolve.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/resource_manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/templates.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/resources/types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/tools/tool_manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/context_injection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/func_metadata.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/logging.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/mcpserver/utilities/types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/models.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/request_state.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/runner.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/session.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/sse.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/stdio.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/streamable_http.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/streamable_http_manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/subscriptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/transport_security.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/server/validation.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/_callable_inspection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/_compat.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/_context_streams.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/_httpx_utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/_otel.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/_stream_protocols.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/auth_utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/direct_dispatcher.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/dispatcher.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/extension.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/inbound.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/jsonrpc_dispatcher.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/memory.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/message.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/metadata_utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/path_security.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/peer.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/subscriptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/tool_name_validation.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/transport_context.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/shared/uri_template.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/types/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/types/jsonrpc.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/types/methods.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp/types/version.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/LICENSE +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/MANIFEST.sha256 +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/REQUIRES.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/VENDORED +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/_types.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/_v2025_11_25/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/_v2026_07_28/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/_wire_base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/jsonrpc.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/methods.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/py.typed +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/mcp_types/version.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/requirements.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/LICENSE +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/MANIFEST.sha256 +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/VENDORED +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/__main__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/asyncio/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/asyncio/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/asyncio/connection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/asyncio/messages.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/asyncio/router.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/asyncio/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/cli.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/connection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/datastructures.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/extensions/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/extensions/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/extensions/permessage_deflate.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/frames.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/headers.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/http11.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/imports.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/auth.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/exceptions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/framing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/handshake.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/http.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/protocol.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/legacy/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/protocol.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/proxy.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/py.typed +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/streams.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/connection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/messages.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/router.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/sync/utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/connection.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/messages.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/router.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/trio/utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/typing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/uri.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/utils.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_vendor/websockets/version.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/_version.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/auth/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/auth/consent_form.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/auth/oidc_compat.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/auth/provider.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/backup_manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/browser_landing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/client/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/client/rest_client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/client/supervisor_client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/client/websocket_client.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/client/websocket_listener.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/config.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/dashboard_screenshot/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/dashboard_screenshot/capture.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/dashboard_screenshot/content.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/dashboard_screenshot/paths.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/dashboard_screenshot/provision.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/dashboard_screenshot/theme_guard.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/errors.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/ha_request_queue.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/hacs_auto_refresh.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/http_transport.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/llm_exposure.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/log_filters.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/approval_queue.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/decision_pin.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/decisions.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/editing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/evaluator.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/events.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/handlers.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/middleware.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/model.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/persistence.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/policy/value_sources.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/py.typed +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/read_only.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/redaction.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/renamed_tools.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/.github/pull_request_template.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/area-target-over-entity-list/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/arrive-home-automation/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/assist-shortcut-card/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/avg-temperature/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/backup-deletion-confirmation/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/blueprint-authoring/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/button-event-entity/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/device-id-trigger-migration/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/helper-flow-fields-not-platform-yaml/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/media-player-song/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/motion-light-automation-mode/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/rename-entity-impact-analysis/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/template-attributes-yaml-exception/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/timer-finished-automation/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/evals/vacuum-last-clean/case.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/scripts/check_eval_cases.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/appdaemon.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/backups.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/blueprint-guide.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/scenes.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/yaml-only-integrations.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_handlers_advanced.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_handlers_backups.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_handlers_fs.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_handlers_server.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_handlers_theme.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_handlers_tools.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_i18n.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_locale_policy.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_persistence.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_supervisor.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_theme.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/_tools_meta.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/README.md +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/en.json +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/tlh.json +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/settings.css +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/settings.html +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/settings.js +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/smoke_test.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/stdio_settings_sidecar.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/strict_bps.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tool_dispatch.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/auto_backup.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/best_practice_checker.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/best_practice_result.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/best_practice_variables.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/blueprint_sources.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/blueprint_substitute.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/blueprint_write.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/bulk_selector.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_api.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_config_entries.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_config_reads.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_dashboard_edit.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_devices.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_registries.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/component_registry_lookup.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_flow.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_flow_form.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_flow_menu.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_flow_walker.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_identity.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_reconfigure.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/config_entry_reload_watch.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/dashboard_edit_errors.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/device_control.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/entity_registration.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/error_log_parsing.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/hacs_registration.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/helpers.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/integration_reconfigure.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/log_common.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/log_sources.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/log_sources_fault.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/log_sources_supervisor.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/radio/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/radio/base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/radio/matter.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/radio/thread.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/radio/zigbee.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/radio/zwave.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/reference_validator.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/registry.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/renamed_tool_middleware.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/scene_discovery.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_base.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_config.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_deep.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_entities.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_fetch.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_graph.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_overview.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_scenes.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/smart_search/_scoring.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tool_search_hint_middleware.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/util_helpers.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/validation_middleware.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/transforms/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/transforms/categorized_search.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/transforms/lite_docstrings.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/transforms/write_tool_note.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/transport_security.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/update_check.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/config_hash.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/config_write_lock.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/dashboard_patch.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/data_paths.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/device_registry_semantics.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/domain_handlers.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/entity_membership.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/fuzzy_search.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/kill_signal_diagnostics.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/mcp_client_host.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/operation_manager.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/registry_update_lock.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/skill_loader.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/utils/usage_logger.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/visibility/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/visibility/enforcement.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/visibility/model.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/visibility/persistence.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/visibility/resolver.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/tests/__init__.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/tests/test_constants.py +0 -0
- {ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/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 = "8.5.0.
|
|
7
|
+
version = "8.5.0.dev2742"
|
|
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
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/az.json
RENAMED
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
},
|
|
701
701
|
"ha_eval_template": {
|
|
702
702
|
"title": "Şablonu emal et",
|
|
703
|
-
"description": "Home Assistant
|
|
703
|
+
"description": "Home Assistant-də Jinja2 şablonunun render edilməsini və ya avtomatlaşdırma şərtinin yoxlanılmasını icra edin."
|
|
704
704
|
},
|
|
705
705
|
"ha_get_app": {
|
|
706
706
|
"title": "Tətbiqləri (əlavələri) al",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/cs.json
RENAMED
|
@@ -669,7 +669,7 @@
|
|
|
669
669
|
},
|
|
670
670
|
"ha_eval_template": {
|
|
671
671
|
"title": "Vyhodnotit šablonu",
|
|
672
|
-
"description": "
|
|
672
|
+
"description": "Provede vykreslení šablony Jinja2 nebo kontrolu podmínki automatizace v Home Assistant."
|
|
673
673
|
},
|
|
674
674
|
"ha_get_app": {
|
|
675
675
|
"title": "Získat aplikace (doplňky)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/de.json
RENAMED
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
},
|
|
701
701
|
"ha_eval_template": {
|
|
702
702
|
"title": "Template auswerten",
|
|
703
|
-
"description": "
|
|
703
|
+
"description": "Führe ein Jinja2-Template-Rendering oder eine Automatisierungs-Bedingungsprüfung in Home Assistant aus."
|
|
704
704
|
},
|
|
705
705
|
"ha_get_app": {
|
|
706
706
|
"title": "Apps (Add-ons) abrufen",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/eo.json
RENAMED
|
@@ -669,7 +669,7 @@
|
|
|
669
669
|
},
|
|
670
670
|
"ha_eval_template": {
|
|
671
671
|
"title": "Taksi Ŝablonon",
|
|
672
|
-
"description": "
|
|
672
|
+
"description": "Plenumi Jinja2-ŝablonan rendorigon, aŭ aŭtomatigan kondiĉan kontrolon, en Home Assistant."
|
|
673
673
|
},
|
|
674
674
|
"ha_get_app": {
|
|
675
675
|
"title": "Akiri programojn (aldonaĵojn)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/es.json
RENAMED
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
},
|
|
701
701
|
"ha_eval_template": {
|
|
702
702
|
"title": "Evaluar plantilla",
|
|
703
|
-
"description": "
|
|
703
|
+
"description": "Ejecuta una renderización de plantilla Jinja2, o una comprobación de condición de automatización, en Home Assistant."
|
|
704
704
|
},
|
|
705
705
|
"ha_get_app": {
|
|
706
706
|
"title": "Obtener Apps (add-ons)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/fr.json
RENAMED
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
},
|
|
701
701
|
"ha_eval_template": {
|
|
702
702
|
"title": "Évaluer le modèle",
|
|
703
|
-
"description": "
|
|
703
|
+
"description": "Exécute le rendu d'un modèle Jinja2 ou une vérification de condition d'automatisation dans Home Assistant."
|
|
704
704
|
},
|
|
705
705
|
"ha_get_app": {
|
|
706
706
|
"title": "Obtenir des applications (add-ons)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/it.json
RENAMED
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
},
|
|
701
701
|
"ha_eval_template": {
|
|
702
702
|
"title": "Valuta un template",
|
|
703
|
-
"description": "
|
|
703
|
+
"description": "Esegue il rendering di un template Jinja2 o un controllo delle condizioni di un'automazione in Home Assistant."
|
|
704
704
|
},
|
|
705
705
|
"ha_get_app": {
|
|
706
706
|
"title": "Ottieni app (componenti aggiuntivi)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/nl.json
RENAMED
|
@@ -669,7 +669,7 @@
|
|
|
669
669
|
},
|
|
670
670
|
"ha_eval_template": {
|
|
671
671
|
"title": "Evalueer Sjabloon",
|
|
672
|
-
"description": "
|
|
672
|
+
"description": "Voer een Jinja2-sjabloonweergave of een automatiseringsvoorwaardecontrole uit in Home Assistant."
|
|
673
673
|
},
|
|
674
674
|
"ha_get_app": {
|
|
675
675
|
"title": "Apps ophalen (add-ons)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/pl.json
RENAMED
|
@@ -669,7 +669,7 @@
|
|
|
669
669
|
},
|
|
670
670
|
"ha_eval_template": {
|
|
671
671
|
"title": "Oceń szablon",
|
|
672
|
-
"description": "
|
|
672
|
+
"description": "Wykonaj renderowanie szablonu Jinja2 lub sprawdź warunek automatyzacji w Home Assistant."
|
|
673
673
|
},
|
|
674
674
|
"ha_get_app": {
|
|
675
675
|
"title": "Pobierz aplikacje (dodatki)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/ru.json
RENAMED
|
@@ -700,7 +700,7 @@
|
|
|
700
700
|
},
|
|
701
701
|
"ha_eval_template": {
|
|
702
702
|
"title": "Вычислить шаблон",
|
|
703
|
-
"description": "
|
|
703
|
+
"description": "Выполнить рендеринг шаблона Jinja2 или проверку условия автоматизации в Home Assistant."
|
|
704
704
|
},
|
|
705
705
|
"ha_get_app": {
|
|
706
706
|
"title": "Получить приложения (аддоны)",
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/settings_ui/locales/sv.json
RENAMED
|
@@ -669,7 +669,7 @@
|
|
|
669
669
|
},
|
|
670
670
|
"ha_eval_template": {
|
|
671
671
|
"title": "Utvärdera Mall",
|
|
672
|
-
"description": "
|
|
672
|
+
"description": "Kör en Jinja2-mallrendering eller en automationsvillkorskontroll i Home Assistant."
|
|
673
673
|
},
|
|
674
674
|
"ha_get_app": {
|
|
675
675
|
"title": "Hämta appar (tillägg)",
|
|
@@ -1718,17 +1718,15 @@ survives an agent's own mistakes.
|
|
|
1718
1718
|
bool,
|
|
1719
1719
|
Field(
|
|
1720
1720
|
default=False,
|
|
1721
|
-
description="(snapshot.restore) Include database in the restore
|
|
1721
|
+
description="(snapshot.restore) Include the database in the restore; otherwise "
|
|
1722
|
+
"config only.",
|
|
1722
1723
|
),
|
|
1723
1724
|
] = False,
|
|
1724
1725
|
confirm: Annotated[
|
|
1725
1726
|
bool,
|
|
1726
1727
|
Field(
|
|
1727
1728
|
default=False,
|
|
1728
|
-
description=(
|
|
1729
|
-
"(snapshot.delete) Must be True to confirm deletion — a "
|
|
1730
|
-
"safety measure against accidental calls."
|
|
1731
|
-
),
|
|
1729
|
+
description=("(snapshot.delete) Must be True to confirm deletion."),
|
|
1732
1730
|
),
|
|
1733
1731
|
] = False,
|
|
1734
1732
|
# edits scope params
|
|
@@ -3759,8 +3759,7 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3759
3759
|
source: Annotated[
|
|
3760
3760
|
Literal["installed", "available"] | None,
|
|
3761
3761
|
Field(
|
|
3762
|
-
description="App (add-on) source
|
|
3763
|
-
"'available' for apps in the store that can be installed. "
|
|
3762
|
+
description="App (add-on) source. "
|
|
3764
3763
|
"With source='available', 'version' is the version you would "
|
|
3765
3764
|
"get by installing (Supervisor's version_latest) and "
|
|
3766
3765
|
"'version_installed' is the running one, null when the app is "
|
|
@@ -3772,7 +3771,7 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3772
3771
|
slug: Annotated[
|
|
3773
3772
|
str | None,
|
|
3774
3773
|
Field(
|
|
3775
|
-
description="App (add-on) slug
|
|
3774
|
+
description="App (add-on) slug (e.g., '<prefix>_nodered'). "
|
|
3776
3775
|
"Slug prefixes vary by app repository — omit to list all apps "
|
|
3777
3776
|
"and discover the actual installed slug.",
|
|
3778
3777
|
default=None,
|
|
@@ -3806,8 +3805,7 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3806
3805
|
``ha_manage_app``. Use ``slug`` for details, ``source="installed"`` for an
|
|
3807
3806
|
inventory, or ``source="available"`` for store discovery.
|
|
3808
3807
|
|
|
3809
|
-
Requires Home Assistant OS or Supervised.
|
|
3810
|
-
to installed-app listings.
|
|
3808
|
+
Requires Home Assistant OS or Supervised.
|
|
3811
3809
|
"""
|
|
3812
3810
|
return await tools.get_addon(
|
|
3813
3811
|
source=source,
|
|
@@ -3832,13 +3830,11 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3832
3830
|
slug: Annotated[
|
|
3833
3831
|
str,
|
|
3834
3832
|
Field(
|
|
3835
|
-
description="App (add-on) slug (e.g., '<prefix>_nodered', '<prefix>_frigate'). "
|
|
3836
|
-
"
|
|
3837
|
-
"
|
|
3838
|
-
"
|
|
3839
|
-
"
|
|
3840
|
-
"'repository' instead and take no slug, and the store-wide "
|
|
3841
|
-
"action (action='check_updates'), which takes neither.",
|
|
3833
|
+
description="App (add-on) slug (e.g., '<prefix>_nodered', '<prefix>_frigate'). Slug"
|
|
3834
|
+
" prefixes vary by app repository — call ha_get_app() to discover the "
|
|
3835
|
+
"actual installed slug. Required except for action='add_repository' / "
|
|
3836
|
+
"'remove_repository' (which take 'repository' instead) and "
|
|
3837
|
+
"action='check_updates' (which takes neither).",
|
|
3842
3838
|
default="",
|
|
3843
3839
|
),
|
|
3844
3840
|
] = "",
|
|
@@ -3847,14 +3843,14 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3847
3843
|
Field(
|
|
3848
3844
|
description="Proxy mode: API path relative to the app (add-on) root "
|
|
3849
3845
|
"(e.g., '/flows', '/api/events', '/api/stats'). "
|
|
3850
|
-
"Required for proxy mode
|
|
3846
|
+
"Required for proxy mode.",
|
|
3851
3847
|
default=None,
|
|
3852
3848
|
),
|
|
3853
3849
|
] = None,
|
|
3854
3850
|
method: Annotated[
|
|
3855
3851
|
str,
|
|
3856
3852
|
Field(
|
|
3857
|
-
description="Proxy mode only. HTTP method: GET, POST, PUT, DELETE, PATCH.
|
|
3853
|
+
description="Proxy mode only. HTTP method: GET, POST, PUT, DELETE, PATCH.",
|
|
3858
3854
|
default="GET",
|
|
3859
3855
|
),
|
|
3860
3856
|
] = "GET",
|
|
@@ -3868,25 +3864,25 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3868
3864
|
debug: Annotated[
|
|
3869
3865
|
bool,
|
|
3870
3866
|
Field(
|
|
3871
|
-
description="Proxy mode only. Include diagnostic info (request URL, headers sent,
|
|
3867
|
+
description="Proxy mode only. Include diagnostic info (request URL, headers sent, "
|
|
3868
|
+
"response headers).",
|
|
3872
3869
|
default=False,
|
|
3873
3870
|
),
|
|
3874
3871
|
] = False,
|
|
3875
3872
|
port: Annotated[
|
|
3876
3873
|
int | None,
|
|
3877
3874
|
Field(
|
|
3878
|
-
description="Proxy mode only. Connect to this port instead of the Ingress port. "
|
|
3879
|
-
"
|
|
3880
|
-
"Node-RED, reject direct access unless their leave_front_door_open
|
|
3881
|
-
"enabled and the app is restarted
|
|
3882
|
-
"security-qualified ha_manage_app options command.",
|
|
3875
|
+
description="Proxy mode only. Connect to this port instead of the Ingress port. Use"
|
|
3876
|
+
" ha_get_app(slug='...') to find available ports. Some apps, including "
|
|
3877
|
+
"Node-RED, reject direct access unless their leave_front_door_open "
|
|
3878
|
+
"option is enabled and the app is restarted.",
|
|
3883
3879
|
default=None,
|
|
3884
3880
|
),
|
|
3885
3881
|
] = None,
|
|
3886
3882
|
offset: Annotated[
|
|
3887
3883
|
int,
|
|
3888
3884
|
Field(
|
|
3889
|
-
description="Proxy mode only. HTTP: skip this many items in a JSON array response.
|
|
3885
|
+
description="Proxy mode only. HTTP: skip this many items in a JSON array response.",
|
|
3890
3886
|
default=0,
|
|
3891
3887
|
),
|
|
3892
3888
|
] = 0,
|
|
@@ -3900,10 +3896,9 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3900
3896
|
websocket: Annotated[
|
|
3901
3897
|
bool,
|
|
3902
3898
|
Field(
|
|
3903
|
-
description="Proxy mode only. Use WebSocket instead of HTTP for an app "
|
|
3904
|
-
"
|
|
3905
|
-
"responses; command names and body schemas are app/version-specific.
|
|
3906
|
-
"Default: false.",
|
|
3899
|
+
description="Proxy mode only. Use WebSocket instead of HTTP for an app (add-on) "
|
|
3900
|
+
"WebSocket API. Sends 'body' as the initial message and collects "
|
|
3901
|
+
"responses; command names and body schemas are app/version-specific.",
|
|
3907
3902
|
default=False,
|
|
3908
3903
|
),
|
|
3909
3904
|
] = False,
|
|
@@ -3911,9 +3906,9 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3911
3906
|
bool,
|
|
3912
3907
|
Field(
|
|
3913
3908
|
description="Proxy mode only. WebSocket: True waits for the server to close a "
|
|
3914
|
-
"run-to-completion stream. False returns after the first response
|
|
3915
|
-
"for one-shot command/response or bounded capture on a
|
|
3916
|
-
"
|
|
3909
|
+
"run-to-completion stream. False returns after the first response "
|
|
3910
|
+
"batch; use for one-shot command/response or bounded capture on a "
|
|
3911
|
+
"channel that stays open.",
|
|
3917
3912
|
default=True,
|
|
3918
3913
|
),
|
|
3919
3914
|
] = True,
|
|
@@ -3921,37 +3916,37 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
3921
3916
|
int | None,
|
|
3922
3917
|
Field(
|
|
3923
3918
|
description="Proxy mode only. WebSocket: cap on messages collected from the wire, "
|
|
3924
|
-
"bounded by an internal safety ceiling. None = collect up to the
|
|
3925
|
-
"
|
|
3919
|
+
"bounded by an internal safety ceiling. None = collect up to the "
|
|
3920
|
+
"ceiling.",
|
|
3926
3921
|
default=None,
|
|
3927
3922
|
),
|
|
3928
3923
|
] = None,
|
|
3929
3924
|
message_offset: Annotated[
|
|
3930
3925
|
int,
|
|
3931
3926
|
Field(
|
|
3932
|
-
description="Proxy mode only. WebSocket: drop this many messages from the start of
|
|
3933
|
-
"collected list before returning.
|
|
3927
|
+
description="Proxy mode only. WebSocket: drop this many messages from the start of "
|
|
3928
|
+
"the collected list before returning.",
|
|
3934
3929
|
default=0,
|
|
3935
3930
|
),
|
|
3936
3931
|
] = 0,
|
|
3937
3932
|
summarize: Annotated[
|
|
3938
3933
|
bool,
|
|
3939
3934
|
Field(
|
|
3940
|
-
description="Proxy mode only. WebSocket: when True
|
|
3941
|
-
"
|
|
3942
|
-
"
|
|
3935
|
+
description="Proxy mode only. WebSocket: when True, collapse runs of non-signal "
|
|
3936
|
+
"messages (typically YAML config dumps) into short elision markers. Set"
|
|
3937
|
+
" to False to return the raw stream.",
|
|
3943
3938
|
default=True,
|
|
3944
3939
|
),
|
|
3945
3940
|
] = True,
|
|
3946
3941
|
python_transform: Annotated[
|
|
3947
3942
|
str | None,
|
|
3948
3943
|
Field(
|
|
3949
|
-
description="Proxy mode only. Sandboxed Python expression that post-processes the
|
|
3950
|
-
"Variable `response` is exposed — a list[dict | str] for
|
|
3951
|
-
"or dict/list/str for HTTP (parsed
|
|
3952
|
-
"(response.append(...)) or
|
|
3953
|
-
"Example: response = [m for m in
|
|
3954
|
-
"
|
|
3944
|
+
description="Proxy mode only. Sandboxed Python expression that post-processes the "
|
|
3945
|
+
"response. Variable `response` is exposed — a list[dict | str] for "
|
|
3946
|
+
"WebSocket (parsed JSON or raw text), or dict/list/str for HTTP (parsed"
|
|
3947
|
+
" body). Supports in-place mutation (response.append(...)) or "
|
|
3948
|
+
"reassignment (response = [...]). Example: response = [m for m in "
|
|
3949
|
+
"response if 'ERROR' in str(m)].",
|
|
3955
3950
|
default=None,
|
|
3956
3951
|
),
|
|
3957
3952
|
] = None,
|
|
@@ -4032,26 +4027,18 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
4032
4027
|
description="Lifecycle mode: run a Supervisor app (add-on) action. One of "
|
|
4033
4028
|
"'install', 'uninstall', 'start', 'stop', 'restart', 'rebuild', "
|
|
4034
4029
|
"'update'. 'install'/'update' require the app's repository to be "
|
|
4035
|
-
"registered (it appears in ha_get_app(source='available'))
|
|
4036
|
-
"
|
|
4037
|
-
"
|
|
4038
|
-
"
|
|
4039
|
-
"Store-wide mode: 'check_updates'
|
|
4040
|
-
"Supervisor re-scans its repositories
|
|
4041
|
-
"
|
|
4042
|
-
"'repository', refreshes available metadata only, and installs "
|
|
4043
|
-
"
|
|
4044
|
-
"
|
|
4045
|
-
"
|
|
4046
|
-
"
|
|
4047
|
-
"changed but whose version did not. Returns 'changed' and "
|
|
4048
|
-
"'updates_available', each null (not empty) if the store "
|
|
4049
|
-
"could not be read to measure it — check 'warnings'. "
|
|
4050
|
-
"When ha-mcp runs as an app, it can update other apps but cannot "
|
|
4051
|
-
"update its own running slug; update ha-mcp from the Home Assistant "
|
|
4052
|
-
"Apps UI. "
|
|
4053
|
-
"Mutually exclusive with path / config parameters / array_patch. "
|
|
4054
|
-
"HA OS / Supervised only.",
|
|
4030
|
+
"registered (it appears in ha_get_app(source='available')); 'rebuild' "
|
|
4031
|
+
"is for a local app whose source changed but whose version did not. "
|
|
4032
|
+
"Store-repository mode: 'add_repository' / 'remove_repository' register"
|
|
4033
|
+
" or unregister a custom app store repository — these use the "
|
|
4034
|
+
"'repository' param instead of 'slug'. Store-wide mode: 'check_updates'"
|
|
4035
|
+
" reloads the store so Supervisor re-scans its repositories (e.g. after"
|
|
4036
|
+
" editing a local app's config.yaml) — it takes neither 'slug' nor "
|
|
4037
|
+
"'repository', refreshes available metadata only, and installs nothing;"
|
|
4038
|
+
" follow with action='update' for a newer version, or action='rebuild' "
|
|
4039
|
+
"for a local app whose source changed without a version change. Returns"
|
|
4040
|
+
" 'changed' and 'updates_available', null when the store could not be "
|
|
4041
|
+
"read (see 'warnings').",
|
|
4055
4042
|
default=None,
|
|
4056
4043
|
),
|
|
4057
4044
|
] = None,
|
|
@@ -4071,24 +4058,24 @@ def register_addon_tools(mcp: Any, client: HomeAssistantClient, **kwargs: Any) -
|
|
|
4071
4058
|
"""Manage Home Assistant apps (add-ons) or proxy an app API.
|
|
4072
4059
|
|
|
4073
4060
|
For app inventory, status, and Supervisor metadata, call ``ha_get_app``
|
|
4074
|
-
first; use proxy mode here for documented app-specific read APIs
|
|
4075
|
-
|
|
4076
|
-
and use ``ha_get_skill_guide`` for complex Home Assistant workflows.
|
|
4061
|
+
first; use proxy mode here for documented app-specific read APIs, and
|
|
4062
|
+
do not infer private app API schemas.
|
|
4077
4063
|
|
|
4078
4064
|
Use exactly one mode: lifecycle/store action, configuration fields,
|
|
4079
4065
|
``path`` proxy, or ``path`` with ``array_patch``.
|
|
4080
4066
|
|
|
4081
|
-
Requires Home Assistant OS or Supervised.
|
|
4082
|
-
|
|
4083
|
-
|
|
4084
|
-
|
|
4085
|
-
Ingress: direct-port access requires
|
|
4086
|
-
require weakening the target app
|
|
4087
|
-
lifecycle, configuration, or repository
|
|
4088
|
-
verify durable state with ``ha_get_app``
|
|
4089
|
-
prove whether ``restart`` or ``rebuild``
|
|
4090
|
-
and logs and do not automatically replay
|
|
4091
|
-
write, query the target app's own read
|
|
4067
|
+
Requires Home Assistant OS or Supervised. When ha-mcp itself runs as an
|
|
4068
|
+
app it cannot update its own running slug; update ha-mcp from the Home
|
|
4069
|
+
Assistant Apps UI. ``options`` merges top-level keys and one nested
|
|
4070
|
+
mapping level; supply complete values for deeper nested mappings
|
|
4071
|
+
because they are replaced. Prefer Ingress: direct-port access requires
|
|
4072
|
+
a shared container network and may require weakening the target app
|
|
4073
|
+
authentication. If a Supervisor lifecycle, configuration, or repository
|
|
4074
|
+
write has an unknown outcome, verify durable state with ``ha_get_app``
|
|
4075
|
+
before retrying. That cannot prove whether ``restart`` or ``rebuild``
|
|
4076
|
+
ran; inspect Supervisor jobs and logs and do not automatically replay
|
|
4077
|
+
them. For a proxy or array-patch write, query the target app's own read
|
|
4078
|
+
API before retrying.
|
|
4092
4079
|
"""
|
|
4093
4080
|
return await tools.manage_addon(
|
|
4094
4081
|
slug=slug,
|
|
@@ -285,12 +285,10 @@ class AreaTools:
|
|
|
285
285
|
Field(
|
|
286
286
|
default=None,
|
|
287
287
|
description=(
|
|
288
|
-
"Return only the specified top-level response keys to reduce "
|
|
289
|
-
'
|
|
290
|
-
"
|
|
291
|
-
"
|
|
292
|
-
"unassigned_count, orphaned_count, floors, unassigned_areas, "
|
|
293
|
-
"orphaned_areas, message."
|
|
288
|
+
"Return only the specified top-level response keys to reduce response "
|
|
289
|
+
'size (e.g. ["floors"]). None = full response. Available keys: success,'
|
|
290
|
+
" floor_count, area_count, unassigned_count, orphaned_count, floors, "
|
|
291
|
+
"unassigned_areas, orphaned_areas, message."
|
|
294
292
|
),
|
|
295
293
|
),
|
|
296
294
|
] = None,
|
|
@@ -300,11 +298,11 @@ class AreaTools:
|
|
|
300
298
|
Field(
|
|
301
299
|
default=None,
|
|
302
300
|
description=(
|
|
303
|
-
"Project each area record (in floors[].areas, unassigned_areas, "
|
|
304
|
-
'
|
|
305
|
-
|
|
306
|
-
"
|
|
307
|
-
"
|
|
301
|
+
"Project each area record (in floors[].areas, unassigned_areas, and "
|
|
302
|
+
'orphaned_areas) to only the specified keys. E.g. ["area_id", "name"] '
|
|
303
|
+
"returns slim area records. None = full records. Unknown keys yield "
|
|
304
|
+
"empty records. Available keys: area_id, name, icon, floor_id, aliases,"
|
|
305
|
+
" picture, labels."
|
|
308
306
|
),
|
|
309
307
|
),
|
|
310
308
|
] = None,
|
|
@@ -312,7 +310,7 @@ class AreaTools:
|
|
|
312
310
|
"""
|
|
313
311
|
List floors sorted by level ascending, each with their assigned areas nested, plus areas without a floor.
|
|
314
312
|
|
|
315
|
-
Use for location-based reasoning where floor-to-area relationships matter, such as "which rooms are on the ground floor" or operations scoped to a level.
|
|
313
|
+
Use for location-based reasoning where floor-to-area relationships matter, such as "which rooms are on the ground floor" or operations scoped to a level.
|
|
316
314
|
|
|
317
315
|
Floors with level=None sort alongside level 0 (ground floor). Areas without a floor assignment appear in unassigned_areas; areas whose floor_id points to a non-existent floor appear in orphaned_areas. When the ha_mcp_tools component's registries capability is available, both registries come from a single in-process snapshot, so this classification is always consistent. Without it (legacy path), the two registries are fetched via independent WebSocket calls and a registry change between reads may transiently misclassify an area.
|
|
318
316
|
"""
|
|
@@ -755,21 +753,21 @@ class AreaTools:
|
|
|
755
753
|
id: Annotated[ # noqa: A002
|
|
756
754
|
str | None,
|
|
757
755
|
Field(
|
|
758
|
-
description="Existing area_id or floor_id to update (
|
|
756
|
+
description="Existing area_id or floor_id to update (use ha_list_floors_areas to find IDs)",
|
|
759
757
|
default=None,
|
|
760
758
|
),
|
|
761
759
|
] = None,
|
|
762
760
|
floor_id: Annotated[
|
|
763
761
|
str | None,
|
|
764
762
|
Field(
|
|
765
|
-
description="Floor assignment when kind='area' (use empty string to clear).
|
|
763
|
+
description="Floor assignment when kind='area' (use empty string to clear).",
|
|
766
764
|
default=None,
|
|
767
765
|
),
|
|
768
766
|
] = None,
|
|
769
767
|
level: Annotated[
|
|
770
768
|
int | None,
|
|
771
769
|
Field(
|
|
772
|
-
description="Numeric level when kind='floor' (0=ground, 1=first, -1=basement).
|
|
770
|
+
description="Numeric level when kind='floor' (0=ground, 1=first, -1=basement).",
|
|
773
771
|
default=None,
|
|
774
772
|
),
|
|
775
773
|
] = None,
|
|
@@ -791,7 +789,7 @@ class AreaTools:
|
|
|
791
789
|
picture: Annotated[
|
|
792
790
|
str | None,
|
|
793
791
|
Field(
|
|
794
|
-
description="Picture URL when kind='area' (empty string to remove).
|
|
792
|
+
description="Picture URL when kind='area' (empty string to remove).",
|
|
795
793
|
default=None,
|
|
796
794
|
),
|
|
797
795
|
] = None,
|
|
@@ -802,7 +800,7 @@ class AreaTools:
|
|
|
802
800
|
description=(
|
|
803
801
|
"Label IDs when kind='area' (replaces the area's label set; "
|
|
804
802
|
"empty list to clear). Omit to leave labels unchanged. "
|
|
805
|
-
"
|
|
803
|
+
"Floors have no labels."
|
|
806
804
|
),
|
|
807
805
|
default=None,
|
|
808
806
|
),
|
{ha_mcp_dev-8.5.0.dev2737 → ha_mcp_dev-8.5.0.dev2742}/src/ha_mcp/tools/tools_assist_pipeline.py
RENAMED
|
@@ -565,9 +565,7 @@ class AssistPipelineTools:
|
|
|
565
565
|
Field(
|
|
566
566
|
description=(
|
|
567
567
|
"Natural-language command to run through Assist. Required when "
|
|
568
|
-
"action='process'.
|
|
569
|
-
"built-in agent a sentence matching a conversation trigger "
|
|
570
|
-
"runs that automation."
|
|
568
|
+
"action='process'."
|
|
571
569
|
),
|
|
572
570
|
default=None,
|
|
573
571
|
),
|
|
@@ -695,8 +693,8 @@ class AssistPipelineTools:
|
|
|
695
693
|
bool,
|
|
696
694
|
Field(
|
|
697
695
|
description=(
|
|
698
|
-
"For create/update only, also set the resulting pipeline as "
|
|
699
|
-
"
|
|
696
|
+
"For create/update only, also set the resulting pipeline as preferred. "
|
|
697
|
+
"Ignored for other actions."
|
|
700
698
|
),
|
|
701
699
|
default=False,
|
|
702
700
|
),
|
|
@@ -719,53 +717,19 @@ class AssistPipelineTools:
|
|
|
719
717
|
this to test what Assist itself understands. When the built-in agent
|
|
720
718
|
answers, a matching conversation trigger runs its automation: that
|
|
721
719
|
agent checks its sentence triggers before it matches intents, so this
|
|
722
|
-
is not limited to intents. pipeline_id
|
|
723
|
-
|
|
724
|
-
agent directly. So with an agent other than the built-in one, neither
|
|
720
|
+
is not limited to intents. Even with pipeline_id, the sentence goes
|
|
721
|
+
to the agent directly. So with an agent other than the built-in one, neither
|
|
725
722
|
sentence triggers nor prefer_local_intents apply — a full pipeline run
|
|
726
723
|
is what adds those for other agents.
|
|
727
724
|
|
|
728
725
|
EXAMPLES:
|
|
729
|
-
-
|
|
730
|
-
-
|
|
731
|
-
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
- Create by cloning a specific pipeline: ha_manage_pipeline(
|
|
737
|
-
action="create",
|
|
738
|
-
base_pipeline_id="preferred",
|
|
739
|
-
name="Local Assist",
|
|
740
|
-
conversation_engine="conversation.local_llm",
|
|
741
|
-
)
|
|
742
|
-
- Update conversation agent and clear TTS voice: ha_manage_pipeline(
|
|
743
|
-
action="update",
|
|
744
|
-
pipeline_id="preferred",
|
|
745
|
-
conversation_engine="conversation.local_llm",
|
|
746
|
-
tts_voice="",
|
|
747
|
-
)
|
|
748
|
-
- Set preferred: ha_manage_pipeline(
|
|
749
|
-
action="set_preferred",
|
|
750
|
-
pipeline_id="preferred",
|
|
751
|
-
)
|
|
752
|
-
- Run a sentence: ha_manage_pipeline(
|
|
753
|
-
action="process",
|
|
754
|
-
sentence="turn on the kitchen light",
|
|
755
|
-
)
|
|
756
|
-
- Run it through one pipeline's agent: ha_manage_pipeline(
|
|
757
|
-
action="process",
|
|
758
|
-
sentence="turn on the kitchen light",
|
|
759
|
-
pipeline_id="preferred",
|
|
760
|
-
)
|
|
761
|
-
- Continue a conversation: ha_manage_pipeline(
|
|
762
|
-
action="process",
|
|
763
|
-
sentence="and the hallway?",
|
|
764
|
-
conversation_id="<id from the previous response>",
|
|
765
|
-
)
|
|
766
|
-
|
|
767
|
-
Empty string clears nullable STT/TTS/wake-word fields. Non-nullable
|
|
768
|
-
fields such as name, language, conversation_language, and
|
|
726
|
+
- Get the preferred pipeline: ha_manage_pipeline(action="get", pipeline_id="preferred")
|
|
727
|
+
- Create by cloning a pipeline: ha_manage_pipeline(action="create", base_pipeline_id="preferred", name="Local Assist", conversation_engine="conversation.local_llm")
|
|
728
|
+
- Update the agent and clear the TTS voice: ha_manage_pipeline(action="update", pipeline_id="preferred", conversation_engine="conversation.local_llm", tts_voice="")
|
|
729
|
+
- Run a sentence through one pipeline's agent: ha_manage_pipeline(action="process", sentence="turn on the kitchen light", pipeline_id="preferred")
|
|
730
|
+
- Continue a conversation: ha_manage_pipeline(action="process", sentence="and the hallway?", conversation_id="<id from the previous response>")
|
|
731
|
+
|
|
732
|
+
Non-nullable fields such as name, language, conversation_language, and
|
|
769
733
|
conversation_engine must be omitted or non-empty.
|
|
770
734
|
"""
|
|
771
735
|
try:
|