ha-mcp-dev 7.2.0.dev324__tar.gz → 7.2.0.dev325__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. {ha_mcp_dev-7.2.0.dev324/src/ha_mcp_dev.egg-info → ha_mcp_dev-7.2.0.dev325}/PKG-INFO +1 -1
  2. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/pyproject.toml +1 -1
  3. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/util_helpers.py +0 -8
  4. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325/src/ha_mcp_dev.egg-info}/PKG-INFO +1 -1
  5. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/LICENSE +0 -0
  6. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/MANIFEST.in +0 -0
  7. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/README.md +0 -0
  8. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/setup.cfg +0 -0
  9. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/__init__.py +0 -0
  10. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/__main__.py +0 -0
  11. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/_pypi_marker +0 -0
  12. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/auth/__init__.py +0 -0
  13. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/auth/consent_form.py +0 -0
  14. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/auth/provider.py +0 -0
  15. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/client/__init__.py +0 -0
  16. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/client/rest_client.py +0 -0
  17. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/client/websocket_client.py +0 -0
  18. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/client/websocket_listener.py +0 -0
  19. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/config.py +0 -0
  20. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/errors.py +0 -0
  21. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/py.typed +0 -0
  22. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/.claude/settings.json +0 -0
  23. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/.claude-plugin/marketplace.json +0 -0
  24. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/.claude-plugin/plugin.json +0 -0
  25. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/.github/ISSUE_TEMPLATE/skill-rca.md +0 -0
  26. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/AGENTS.md +0 -0
  27. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/CLAUDE.md +0 -0
  28. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/CONTRIBUTING.md +0 -0
  29. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/LICENSE +0 -0
  30. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/README.md +0 -0
  31. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/SKILL.md +0 -0
  32. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/evals/evals.json +0 -0
  33. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/automation-patterns.md +0 -0
  34. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-cards.md +0 -0
  35. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/dashboard-guide.md +0 -0
  36. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/device-control.md +0 -0
  37. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/domain-docs.md +0 -0
  38. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/examples.yaml +0 -0
  39. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/helper-selection.md +0 -0
  40. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/safe-refactoring.md +0 -0
  41. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/resources/skills-vendor/skills/home-assistant-best-practices/references/template-guidelines.md +0 -0
  42. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/server.py +0 -0
  43. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/smoke_test.py +0 -0
  44. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/__init__.py +0 -0
  45. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/backup.py +0 -0
  46. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/best_practice_checker.py +0 -0
  47. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/device_control.py +0 -0
  48. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/enhanced.py +0 -0
  49. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/helpers.py +0 -0
  50. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/registry.py +0 -0
  51. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/smart_search.py +0 -0
  52. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_addons.py +0 -0
  53. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_areas.py +0 -0
  54. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_blueprints.py +0 -0
  55. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_bug_report.py +0 -0
  56. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_calendar.py +0 -0
  57. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_camera.py +0 -0
  58. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_categories.py +0 -0
  59. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_config_automations.py +0 -0
  60. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_config_dashboards.py +0 -0
  61. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_config_entry_flow.py +0 -0
  62. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_config_helpers.py +0 -0
  63. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_config_scripts.py +0 -0
  64. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_entities.py +0 -0
  65. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_filesystem.py +0 -0
  66. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_groups.py +0 -0
  67. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_hacs.py +0 -0
  68. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_history.py +0 -0
  69. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_integrations.py +0 -0
  70. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_labels.py +0 -0
  71. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_mcp_component.py +0 -0
  72. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_registry.py +0 -0
  73. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_resources.py +0 -0
  74. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_search.py +0 -0
  75. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_service.py +0 -0
  76. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_services.py +0 -0
  77. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_system.py +0 -0
  78. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_todo.py +0 -0
  79. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_traces.py +0 -0
  80. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_updates.py +0 -0
  81. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_utility.py +0 -0
  82. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_voice_assistant.py +0 -0
  83. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_yaml_config.py +0 -0
  84. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/tools/tools_zones.py +0 -0
  85. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/transforms/__init__.py +0 -0
  86. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/transforms/categorized_search.py +0 -0
  87. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/utils/__init__.py +0 -0
  88. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/utils/domain_handlers.py +0 -0
  89. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/utils/fuzzy_search.py +0 -0
  90. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/utils/operation_manager.py +0 -0
  91. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/utils/python_sandbox.py +0 -0
  92. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp/utils/usage_logger.py +0 -0
  93. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp_dev.egg-info/SOURCES.txt +0 -0
  94. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp_dev.egg-info/dependency_links.txt +0 -0
  95. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp_dev.egg-info/entry_points.txt +0 -0
  96. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp_dev.egg-info/requires.txt +0 -0
  97. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/src/ha_mcp_dev.egg-info/top_level.txt +0 -0
  98. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/tests/__init__.py +0 -0
  99. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/tests/test_constants.py +0 -0
  100. {ha_mcp_dev-7.2.0.dev324 → ha_mcp_dev-7.2.0.dev325}/tests/test_env_manager.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ha-mcp-dev
3
- Version: 7.2.0.dev324
3
+ Version: 7.2.0.dev325
4
4
  Summary: Home Assistant MCP Server - Complete control of Home Assistant through MCP
5
5
  Author-email: Julien <github@qc-h.net>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "ha-mcp-dev"
7
- version = "7.2.0.dev324"
7
+ version = "7.2.0.dev325"
8
8
  description = "Home Assistant MCP Server - Complete control of Home Assistant through MCP"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.13,<3.14"
@@ -327,8 +327,6 @@ async def wait_for_entity_registered(
327
327
  except (HomeAssistantConnectionError, HomeAssistantAuthError) as e:
328
328
  logger.warning(f"Connection/auth error polling {entity_id}: {e}")
329
329
  raise
330
- except Exception as e:
331
- logger.debug(f"Unexpected error polling {entity_id}: {e}")
332
330
  await asyncio.sleep(poll_interval)
333
331
  logger.warning(f"Entity {entity_id} not registered within {timeout}s")
334
332
  return False
@@ -373,8 +371,6 @@ async def wait_for_entity_removed(
373
371
  except (HomeAssistantConnectionError, HomeAssistantAuthError) as e:
374
372
  logger.warning(f"Connection/auth error polling {entity_id} removal: {e}")
375
373
  raise
376
- except Exception as e:
377
- logger.debug(f"Unexpected error polling {entity_id} removal: {e}")
378
374
  await asyncio.sleep(poll_interval)
379
375
  logger.warning(f"Entity {entity_id} still exists after {timeout}s")
380
376
  return False
@@ -421,8 +417,6 @@ async def wait_for_state_change(
421
417
  f"Connection/auth error fetching initial state for {entity_id}: {e}"
422
418
  )
423
419
  raise
424
- except Exception as e:
425
- logger.debug(f"Error fetching initial state for {entity_id}: {e}")
426
420
 
427
421
  start = time.monotonic()
428
422
  while time.monotonic() - start < timeout:
@@ -459,8 +453,6 @@ async def wait_for_state_change(
459
453
  except (HomeAssistantConnectionError, HomeAssistantAuthError) as e:
460
454
  logger.warning(f"Connection/auth error polling {entity_id} state: {e}")
461
455
  raise
462
- except Exception as e:
463
- logger.debug(f"Error polling {entity_id} state: {e}")
464
456
  await asyncio.sleep(poll_interval)
465
457
 
466
458
  logger.warning(f"Entity {entity_id} state did not change within {timeout}s")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ha-mcp-dev
3
- Version: 7.2.0.dev324
3
+ Version: 7.2.0.dev325
4
4
  Summary: Home Assistant MCP Server - Complete control of Home Assistant through MCP
5
5
  Author-email: Julien <github@qc-h.net>
6
6
  License: MIT