Desktop Commander MCP - 强大的终端控制和文件系统 MCP 服务器

Desktop Commander 是一个功能丰富的 MCP 服务器,使 Claude AI 能够执行终端命令、管理文件系统、编辑代码和分析数据。它提供交互式进程控制、内存代码执行、数据分析、进程管理、文件操作和代码搜索等强大功能,是 AI 辅助开发的全能工具。

工具列表

start_process

启动新的终端进程并支持智能状态检测。能够识别 REPL 提示符(如 Python 的 >>>、Node.js 的 >、Shell 的 $)、检测进程是否等待输入或已完成执行。支持超时配置和后台执行,适用于长时间运行的命令。

参数:

  • command (string) (必需): 要执行的终端命令,如 ‘python3 -i’、’node -i’、’bash’ 等
  • timeout_ms (number) (必需): 命令超时时间(毫秒),默认值取决于命令类型
  • shell (string) (可选): 可选的 shell 类型,如 ‘bash’、’zsh’、’sh’ 等
  • verbose_timing (boolean) (可选): 启用详细的性能遥测信息,用于调试和优化

interact_with_process

向运行中的进程发送输入并自动接收响应。这是本地文件分析的主要工具,支持 Python、Node.js、R、Julia、Shell、数据库等多种 REPL。自动等待 REPL 提示符,检测错误和完成状态,提供清晰的输出格式。

参数:

  • pid (number) (必需): start_process 返回的进程 ID
  • input (string) (必需): 要执行的代码或命令
  • timeout_ms (number) (可选): 最大等待时间(毫秒),默认 8000ms
  • wait_for_prompt (boolean) (可选): 自动等待响应,默认 true
  • verbose_timing (boolean) (可选): 启用性能调试信息

read_file

从文件系统或 URL 读取文件内容,支持偏移量和长度参数实现部分读取。正向偏移量从指定行开始读取,负向偏移量实现类似 tail 的功能。支持文本文件和图像文件(PNG、JPEG、GIF、WebP)。

参数:

  • path (string) (必需): 文件的绝对路径或 URL
  • offset (number) (可选): 起始行号(0 基索引)或负数表示从末尾读取,默认 0
  • length (number) (可选): 最大读取行数,默认 1000
  • isUrl (boolean) (可选): 是否从 URL 读取,默认 false

write_file

写入或追加文件内容。标准做法是分块写入,每次最多 25-30 行。第一次使用 ‘rewrite’ 模式,后续使用 ‘append’ 模式。支持在允许的目录内进行文件操作。

参数:

  • path (string) (必需): 文件的绝对路径
  • content (string) (必需): 要写入的内容
  • mode (string) (可选): 写入模式:rewrite 覆盖,append 追加,默认 rewrite

edit_block

对文件进行精确的文本替换。最佳实践是进行多个小型、专注的编辑。默认只替换一次匹配,可通过 expected_replacements 参数指定替换次数。当发现接近但不完全匹配时,会显示字符级差异。

参数:

  • file_path (string) (必需): 要编辑的文件绝对路径
  • old_string (string) (必需): 要替换的文本,需包含足够上下文以确保唯一性
  • new_string (string) (必需): 替换后的文本
  • expected_replacements (number) (可选): 期望的替换次数,默认 1

启动流式搜索,可以逐步返回结果。支持两种搜索类型:files(按文件名搜索)和 content(搜索文件内容)。支持正则表达式或字面量搜索,可通过 glob 模式过滤文件类型。

参数:

  • path (string) (必需): 搜索的目录绝对路径
  • pattern (string) (必需): 搜索模式(文件名或内容文本)
  • searchType (string) (可选): 搜索类型:files 按文件名,content 搜索内容,默认 files
  • filePattern (string) (可选): 可选的文件过滤器,如 ‘.js’ 或 ‘.{ts,tsx}’
  • literalSearch (boolean) (可选): 使用字面量匹配而非正则表达式,默认 false
  • ignoreCase (boolean) (可选): 不区分大小写搜索,默认 true
  • maxResults (number) (可选): 最大结果数量
  • contextLines (number) (可选): 内容搜索时显示的上下文行数,默认 5

list_directory

获取目录的详细列表,区分文件和目录([FILE]和[DIR]前缀)。支持递归列表,默认深度为 2。嵌套目录限制为每个目录最多 100 项,防止上下文溢出。

参数:

  • path (string) (必需): 目录的绝对路径
  • depth (number) (可选): 递归深度,1 表示仅直接内容,默认 2

create_directory

创建新目录或确保目录存在。可以一次性创建多个嵌套目录。仅在允许的目录内工作。

参数:

  • path (string) (必需): 要创建的目录绝对路径

move_file

移动或重命名文件和目录。可以在一次操作中同时移动和重命名。源和目标必须都在允许的目录内。

参数:

  • source (string) (必需): 源文件或目录的绝对路径
  • destination (string) (必需): 目标路径

list_sessions

列出所有活动的终端会话及其状态,包括 PID、是否阻塞、运行时间。帮助调试 REPL:Blocked: true 通常表示 REPL 正在等待输入。

参数:

force_terminate

强制终止运行中的终端会话。

参数:

  • pid (number) (必需): 要终止的进程 ID

配置示例

Npx

1
2
3
4
5
6
7
8
9
10
11
{
"mcpServers": {
"desktop-commander": {
"command": "npx",
"args": [
"-y",
"@wonderwhy-er/desktop-commander@latest"
]
}
}
}

Docker

1
2
3
4
{
"note": "使用安装脚本",
"command": "bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh)"
}

使用场景

1. 数据分析工作流

这是本地文件分析的唯一正确工具。启动 Python REPL(python3 -i),加载 pandas 和 numpy,读取 CSV 文件,执行数据探索、清洗、转换和可视化准备。AI 可以交互式地分析数据、生成统计摘要、识别模式和异常值,所有操作都在内存中完成,无需保存临时文件。

2. 代码重构辅助

使用 start_search 工具在整个代码库中搜索特定函数或模式,然后使用 edit_block 进行精确的代码替换。AI 可以识别代码异味、建议重构方案、批量更新 API 调用或重命名变量,同时保持代码的完整性和一致性。

3. 开发环境自动化

通过交互式进程控制,AI 可以管理开发服务器、数据库连接、SSH 会话等长时间运行的进程。例如,启动 Node.js 开发服务器,监控日志输出,检测到错误时自动重启,或者建立 SSH 连接执行远程部署命令。

4. 实时日志分析

使用 read_file 的负向偏移功能实现类似 tail 的日志监控。AI 可以持续读取日志文件的最后几行,检测错误模式、性能问题或安全威胁,并提供实时告警和诊断建议。

5. 批量文件处理

结合 list_directory、read_file 和 write_file 工具,AI 可以批量处理文件,如格式化代码、更新文档、转换数据格式、添加版权声明等。支持递归目录遍历和文件过滤,确保只处理目标文件。

6. 交互式调试

启动语言特定的 REPL(Python、Node.js、R、Julia 等),AI 可以交互式地执行代码片段、测试函数、检查变量值、调试逻辑错误。智能提示符检测确保每个命令都能得到完整响应,无需手动超时等待。

安装指南

前置要求

  • Node.js(用于 NPX 安装)
  • Docker(可选,用于容器化部署)
  • Claude Desktop 或兼容的 MCP 客户端
  • macOS、Linux 或 Windows(WSL2)操作系统

安装方式

NPX(推荐,自动更新)

1
npx @wonderwhy-er/desktop-commander@latest setup

Bash 安装器(macOS)

1
curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install.sh | bash

Smithery(Web 安装)

访问:https://smithery.ai

Docker

1
bash <(curl -fsSL https://raw.githubusercontent.com/wonderwhy-er/DesktopCommanderMCP/refs/heads/main/install-docker.sh)

手动配置

注意:编辑 claude_desktop_config.json,添加 npx 命令配置

项目信息

© 2026 Generative AI Discovery All Rights Reserved.
Theme by hiero