- Added new schema definitions for Home Assistant management tools
- Included automation configuration management
- Added support for add-on, package, scene, and notification controls
- Integrated history retrieval for entity data
- Appended HACS documentation reference
- Implemented comprehensive Home Assistant system analysis tool
- Added multi-model support for OpenAI and DeepSeek language models
- Created detailed system, performance, security, and automation analysis capabilities
- Enhanced README with in-depth documentation of CLI features and usage
- Integrated advanced XML-based response parsing and intelligent insights generation
- Implemented flexible analysis modes: standard, custom prompt, and automation optimization
- Added comprehensive model configuration and selection mechanism
- Implemented dynamic model handling for OpenAI and DeepSeek providers
- Enhanced error handling and retry logic for API interactions
- Expanded system analysis with more detailed XML-based response parsing
- Updated configuration loading with improved model selection and validation
- Added colored logging and more informative console output
- Integrated new test suite for API endpoints
- Updated Jest configuration to handle .mts and .mjs file extensions
- Improved Jest resolver to better support ESM modules and @digital-alchemy packages
- Added comprehensive test coverage for AI router, Home Assistant integration, and WebSocket client
- Expanded test scenarios for error handling, event subscriptions, and service interactions
- Corrected package name from `jango-blockchained/homeassistant-mcp` to `homeassistant-mcp`
- Added `@types/supertest` and `supertest` for testing
- Updated package manager specification to Yarn 1.22.22
- Implemented comprehensive AI-driven system analysis using OpenAI's GPT-4
- Created interactive CLI tool for Home Assistant device and system insights
- Added support for standard and custom prompt-based analysis
- Integrated MCP server data collection with intelligent AI processing
- Updated package.json with new OpenAI and XML dependencies
- Enhanced README with detailed OpenAI integration documentation
- Implemented `/mcp/execute` endpoint for tool execution
- Added token-based authentication using HASS_TOKEN
- Supports dynamic tool selection and parameter passing
- Includes comprehensive error handling for unauthorized access and tool not found scenarios
- Provides flexible execution workflow with detailed response handling
- Implemented `/mcp` endpoint to expose server capabilities
- Created `src/mcp/schema.ts` with comprehensive tool and resource definitions
- Updated README.md with MCP Schema documentation
- Modified security middleware to allow unauthenticated access to schema endpoint
- Included detailed tool descriptions for list_devices, control, and event subscription
- Created Dockerfile for containerized deployment
- Added .dockerignore to optimize Docker build context
- Updated README with comprehensive Docker setup instructions
- Implemented new server endpoints:
* Health check endpoint
* Device listing
* Device control
* SSE event subscription
- Enhanced security middleware with request validation and input sanitization
- Added error handling and token-based authentication for new endpoints
- Added Express server with security middleware
- Implemented dynamic tool registration and API endpoint generation
- Enhanced logging with structured initialization messages
- Created centralized tools tracking for automatic endpoint discovery
- Added explicit Express server startup alongside MCP server
- Improved initialization logging with detailed endpoint information
- Created detailed test suite for Home Assistant WebSocket client
- Implemented tests for WebSocket connection, authentication, and error handling
- Added comprehensive test coverage for HassInstanceImpl API methods
- Mocked WebSocket and fetch to simulate various connection scenarios
- Covered authentication, state retrieval, service calls, and environment configuration
- Improved test infrastructure for Home Assistant integration
- Refactored and simplified Context Manager test cases
- Updated test scenarios for resource management, relationships, and event subscriptions
- Improved test readability and reduced test complexity
- Configured Jest to collect and report code coverage
- Added coverage thresholds and reporting options
- Refactored Jest configuration for improved ESM and TypeScript support
- Updated `jest.setup.ts` with comprehensive test environment configuration
- Enhanced mocking for WebSocket, console, and external dependencies
- Adjusted package.json dependencies and scripts
- Updated tsconfig.json with decorator and test exclusion settings
- Improved test coverage configuration and reporting
- Simplified test file structure and mocking strategies
- Created comprehensive SSE API documentation in `docs/SSE_API.md`
- Updated README.md with new features section highlighting SSE capabilities
- Added `.cursornotes` file for SSE subscription flow
- Provided detailed examples and usage guidelines for SSE integration
- Documented event types, authentication, and best practices for real-time updates
- Implemented comprehensive SSE manager with advanced client management
- Added dynamic event subscription and broadcasting capabilities
- Created robust rate limiting and client connection tracking
- Enhanced Home Assistant event handling with new SSE endpoints
- Updated package.json with UUID dependency for client identification
- Expanded test coverage for SSE and WebSocket event handling
- Improved type definitions for Home Assistant events and entities
- Created detailed API documentation for Home Assistant Model Context Protocol (MCP)
- Documented authentication, rate limiting, and security best practices
- Included comprehensive endpoint descriptions for:
* Natural Language Processing
* Device Control
* History
* Scenes
* Automations
* Add-ons
* Package Management
- Added WebSocket event handling and connection examples
- Provided error handling and response format guidelines
- Completely rewrote HassWebSocketClient with enhanced event handling and connection management
- Added environment-specific configuration support for Home Assistant connection
- Implemented robust WebSocket connection, authentication, and event subscription methods
- Created more flexible HassInstance interface with improved type definitions
- Added support for dynamic environment configuration and error handling
- Completely rewrote HassInstance class with fetch-based API methods
- Updated Home Assistant schemas to be more precise and flexible
- Removed deprecated test environment configuration file
- Enhanced WebSocket client implementation
- Improved test coverage for Home Assistant API and schema validation
- Simplified type definitions and error handling
- Created detailed test suite for Home Assistant schema validation
- Implemented schemas for entities, services, events, configurations, automations, and device controls
- Added robust validation for complex Home Assistant data structures
- Enhanced type safety and validation for Home Assistant-related interfaces
- Expanded schema definitions to support multiple use cases and edge scenarios
- Created detailed test suite for Home Assistant API interactions
- Implemented tests for API connection, state management, service calls, and event handling
- Added robust error handling and edge case scenarios for HASS API integration
- Mocked fetch and WebSocket to simulate various API response conditions
- Covered authentication, state retrieval, service invocation, and event subscription scenarios
- Introduced detailed test suites for security middleware components
- Added robust test coverage for token encryption, decryption, and validation
- Implemented comprehensive tests for input sanitization and error handling
- Created test scenarios for rate limiting and security header configurations
- Enhanced test infrastructure for security-related modules with edge case handling
- Introduced comprehensive NLP processing modules for intent classification, entity extraction, and context analysis
- Created AI router with rate-limited endpoints for command interpretation and execution
- Added prompt templates for different AI models with configurable system and user prompts
- Implemented robust type definitions for AI-related interfaces and schemas
- Enhanced security and error handling in AI processing pipeline
- Created `.env.test.example` with test environment variables
- Updated `jest.config.cjs` to simplify configuration and improve test setup
- Added `jest.setup.ts` to load and configure test environment variables
- Updated test files to use dynamic test environment configuration
- Enhanced README.md with additional configuration details for testing
- Updated test suite with more robust mocking for WebSocket and security modules
- Expanded test coverage for performance monitoring and optimization utilities
- Added detailed type definitions for WebSocket and test response interfaces
- Improved error handling and type safety in test scenarios
- Updated package dependencies to include WebSocket and security-related libraries
- Introduced WebSocket client for real-time Home Assistant event streaming
- Created context management system for tracking resource relationships and state
- Implemented performance monitoring and optimization utilities
- Added security middleware with token validation, rate limiting, and input sanitization
- Extended tool registry with enhanced tool registration and execution capabilities
- Expanded test coverage for new modules and added comprehensive test scenarios
- Improved type safety and added robust error handling across new modules
- Updated Jest configuration to support ESM and improve test coverage
- Added comprehensive test files for helpers, index, context, and HASS integration
- Configured coverage reporting and added new test scripts
- Updated Jest resolver to handle module resolution for chalk and related packages
- Introduced new test setup files for mocking and environment configuration
- Clarified Docker setup section, indicating that the setup is in progress and directing users to the `docker` branch for the latest changes.
- Added instructions to copy the `.env.example` file to `.env` for environment configuration.
- Enhanced clarity on configuring the environment variables in the `.env` file, emphasizing the need for user-specific values.
- Changed NODE_ENV from production to development for local testing.
- Updated HASS_HOST and HASS_SOCKET_URL to point to local Home Assistant instance.
- Added PORT and LOG_LEVEL variables for better control over application settings during development.
- Added sections for Docker containerization, Jest testing setup, TypeScript integration, and Home Assistant API integration.
- Improved organization of the "In Progress" and "Planned" sections, detailing ongoing and future enhancements.
- Expanded on custom prompt testing, macOS integration, type safety improvements, and testing coverage.
- Updated project documentation for better clarity and user guidance.
- Forked from tevonsb/homeassistant-mcp and added relevant badges for license, Node.js, Docker Compose, and NPM versions.
- Expanded the Table of Contents for easier navigation.
- Clarified prerequisites by specifying required tools and their versions.
- Improved installation instructions with formatted code blocks for better readability.
- Enhanced troubleshooting section with clearer issue descriptions and solutions.
- Updated command examples for consistency and added details for environment variable configuration.
- Removed the old `claude_desktop_setup.sh` script and replaced it with a new `claude-desktop-macos-setup.sh` script for improved installation and configuration of MCP integration on macOS.
- Enhanced Node.js installation process using Homebrew, ensuring compatibility with version 20.10.0 or higher.
- Added checks for required tools (npm, jq) and streamlined the configuration process, including optional Brave Search integration.
- Improved configuration file generation with better handling of environment variables and permissions.
- Updated user prompts and installation messages for clarity and guidance.