← 返回目录
D

Desktop Commander

社区
通过AI搜索、更新、管理文件和运行终端命令
分类
开发工具 第 199 / 438
Stars
★ 10.0k 非常热门
传输方式
stdio(本地进程)
运行环境
Node.js · Docker
凭据
无需凭据
许可证
MIT
最近提交
工具数
25
54FMRS · D

Desktop Commander是一个功能强大的MCP服务器,提供终端控制、文件管理和进程管理。它广泛支持多种客户端,并包含丰富的文件格式支持(Excel、PDF、DOCX)。然而,用户必须注意安全限制,并按照建议使用Docker隔离以获得更强安全性。

最强项 · 文档质量 15/20 最弱项 · 安全与权限 6/20

可靠性
7/20
安全与权限
6/20
维护活跃度
12/20
文档质量
15/20
安装易用性
14/20
查看各项评分依据
可靠性 7/20
仅从 README 和 server.json 看,工具清单和描述较完整,npx/stdin-stdout 启动路径看似可行,但未提供服务器源代码、测试或 CI 证据,无法验证 MCP 初始化握手和工具实际行为;README 中 execute_command 与 start_process、read_output 与 read_process_output 等命名不一致,也降低了对真实行为一致性的信任。因此不给高于 12 分,保守给 7 分。
安全与权限 6/20
README 明确承认不是沙箱:allowedDirectories 不限制终端命令,符号链接、命令替换、绝对路径或代码执行可绕过限制;有命令 blocklist、符号链接防护和 Docker 隔离,但未见对删除、终止进程等危险操作的显式二次确认机制。远程 MCP 需要用户手动启动并使用 OAuth 和加密通道。未发现窃取凭据或隐蔽数据外传的直接证据,因此未触发 0-4 红线,但权限边界和确认机制明显不完整,给 6 分。
维护活跃度 12/20
仓库未归档,有 MIT 许可证,版本 0.2.47,提供自动更新机制、安全报告渠道、Discord 和赞助链接,说明项目仍在维护;但提供的材料中没有提交历史、发版日期、issue 响应速度或依赖更新记录,无法验证维护节奏,因此不能给高分,给 12 分。
文档质量 15/20
README 覆盖多客户端安装、工具表、配置、安全警告、Docker、FAQ、故障排查和日志说明,整体分层较好;但存在工具命名不一致(execute_command vs start_process、read_output vs read_process_output)、部分章节似乎截断或留有占位(如 Handling Long-Running Commands、Mount Your Machine Folders Coming Soon),需要扣分,给 15 分。
安装易用性 14/20
提供了 npx setup、bash/PowerShell 安装脚本、Docker 安装以及 Claude、Cursor、VS Code、Gemini CLI 等多客户端 JSON 配置示例,安装路径清晰;但需要 Node.js 或 Docker,且静态审查中没有任何 CI 或测试证据可验证安装后可稳定连接,按规则 setup 最高不超过 15 分,给 14 分。

静态评测 · 未实际运行收录于 2026-08-07

查看 FMRS 评分方法 →

选型与风险

能访问什么读取本地文件写入 / 删除本地文件执行命令或代码访问网络

适合谁

  • 希望让AI助手直接控制终端和文件系统的开发者。
  • 需要在Claude Desktop等MCP客户端中增强代码编辑、自动化任务和代码库探索能力的用户。
  • 需要处理Excel、PDF、DOCX等复杂文件格式的场景。

不适合谁

  • 需要完全沙箱环境的用户(除非使用Docker安装)。
  • 对安全敏感的场所,因为终端命令可以绕过目录限制。
  • 不需要终端控制,只需基本文件操作的用户。

所需权限

  • 文件系统读写权限,包括访问allowedDirectories目录之外的终端命令。
  • 执行任意终端命令的能力(受blockedCommands限制)。
  • 管理进程(启动、交互、终止)。
  • 访问网络以获取URL内容(read_file)。

风险与副作用

  • 终端命令可以访问allowedDirectories之外的文件,存在安全风险。
  • 命令黑名单可能被符号链接、命令替换或绝对路径绕过。
  • 建议在单独的聊天窗口中进行配置更改,以避免Claude意外修改配置。
  • 如果不想使用Docker隔离,可能对主机系统造成风险。

安装接入

准备工作

运行环境:Node.js · Docker

  1. 确保已安装Node.js。
  2. 运行 npx @wonderwhy-er/desktop-commander@latest setup(或使用其他安装方式,如Smithery、手动配置、Docker)。
  3. 重启Claude Desktop。
claude_desktop_config.json
{
  "mcpServers": {
    "desktop-commander": {
      "command": "npx",
      "args": [
        "-y",
        "@wonderwhy-er/desktop-commander@latest"
      ]
    }
  }
}

以 Claude Desktop 为例。其他客户端的配置文件位置或字段可能不同(如 VS Code 使用 servers 字段),可用下方配置生成器转换。

.vscode/mcp.json
{
  "servers": {
    "desktop-commander": {
      "command": "npx",
      "args": [
        "-y",
        "@wonderwhy-er/desktop-commander@latest"
      ]
    }
  }
}

写入项目的 .vscode/mcp.json(VS Code 使用 servers 字段)。

Terminal
claude mcp add desktop-commander -- npx -y @wonderwhy-er/desktop-commander@latest

在终端运行;先把 <…> 占位符换成你自己的值。

验证是否装好

安装并重启 Claude Desktop 后,工具列表中应出现 desktop-commander 的工具(如 get_config、read_file、start_process);也可以让 Claude 运行 get_config 来确认连接正常。

常见排障

  1. 如果Claude无法启动,请检查claude_desktop_config.json中的JSON语法。
  2. 如果命令超时,请使用后台执行或读取输出功能。
  3. 如果搜索失败,检查搜索模式是否正确,或使用模糊搜索日志分析。
  4. 如果调试时Claude超时,确保调试器已正确连接。

试试这样问

连接成功后,可以直接对 AI 助手这样说:

  • 分析 sales.csv 并显示前几位客户
  • SSH 到我的服务器并检查磁盘空间
  • 启动 Node.js 并测试这个 API
  • 在我的项目文件夹里搜索所有包含 TODO 的文件

工具能力 25

get_config 只读
获取服务器完整配置,包括blockedCommands、defaultShell、allowedDirectories、fileReadLineLimit、fileWriteLineLimit、telemetryEnabled。
set_config_value 写入
按键设置特定配置值,如blockedCommands、defaultShell、allowedDirectories、fileReadLineLimit、fileWriteLineLimit、telemetryEnabled。
start_process 写入
启动程序,并智能检测其何时准备好接收输入。
interact_with_process 写入
向正在运行的程序发送命令并获取响应。
read_process_output 只读
读取运行中进程的输出。
force_terminate 破坏性
强制终止运行中的终端会话。
list_sessions 只读
列出所有活动终端会话。
list_processes 只读
列出所有运行中的进程及其详细信息。
展开其余 17 个工具
kill_process 破坏性
按PID终止运行中的进程。
read_file 只读
从本地文件系统、URL、Excel文件(.xlsx, .xls, .xlsm)和PDF读取内容,支持基于行/页的分页。
read_multiple_files 只读
同时读取多个文件。
write_file 写入
写入文件内容,支持重写或追加模式。支持Excel文件(JSON 2D数组格式)。对于PDF,请使用write_pdf。
write_pdf 写入
从Markdown创建新PDF或修改现有PDF(插入/删除页面)。支持HTML/CSS样式和SVG图形。
create_directory 写入
创建新目录或确保其存在。
list_directory 只读
获取文件和目录的详细递归列表(支持深度参数,默认深度=2)。
move_file 写入
移动或重命名文件和目录。
start_search 只读
开始按名称或内容模式进行流式搜索(搜索文本文件和Excel内容)。
get_more_search_results 只读
从活动搜索中获取分页结果,支持偏移量。
stop_search 写入
优雅地停止活动搜索。
list_searches 只读
列出所有活动搜索会话。
get_file_info 只读
获取文件或目录的详细元数据(包括Excel文件的表单信息)。
edit_block 写入
对文本文件应用目标文本替换,或对Excel文件进行基于范围的单元格更新。
get_usage_stats 只读
获取使用统计信息以供自己洞察。
get_recent_tool_calls 只读
获取最近的工具调用历史,包括参数和输出,用于调试和上下文恢复。
give_feedback_to_desktop_commander 写入
在浏览器中打开反馈表单,向Desktop Commander团队提供反馈。

使用场景

数据分析:让Claude在内存中运行Python代码分析CSV/Excel文件。
远程访问:通过SSH连接服务器并检查磁盘空间。
开发:启动Node.js并测试API,或运行交互式Node会话。
代码库探索:递归搜索文件和内容,理解复杂代码库。
文件操作:读取、写入、编辑Excel、PDF、DOCX文件。

支持客户端

Claude Desktop
Cursor
Windsurf
VS Code / GitHub Copilot
Cline
Roo Code
Claude Code
Trae
Kiro
Codex
JetBrains IDEs
Gemini CLI
Augment Code
Qwen Code

依据项目文档列出,未经本站实测。

详细介绍

Desktop Commander 是一个MCP服务器,为Claude等AI提供终端控制、文件系统搜索和差异文件编辑能力。它基于MCP文件系统服务器构建,支持远程AI控制、文件预览UI、增强的终端交互、内存中代码执行(Python/Node.js/R)、原生Excel/PDF/DOCX支持、进程管理、审计日志和安全防护(如符号链接防护、命令黑名单、Docker隔离)。

同类可选方案

Context7 80 · B

Upstash 官方维护,为 AI 编码助手提供实时更新的第三方库文档

★ 62.9k · 工具数 2 与当前对比 →

源版本 ea3ed35a7be9 数据同步于 2026-10-11 查看 FMRS 评分方法