Skip to content

Conversation

@xizhibei
Copy link
Contributor

No description provided.

if (searchResult.cancelled) {
return this.cancelledResult();
}
serverId = searchResult.serverId;
@xizhibei xizhibei force-pushed the feat/mcp-server-commands branch from 38ac261 to dd55b0f Compare November 18, 2025 14:41
- Implemented `install` command to install MCP servers from the registry, including options for force installation and dry runs.
- Added `uninstall` command to remove MCP servers, with options for backup and configuration removal.
- Enhanced command setup with appropriate validation and error handling.
- Introduced utility functions for server name parsing and validation.
- Added tests for both commands to ensure functionality and reliability.
- Updated documentation to reflect new command capabilities.
…ed error handling

- Added version format validation to the `installCommand`, ensuring proper semantic versioning.
- Updated tests for the `installCommand` to cover new validation scenarios, including invalid version formats and existing server checks.
- Enhanced progress tracking during installation, including backup creation and configuration reloading.
- Refactored server configuration handling in the `ServerInstallationService` to validate and persist configurations.
- Improved error handling in the `updateCommand` to throw errors instead of exiting the process.
- Added new utility functions for server validation and configuration management.
- Updated documentation to reflect changes in command behavior and validation logic.
- Added a new `search` command to the MCP CLI, allowing users to search for MCP servers in the registry.
- The `search` command is now an alias for the registry search, with enhanced options for filtering by category, tag, and limit.
- Implemented comprehensive integration tests for the search command, verifying delegation to the registry search and handling of various query scenarios.
- Removed outdated lifecycle tests and refactored existing tests to ensure coverage for the new search functionality.
- Updated the CLI test runner to support the new search command, ensuring consistent command execution across tests.
… and local name derivation

- Refactored the `installCommand` to validate the registry server ID format and derive a valid local server name from it.
- Updated logging to provide clearer information about the parsed registry server ID and derived local server name.
- Enhanced error handling for installation failures, including detailed context in error messages.
- Modified the `ServerInstallationService` to accept the registry server ID and local server name as parameters for installation.
- Added utility functions for validating server ID format and deriving local server names.
- Updated tests to cover new validation scenarios and ensure proper functionality of the installation process.
- Updated the `install` command to support an interactive wizard for guided server installation when no server name is provided.
- Enhanced the `buildInstallCommand` to include an optional `interactive` flag, allowing users to launch the wizard.
- Introduced the `InstallWizard` class to manage the interactive installation process, including server selection and configuration.
- Added utility functions for rendering server details and managing keyboard input during the wizard.
- Implemented comprehensive tests for the `InstallWizard` to ensure functionality and reliability.
- Updated documentation to reflect the new interactive installation feature and its usage.
- Updated test cases in `searchHandler.test.ts` and `mcpRegistryClient.test.ts` to reflect changes in the registry server ID from 'file-server-1' to 'file-server'.
- Adjusted expected API endpoint versions in `mcpRegistryClient.test.ts` to use 'v0.1' instead of 'v0'.
- Added a debug logging function in `install.test.ts` to improve test output visibility.
@xizhibei xizhibei force-pushed the feat/mcp-server-commands branch from dd55b0f to 83e3d6b Compare November 27, 2025 14:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants