@wonderwhy-er/desktop-commander

0.1.0 • Public • Published

Claude Computer Commander

Short version. Two key things. Terminal commands and diff based file editing.

This server that allows Claude desktop app to execute long-running terminal commands on your computer and manage processes through Model Context Protocol (MCP) + Built on top of MCP Filesystem Server to provide additional file editing capabilities .

Features

  • Execute terminal commands with output streaming
  • Command timeout and background execution support
  • Process management (list and kill processes)
  • Session management for long-running commands
  • Full filesystem operations:
    • Read/write files
    • Create/list directories
    • Move files/directories
    • Search files
    • Get file metadata
    • Code editing capabilities:
    • Surgical text replacements for small changes
    • Full file rewrites for major changes
    • Multiple file support
    • Pattern-based replacements

Setup

  1. Clone and build:
git clone https://github.com/wonderwhy-er/ClaudeComputerCommander.git
cd ClaudeComputerCommander
npm run setup

The setup command will:

  • Install dependencies
  • Build the server
  • Configure Claude's desktop app
  • Add MCP servers to Claude's config

Usage

The server provides these tool categories:

Terminal Tools

  • execute_command: Run commands with configurable timeout
  • read_output: Get output from long-running commands
  • force_terminate: Stop running command sessions
  • list_sessions: View active command sessions
  • list_processes: View system processes
  • kill_process: Terminate processes by PID
  • block_command/unblock_command: Manage command blacklist

Filesystem Tools

  • read_file/write_file: File operations
  • create_directory/list_directory: Directory management
  • move_file: Move/rename files
  • search_files: Pattern-based file search
  • get_file_info: File metadata

Edit Tools

  • edit_block: Apply surgical text replacements (best for changes <20% of file size)
  • write_file: Complete file rewrites (best for large changes >20% or when edit_block fails)

Search/Replace Block Format:

filepath.ext
<<<<<<< SEARCH
existing code to replace
=======
new code to insert
>>>>>>> REPLACE

Example:

src/main.js
<<<<<<< SEARCH
console.log("old message");
=======
console.log("new message");
>>>>>>> REPLACE

Handling Long-Running Commands

For commands that may take a while:

  1. execute_command returns after timeout with initial output
  2. Command continues in background
  3. Use read_output with PID to get new output
  4. Use force_terminate to stop if needed

Model Context Protocol Integration

This project extends the MCP Filesystem Server to enable:

  • Local server support in Claude Desktop
  • Full system command execution
  • Process management
  • File operations
  • Code editing with search/replace blocks

Created as part of exploring Claude MCPs: https://youtube.com/live/TlbjFDbl5Us

License

MIT

Package Sidebar

Install

npm i @wonderwhy-er/desktop-commander@0.1.0

Version

0.1.0

License

MIT

Unpacked Size

49.2 kB

Total Files

29

Last publish

Collaborators

  • wonderwhy-er