DesktopCommanderMCP

wonderwhy-er/DesktopCommanderMCP 访问 GitHub ↗
🔤 TypeScript ★ 9231 ⑂ 0 monthly #11 (+3118) 抓取 2026-08-07

一句话简介

一个通过模型上下文协议为 AI 助手提供本地文件操作、终端命令执行等桌面控制能力的 TypeScript 服务器。

标签

  • MCP
  • 桌面自动化
  • TypeScript
  • AI工具
  • 终端控制

适用应用场景

  • 让 Claude 等 AI 直接读写本地文件
  • 通过 AI 执行终端命令管理进程
  • 自动化批量处理桌面文件与脚本
  • 为开发助手提供本地环境交互能力

README 中文摘要

项目概述

Desktop Commander MCP 是一个基于 Model Context Protocol(模型上下文协议)的服务器,让 AI 客户端能够搜索、更新、管理本地文件并执行终端命令。它构建于 MCP Filesystem Server 之上,提供更强的搜索和替换能力。通过它,用户可以使用 AI 主机客户端订阅额度,无需支付额外的 API token 费用。

核心特性

文件与文档处理

  • 多格式文件读写:支持文本、Excel(.xlsx/.xls/.xlsm)、PDF、DOCX 文件
  • PDF 工具:从 Markdown 创建 PDF、读取文本、按页编辑
  • DOCX 工具:通过底层 XML 实现精准编辑,并支持 Markdown 转 DOCX
  • Excel 工具:原生读写、单元格级别更新、内容搜索
  • URL 抓取read_file 支持设置 isUrl: true 从网络读取文本或图片资源,默认 30 秒超时

终端与进程

  • 启动进程并智能判断何时进入可交互状态
  • 向运行中的进程发送命令并读取响应
  • 列出活动会话、终止进程、流式读取输出
  • 支持命令超时与后台执行,输出分页防上下文溢出

编辑能力

  • edit_block 工具支持精准文本替换;匹配失败时启用模糊搜索回退
  • 字符级 diff 提示({-removed-}{+added+}
  • 支持 expected_replacements 参数批量替换多处
  • 基于 vscode-ripgrep 的递归搜索

文件预览界面

Claude Desktop 内嵌可视化面板:Markdown 渲染、内置编辑器、图片内联显示、目录树浏览、PDF/Excel/DOCX 原生展示、代码高亮、HTML 渲染等。Markdown 文件可在全屏模式下直接编辑并保存到磁盘。

配置与安全

  • get_config / set_config_value 动态读写配置(blockedCommandsdefaultShellallowedDirectoriesfileReadLineLimitfileWriteLineLimittelemetryEnabled
  • 符号链接遍历防护、命令黑名单、审计日志自动按 10MB 轮转
  • Docker 安装选项提供完全沙箱隔离

安装方式

Claude Desktop 安装(推荐)

最简方式是通过 npx 自动安装并支持自动更新:

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

其他选项包括:macOS bash 一键脚本、Smithery 平台、手动编辑 claude_desktop_config.json、本地 git 检出、Docker 容器。

手动 JSON 配置示例:

{
  "mcpServers": {
    "desktop-commander": {
      "command": "npx",
      "args": ["-y", "@wonderwhy-er/desktop-commander@latest"]
    }
  }
}

配置文件路径: - macOS:~/Library/Application Support/Claude/claude_desktop_config.json - Windows:%APPDATA%\Claude\claude_desktop_config.json - Linux:~/.config/Claude/claude_desktop_config.json

其他客户端

支持 Cursor、Windsurf、VS Code + Copilot、Cline、Roo Code、Claude Code、JetBrains、Gemini CLI、Codex、Qwen Code、Trae、Kiro、Augment Code 等。所有客户端使用同样的标准 JSON 配置;Claude Code 用 claude mcp add 命令注册;Codex 使用 TOML 配置。

Docker 高级用法

挂载自定义目录的示例:

{
  "args": [
    "run", "-i", "--rm",
    "-v", "/Users/username/Projects:/mnt/Projects",
    "-v", "/Users/username/Downloads:/mnt/Downloads",
    "mcp/desktop-commander:latest"
  ]
}

支持 --status 查看状态、--reset 重置所有持久化数据。

更新与卸载

选项 1、2、3、4、6 重启 Claude 后自动更新;选项 5(本地 git 检出)需手动 git pull && npm run setup

卸载命令:

npx @wonderwhy-er/desktop-commander@latest remove

卸载器会自动备份 Claude 配置、移除 MCP 入口,遇到错误时从备份恢复。

主要工具一览

类别 工具 用途
配置 get_config / set_config_value 读写运行时配置
终端 start_process / interact_with_process / read_process_output / force_terminate / list_sessions / list_processes / kill_process 启动、与进程交互、列出与终止
文件系统 read_file / read_multiple_files / write_file / write_pdf / create_directory / list_directory / move_file / start_search / get_more_search_results / stop_search / list_searches / get_file_info 全面文件操作与搜索
编辑 edit_block 精准文本或单元格替换
分析 get_usage_stats / get_recent_tool_calls / give_feedback_to_desktop_commander 调试、统计、反馈

edit_block 使用格式

filepath.ext
<<<<<<< SEARCH
待替换内容
=======
新内容
>>>>>>> REPLACE

典型场景示例

  • 数据分析:让 AI 直接用内存中的 Python 分析 CSV/JSON/Excel
  • 远程运维:建立 SSH 会话、查询磁盘空间、维护数据库连接
  • 开发测试:启动 Node.js 进程、交互式运行 API 调用
  • 代码探索:递归搜索代码库、批量重构文件

摘要更新于 2026-07-15 00:33:11 · 原文 50112 字符 · md5 15db72bd35ea…