
Claude Desktop Commander MCP

2025.03.20
3
TypeScript终端命令执行进程管理文件系统操作代码编辑开发效率
Claude Desktop Commander MCP 是一个基于 Model Context Protocol (MCP) 的服务,旨在为 Claude 桌面应用提供执行终端命令、管理进程以及文件系统操作的能力。它扩展了 MCP Filesystem Server 的功能,支持代码编辑、搜索替换等高级操作。
View on GitHub
Overview
基本能力
产品定位
Claude Desktop Commander MCP 是一个为 Claude 桌面应用设计的服务,通过 MCP 协议提供终端命令执行、进程管理和文件系统操作能力,特别适合开发者和需要自动化操作的用户。
核心功能
- 终端命令执行:支持执行长时间运行的终端命令,并支持输出流式传输。
- 进程管理:可以列出和终止系统进程。
- 文件系统操作:包括读写文件、创建/列出目录、移动文件/目录、搜索文件、获取文件元数据等。
- 代码编辑能力:支持精确的文本替换和完整的文件重写。
适用场景
- 开发者需要自动化执行终端命令的场景。
- 需要管理长时间运行进程的场景。
- 需要批量编辑或替换代码的场景。
工具列表
- 终端工具:
execute_command
:运行可配置超时的命令。read_output
:获取长时间运行命令的输出。force_terminate
:停止运行中的命令会话。list_sessions
:查看活动命令会话。list_processes
:查看系统进程。kill_process
:通过 PID 终止进程。block_command
/unblock_command
:管理命令黑名单。- 文件系统工具:
read_file
/write_file
:文件操作。create_directory
/list_directory
:目录管理。move_file
:移动/重命名文件。search_files
:基于模式的文件搜索。get_file_info
:文件元数据。- 编辑工具:
edit_block
:应用精确的文本替换(适合文件大小变化小于20%的情况)。write_file
:完整的文件重写(适合文件大小变化大于20%或edit_block
失败的情况)。
常见问题解答
- 如何处理长时间运行的命令?
execute_command
在超时后返回初始输出。- 命令在后台继续运行。
- 使用
read_output
和 PID 获取新输出。 - 使用
force_terminate
停止命令。
使用教程
使用依赖
- 确保已下载并安装 Claude Desktop app。
- 确保已安装 npm。
安装教程
选项1:通过 Smithery 安装
npx -y @smithery/cli install @wonderwhy-er/desktop-commander --client claude
选项2:通过 npx 安装
npx @wonderwhy-er/desktop-commander setup
安装完成后重启 Claude。
选项3:手动添加到 claude_desktop_config
在 claude_desktop_config.json
(Mac 上位于 ~/Library/Application\ Support/Claude/claude_desktop_config.json
)中添加以下内容:
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander"
]
}
}
}
添加完成后重启 Claude。
选项4:本地克隆并构建
git clone https://github.com/wonderwhy-er/ClaudeComputerCommander.git
cd ClaudeComputerCommander
npm run setup
安装完成后重启 Claude。
调试方式
安装完成后,可以通过执行简单的终端命令(如 execute_command
)来测试服务是否正常工作。例如:
execute_command "ls -la"
检查是否能正确返回目录列表。