关于 Claude Desktop Commander MCP
Claude Desktop Commander MCP 为 Claude Desktop 提供终端、进程、文件系统和代码编辑操作,适用于需要本机命令执行与文件修改的工作。它支持长时间运行的命令会话,并提供基于搜索替换块的编辑方式。
主要功能
- 01执行命令并流式输出
- 02管理后台命令与进程
- 03读写和搜索文件
- 04创建、列出及移动目录文件
- 05通过搜索替换块编辑代码
适用场景
- 01运行并监控长时间命令
- 02查找或修改本地文件
- 03按代码块精确替换内容
MCP 相关
该 MCP 服务为 Claude Desktop 提供终端、进程管理、文件系统和代码编辑工具,并扩展 MCP Filesystem Server。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Claude Desktop Commander MCP
简而言之,有两项关键功能:终端命令和基于差异的文件编辑。
这是一个 MCP 服务,可让 Claude 桌面应用通过模型上下文协议(MCP)在你的计算机上执行长时间运行的终端命令并管理进程。它基于 MCP Filesystem Server 构建,还提供额外的文件搜索和替换编辑功能。
功能
- 执行终端命令并流式输出结果
- 支持命令超时和后台执行
- 进程管理(列出和终止进程)
- 长时间运行命令的会话管理
- 完整的文件系统操作:
- 读取/写入文件
- 创建/列出目录
- 移动文件/目录
- 搜索文件
- 获取文件元数据
- 代码编辑功能:
- 对小幅更改进行精准文本替换
- 对重大更改进行完整文件重写
- 支持多个文件
- 基于模式进行替换
安装
首先,请确保已下载并安装 Claude 桌面应用,并且已安装 npm。
选项 1:通过 Smithery 安装
通过 Smithery 为 Claude Desktop 自动安装 Desktop Commander:
npx -y @smithery/cli install @wonderwhy-er/desktop-commander --client claude
选项 2:通过 npx 安装
只需在终端中运行:
npx @wonderwhy-er/desktop-commander setup
如果 Claude 正在运行,请重启 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 正在运行,请重启 Claude
选项 4:本地检出
- 克隆并构建:
git clone https://github.com/wonderwhy-er/ClaudeComputerCommander.git
cd ClaudeComputerCommander
npm run setup
如果 Claude 正在运行,请重启 Claude
设置命令将会:
- 安装依赖项
- 构建服务
- 配置 Claude 桌面应用
- 在需要时将 MCP 服务添加到 Claude 的配置中
使用方法
该服务提供以下工具类别:
终端工具
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失败的情况)
搜索/替换块格式:
filepath.ext
<<<<<<< SEARCH
existing code to replace
=======
new code to insert
>>>>>>> REPLACE
示例:
src/main.js
<<<<<<< SEARCH
console.log("old message");
=======
console.log("new message");
>>>>>>> REPLACE
处理长时间运行的命令
对于可能需要较长时间的命令:
execute_command会在超时后返回初始输出- 命令会在后台继续运行
- 使用
read_output和 PID 获取新输出 - 如有需要,使用
force_terminate停止命令
Model Context Protocol 集成
本项目扩展了 MCP Filesystem Server,以支持:
- 在 Claude Desktop 中使用本地服务
- 完整的系统命令执行
- 进程管理
- 文件操作
- 使用搜索/替换块编辑代码
本项目源于对 Claude MCP 的探索:https://youtube.com/live/TlbjFDbl5Us
参与贡献
如果你觉得这个项目有用,请考虑在 GitHub 上点亮 ⭐ 星标!这有助于其他人发现该项目,并鼓励我们继续开发。
我们欢迎社区贡献!无论你发现了 Bug、有功能需求,还是想贡献代码,都可以通过以下方式参与:
- 发现了 Bug? 在 github.com/wonderwhy-er/ClaudeComputerCommander/issues 提交问题
- 有功能创意? 在 Issues 区提交功能请求
- 想贡献代码? Fork 该仓库,创建分支并提交 Pull Request
- 有问题或想讨论? 在 GitHub Discussions 标签页发起讨论
无论贡献大小,我们都非常感谢!
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。