This commit renames the package from hanzo-dev-mcp to hanzo-mcp and refactors the codebase to reflect the expanded purpose of the MCP server. Key changes include:
- Renamed package and module (dev_mcp → hanzo_mcp)
- Updated server description to emphasize Platform API access
- Changed default server name (hanzo-dev → hanzo)
- Updated entry point and CLI commands
- Updated README with new configuration examples
- Fixed all imports and references in tests
This aligns with the shift from a development-only tool to a more general-purpose MCP server that can access Hanzo APIs and Cloud Platform services.
- Standardize import statements by removing unnecessary parentheses and line breaks
- Adjust function signatures and docstrings for better readability
- Fix indentation and spacing in test files to follow consistent patterns
- Reformat multi-line statements and expressions for clarity
- Remove trailing whitespace and ensure consistent line endings
Removed unused imports across multiple files including `os`, `json`, `time`, `pathlib.Path`, `pytest`, and `unittest.mock.patch`.
Cleaned up redundant variable assignments in `CommandExecutor` and removed unnecessary f-strings in log messages.
This improves code readability and reduces unnecessary dependencies.
This commit introduces type hints to all test methods across multiple test files. The type hints provide explicit information about the expected types of function parameters and return values, enhancing code readability and enabling better static analysis. This change aligns with Python's gradual typing approach and helps catch potential type-related issues early in the development process. The affected test files include:
- tests/test_cli.py
- tests/test_common/test_context.py
- tests/test_common/test_hidden_files.py
- tests/test_common/test_permissions.py
- tests/test_executors.py
- tests/test_filesystem/test_file_operations.py
- tests/test_project/test_analysis.py
- tests/test_server.py
- tests/test_shell/test_command_executor.py
The type hints have been added to test methods, fixtures, and helper functions, ensuring consistent typing throughout the test suite. This change does not modify the actual test logic but improves the overall code quality and maintainability.
- Add new `project_manager` fixture to `tests/conftest.py` for testing
- Update test assertions in `tests/test_cli.py` to clarify mode parameter behavior
- Refactor imports and improve code formatting in `tests/test_common/test_context.py`
- Refactor imports and improve code formatting in `tests/test_common/test_permissions.py`
- Enhance test coverage for `ScriptExecutor` in `tests/test_executors.py` with additional edge cases and improved mocking
- Update test setup in `tests/test_filesystem/test_file_operations.py` to handle tool registration more robustly
- Update test setup in `tests/test_project/test_analysis.py` to handle tool registration more robustly
- Improve server initialization tests in `tests/test_server.py` with better mocking and path handling
- Update command executor tests in `tests/test_shell/test_command_executor.py` with more precise assertions
Added a full suite of test files to cover the functionality of various project components including:
- CLI module tests
- Common context and permissions tests
- Command executor tests
- File operations tests
- Project analysis tests
- Server tests
- Shell command tests
Each test file includes unit tests for the corresponding module, covering core functionality, error handling, and edge cases. The tests utilize pytest fixtures and mocks to simulate different scenarios and ensure proper behavior of the code.
This extensive test suite will help maintain code quality, catch regressions, and ensure the reliability of the project as it evolves.