Mac Shell MCP Server
by cfdude
Verified
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.0.4] - 2025-03-12
### Added
- Added documentation for using the MCP server with npx
- Included instructions for publishing the package to npm
- Provided configuration examples for both Roo Code and Claude Desktop using npx
## [1.0.3] - 2025-03-12
### Fixed
- Improved documentation for Claude Desktop configuration which uses boolean value for `alwaysAllow`
- Added separate configuration examples for Roo Code and Claude Desktop
- Clarified that Roo Code uses array format while Claude Desktop uses boolean format
- Added explicit note that the `alwaysAllow` parameter is processed by the MCP client, not the server
## [1.0.2] - 2025-03-12
### Fixed
- Fixed MCP configuration format to use an empty array `[]` for `alwaysAllow` instead of `false`
- Updated all configuration examples in README.md to use the correct format
- Fixed error "Invalid config: missing or invalid parameters" when adding to MCP settings
## [1.0.1] - 2025-03-12
### Added
- Support for using the server as an npm package with npx
- Added bin field to package.json for CLI usage
- Improved MCP configuration instructions for Roo Code and Claude Desktop
- Added examples for using with npx directly from GitHub
## [1.0.0] - 2025-03-12
### Added
- Initial release of the Mac Shell MCP Server
- Command execution service with ZSH shell support
- Command whitelisting system with three security levels:
- Safe commands (no approval required)
- Commands requiring approval
- Forbidden commands
- Pre-configured whitelist with common safe commands
- Approval workflow for potentially dangerous commands
- MCP tools for command execution and whitelist management:
- `execute_command`: Execute shell commands
- `get_whitelist`: Get the list of whitelisted commands
- `add_to_whitelist`: Add a command to the whitelist
- `update_security_level`: Update a command's security level
- `remove_from_whitelist`: Remove a command from the whitelist
- `get_pending_commands`: Get commands pending approval
- `approve_command`: Approve a pending command
- `deny_command`: Deny a pending command
- Comprehensive test suite for the command service
- Example client implementation
- Documentation and configuration examples