返回 MCP 目录
public公开dns本地运行

claude-dev-tools

Claude桌面命令控制工具,支持终端命令执行和文件编辑

article

README

🚀 用于Claude桌面的应用服务器:Claude Desktop Commander MCP

本项目是一个允许Claude桌面应用程序在您的计算机上执行长时间运行的终端命令并通过Model Context Protocol (MCP) 管理进程的服务器。它构建于MCP文件系统服务器之上,以提供额外的搜索和替换文件编辑功能。

npm下载量 smithery徽章

🚀 快速开始

本服务器主要有两个关键点:终端命令和基于差异的文件编辑。它能让Claude桌面应用在本地计算机执行长时间运行的终端命令,并通过MCP管理进程。

✨ 主要特性

  • 执行带有输出流式传输的终端命令
  • 长时间运行命令的超时设置
  • 进程管理:启动、停止、重启
  • 文件操作:读取、写入、删除
  • 支持基于差异的代码块文件编辑

📦 安装指南

方法一:使用smithery CLI安装

  1. 打开终端。
  2. 运行以下命令:
smith install @wonderwhy-er/desktop-commander

方法二:手动安装

  1. 克隆此仓库:
git clone https://github.com/wonderwhy-er/ClaudeDesktopCommander.git
cd ClaudeDesktopCommander
  1. 安装依赖项:
npm install
  1. 启动服务器:
npm start

方法三:通过npx安装

直接运行以下命令:

npx -y @wonderwhy-er/desktop-commander setup

手动配置

  1. 创建或编辑 claude_desktop_config.json 文件。
  2. 添加以下内容:
{
  "command": {
    "timeout": 3600, // 超时时间,单位秒,默认3600秒(1小时)
    "streamOutput": true // 是否流式输出,默认true
  },
  "file": {
    "root": "/path/to/files" // 文件操作根目录,默认当前工作目录
  }
}

💻 使用示例

基本用法

# 执行单行命令
execute_command("ls -a")

# 后台执行长时间运行的任务
execute_commandInBackground("long_task.sh", (status, output) => {
  console.log(`任务完成,状态:${status}, 输出:${output}`);
})

# 监视文件变化
watchFile("/path/to/file.txt", (event, filename) => {
  console.log(`检测到文件变化:${filename}`)
})

高级用法

进程管理

startProcess("app_process")
restartProcess("app_process")
stopProcess("app_process")

文件操作

readFile("/path/to/file.txt", (err, content) => {
  if (err) throw err;
  console.log(content);
})

writeFile("/path/to/newfile.txt", "写入内容", (err) => {
  if (err) throw err;
  console.log("文件写入成功");
})

基于差异的代码编辑

// 在Claude中定义一个差异块:
diff_block = """\
- 删除的部分
+ 新增的内容
@@ -1,5 +1,6 @@
 这是修改后的代码"""

applyDiff("/path/to/file.txt", diff_block, (err) => {
  if (err) throw err;
  console.log("文件已成功更新");
})

🤝 贡献

如果您觉得这个项目有用,请考虑在GitHub上给它点个星!这将帮助更多人发现此项目并鼓励进一步开发。

我们欢迎社区的贡献!无论您发现了错误,有功能需求,还是想提交代码,以下是如何参与的方式:

  • 发现问题?github.com/wonderwhy-er/ClaudeDesktopCommander/issues上打开一个问题。
  • 有功能想法? 提交一个功能请求到问题部分。
  • 想贡献代码? 叉取仓库,创建分支,并提交拉取请求。
  • 有问题或讨论? 在GitHub Discussions部分开始讨论。

所有的贡献,无论大小,都受到极大的欢迎!

📄 许可证

MIT

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端