Releases: wonderwhy-er/DesktopCommanderMCP
Hotfix release v0.2.5
Cursor fix
Fixes #177
Works in cursor now:

Few other changes, fix client detection, add MSeeP badge, update faq/readme with new tools, docker, privacy information
Release Notes v0.2.4
🚀 New Features
Cross-OS Interactive Terminal Support(SSH, REPL, etc)
- New: REPL and interactive terminal functionality for things like SSH, Python and Node REPL and almost anything else
- New: Now DC can start, read and interact with processes
- New: Now instead of running new terminal with each command it can reuse single terminal session for many things
- New: It also allows it to run code in memory to do things like parsing and working with Excel or PDF files among many other things
- Improved: OS-specific prompt adjustments for better user experience
Usage Analytics & Feedback System
- New:
get_usage_statstool for sharing your usage statistics, these are not sent anywhere, its for you - New:
give_feedback_to_desktop_commandertool for streamlined user feedback collection, give us feedback - New: User will be prompted once to share feedback after moderate amount of usage
Docker Environment Compatibility
- New: We can be installed from https://hub.docker.com/r/mcp/desktop-commander
- Fixed: Bug fix with shell commands fixed so it fully works now
- TODO: - add installation instructions with mounted folders + improve Windows compatibility
⚡ Improvements
Advanced File Operations
- New: Support for negative file reads (tail-like behavior)
- New: Enhanced file reading with offset/length parameters for large files
- New: Improved file operation responses with better formatting
Search & Performance Optimizations
- New: Smart truncation for large search results
- New: Better handling of oversized responses to prevent timeouts
- New: Optimized search performance across different file types
Cross-Platform Stability
- Fixed: Enhanced Windows compatibility issues
- Fixed: Improved shell execution across different operating systems
- Fixed: Better handling of environment-specific commands and paths
Release Notes - v0.2.3
🚀 New Features & Enhancements
File Read Improvements
- Negative Offset Support: Added support for reading files from the end using negative offsets (tail-like behavior)
- Use
offset: -20to read the last 20 lines of a file - Optimized for large files with efficient reverse reading
- Use
- Enhanced File Reading Performance: Improved handling of large files with better byte estimation for deep positive offsets
Tool Enhancements
- Analytics Update: Minor tool calling analytics improvements
- Improved Chunked Writing: Better prompts and guidance for writing large files in chunks
- Enhanced Edit Block: Improved surgical text replacement functionality
Desktop Commander v0.2.1 Release Notes
Small fixes:
- improved work with lines and asking for lines beyond file end, should work better now
- add ability to ask for current version so users can be calm that they are on latest one
- improvement of telemetry for file operations to track issues and usage
Desktop Commander v0.2.0 Release Notes
🚀 What's New in This Release
🔍 Major Features
📄 Line-Based File Operations
Line-Based Reading
- Upgraded from character-based to line-based file reading for faster, clearer access.
- Introduced
offsetandlengthparameters to precisely control line selection. - Default read limit set to 1000 lines (customizable via
fileReadLineLimit). - Displays line count summaries when reading partial content.
Chunked File Writing
-
New support for writing files in defined chunks.
-
Enforces a write limit of 50 lines per operation for improved reliability (configurable).
-
Added
modeparameter with options:rewrite(default): Replace the entire file.append: Add new content to the file's end.
-
Automatically flags files that exceed limits with clear warnings and helpful suggestions.
✏️ Smarter Edit Block Functionality
Streamlined Prompts
- Tool descriptions now guide users to make focused, incremental edits.
- Encourages using smaller context windows for more accurate changes.
Enhanced Error Feedback
-
When no exact match is found,
edit_blocknow:- Highlights changes using
{−removed−}{+added+}format. - Displays similarity scores and execution time.
- Offers precise suggestions to improve matching success.
- Highlights changes using
📜 Comprehensive Tool Audit Logging
Tool Call Logging
-
All tool interactions are now recorded with:
- Timestamps
- Tool name
- Arguments (anonymized for privacy)
Log Management
- Automatic log rotation at 10MB to keep operations lightweight.
- Built-in file size validation ensures safer processing.
💻 Usability Upgrades
- Tool Reference Shortcut: Use
DC: ...to quickly refer to tools in Claude responses. - Telemetry Control: New prompt ensures users can easily opt out of telemetry tracking.
- Improved Fuzzy Matching in
edit_blockwith detailed diagnostic feedback. - Clearer Messaging: File operations now include line counts and detailed status updates.
⚙️ Configurable Settings
New parameters available:
fileReadLineLimit: Max lines per read (default: 1000)fileWriteLineLimit: Max lines per write (default: 50)
Change with a simple command:
set_config_value("fileReadLineLimit", 2000)
set_config_value("fileWriteLineLimit", 100)This update delivers more precision, reliability, and transparency across your file operations and edit workflows. Dive in and streamline your experience.
v0.1.39
Hotfix #0.1.39 released
Turned out edit_block did not work well with CRLFs, aka \n\r style of new lines
Edit blocks no longer choke on Windows CRLFs! We now auto-detect & normalize line endings—smooth edits, every time. 🚀✨
Relesse 0.1.37 Telemetry opt out and rewritten file edit + sponsorship
Exciting news everyone!
The new version of Desktop Commander has been released! 🚀
What's new?
• We completely rewrote the editing tool, so now edit is smarter, will consume fewer tokens, and never falls back to rewriting the full document.
• For those concerned about privacy, we have implemented a telemetry opt-out option through configuration. We will show you how to do this.
Project Sustainability
We have also been considering the monetization of the project since we want to work on this full-time.
We decided not to pursue a dual license for this repository, so Desktop Commander will remain free! 🎉
Instead of dual licensing, we're adding sponsorship to Desktop Commander. While this project is open-source and free, it requires a lot of effort to maintain stability and create a better experience for you.
Support Our Work
If you find that Desktop Commander contributes to your success, please consider contributing to the project. This way, you can help us automate more of your daily routine with Desktop Commander.
To contribute, follow this link: https://github.com/sponsors/wonderwhy-er
Enterprise Solutions
If you are working in enterprise, your company can sponsor this project, or you can reach out to us so we can build a more tailored and secure version for your organization.
Use this link to leave a request and we will contact you within 48 hours to discuss how we can tailor Desktop Commander to your organization's specific needs: https://tally.so/r/nG78Dz
You'll receive a confirmation email and can schedule a demo with our team.
How to update?
If you installed Desktop Commander with NPX, you don't need to do anything; it will update automatically.
If you did it manually, you need to download the latest release and do manual installation again.
Or you can install using npx directly:
bash
npx @wonderwhy-er/desktop-commander@latest setup
For macOS users, you can also use this bash script:
bash
curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install.sh | bash
You can run install commands many times; they will not overwrite any of your personal files or existing configuration.
v0.1.35 - Configuration Management, better allowed directories, blocked terminal commands and shell/terminal selection
New Features
🔧 Configuration Management
What's New: You can now easily customize how Desktop Commander works through configuration settings.
How to Use:
- View all settings:
get_config({}) - Change a setting:
set_config_value({ "key": "defaultShell", "value": "/bin/zsh" })
Available Settings:
allowedDirectories: Control which folders Desktop Commander can accessblockedCommands: Prevent potentially dangerous commands from runningdefaultShell: Choose your preferred terminal (bash, zsh, PowerShell, etc.)
Tip: For security, always make configuration changes in a separate chat from your main work.
Removed duplicate functionality
We removed number of tools for allowing and blocking commands and paths as separate tools. Now it all is handled trough unified config. More configuration options will come next.
🖥️ Shell Selection
What's New: You can now specify which shell to use for your commands. Both individually for each call and default one to use trough configuration
How to Use:
// Use your default shell
execute_command({ "command": "echo $SHELL" })
// Specify a particular shell
execute_command({ "command": "echo $SHELL", "shell": "/bin/zsh" })Benefits:
- Windows users can easily switch between PowerShell and Command Prompt
- Mac/Linux users can choose between bash, zsh, or other shells
- Use shell-specific features without changing your system defaults
Side note - WSL support is bit weird, does work trough CMD/PowerShell but can't be yet set as shell, something to polish in future, help is welcome.
🔒 Enhanced Security
What's New: Better protection for your system with improved path validation and command restrictions.
How it Works:
- Desktop Commander now blocks potentially dangerous commands by default, you can change in config
- File operations are restricted to allowed directories for better security, be default list is empty which allows all
- Clearer error messages when a security restriction is encountered
Tip: Setting allowedDirectories to an empty array ([]) grants access to your entire filesystem. Use specific paths for better security.
Usage Recommendations
Security Best Practices
- Use separate chats for configuration: Make configuration changes in a dedicated chat, then start a new chat for your actual work.
- Be specific with allowed directories: Instead of allowing entire drives, specify just the directories you need to work with.
- Verify configuration changes: After making changes, use
get_config({})to confirm they were applied correctly.
Effective Command Execution
- Choose the right shell: Use the shell that's best suited for your specific task.
- Handle long-running commands: Remember that commands continue in the background after timeout - use
read_outputwith the PID to check progress. - Be patient with file operations: When working with large directories or files, operations may take longer than expected.
We hope these improvements make Desktop Commander MCP even more useful for your workflows! Join our [Discord server](https://discord.gg/kQ27sNnZr7) for support and to share feedback.
📦 Release v0.1.31
✨ Features
- Image File Support: Filesystem tools now support reading and rendering PNG, JPEG, GIF, and WebP images directly in Claude.
- Refined directory validation logic thanks to @serg33v and @davidteren
HOTFIX. Fix for folder creation
Previous changed changed logic of path creation
Now its fixed
