MCP极简入门:第一个服务器DesktopCommanderMCP

引言

@wonderwhy-er/desktop-commander 是一个强大的 MCP(Model Context Protocol)服务器实现,专为与大语言模型 (LLM) 集成而设计。它通过标准化接口,使 LLM 能够执行终端命令、管理文件系统和控制进程。结合 MCP Inspector 这一交互式调试工具,开发者可以轻松测试和验证其功能。本文将详细介绍 Desktop Commander 的功能、安装步骤、测试用例帮助我们快速使用公共的服务器。

什么是 Desktop Commander?

Desktop Commander 是一个基于 Node.js 的 MCP 服务器,支持以下核心功能:

  • 执行系统命令:运行操作系统命令(如启动应用程序或查询系统信息)。
  • 文件系统操作:读写文件、列出目录内容等。
  • 进程管理:启动、监控或终止进程。
  • 跨平台支持:兼容 Windows、Linux 和 macOS(本文以 Windows 为例)。

通过 MCP Inspector,开发者可以在交互界面中测试这些功能,验证命令执行结果并调试潜在问题。Desktop Commander 特别适合需要自动化任务或与 LLM 集成的工作场景,例如 Claude Desktop 的工具调用。

安装与配置

前提条件
  • Node.js:版本 18.20.8 或更高(建议从 Node.js 官网 下载)。
  • Python:3.8 或更高,推荐 3.10+,需配置 Conda 环境。
  • MCP Inspector:通过 npm 安装 @modelcontextprotocol/inspector。
  • 操作系统:Windows 10/11(其他系统需调整命令格式)。
安装步骤
  1. 安装 Node.js

    • 下载并安装 Node.js(v18.20.8+)。

    • 验证:

      复制代码
       node -v
       npm -v
  2. 配置 Conda 环境

    • 安装 Miniconda 或 Anaconda。

    • 创建并激活 Python 环境:

      ini 复制代码
       conda create -n python39 python=3.9
       conda activate python39
  3. 安装 MCP Inspector 和 Desktop Commander

    bash 复制代码
     npm install -g @modelcontextprotocol/inspector
     npm install -g @wonderwhy-er/desktop-commander

通过MCP Inspector运行Desktop Commander

我们以系统管理的身份打开cmd,这注意乱码问题需要特殊处理:

我们是使用windows操作系统,设置CMD 使用 UTF-8 编码,默认windows的CMD使用的GBK,所以才会有乱码问题

bash 复制代码
 #通过下面的命令查看
 chcp  

设置成uft-8:

复制代码
 chcp 65001

另外由于Desktop Commander是使用python运行命令,所以也需要设置python的编码格式,必须要设置,不然无法运行。

bash 复制代码
 set PYTHONIOENCODING=utf-8 && npx @modelcontextprotocol/inspector npx @wonderwhy-er/desktop-commander

核心功能用例

执行系统命令

功能 :运行操作系统命令,如启动应用程序。 示例:启动 Windows 计算器。

json 复制代码
 {
   "command": "start calc",
   "timeout_ms": 5000
 }
  • 输出:计算器启动,返回进程 ID(PID)。
  • 用途:自动化启动工具或脚本。
查找文件

功能 :搜索指定关键字的文件。 示例:查找D:\ai\mcp 文件中包含 "mcpconfig" 的文件。

用途:快速检索相关的文件。

读取文件

功能 :读取具体的文件内容。 示例:读取D:\ai\mcp\mcpconfig.json 文件的内容。

用途:获取本地文件作为内容与llm交互。

查找文件内容

功能 :搜索指定文件中的内容。 示例:查找D:\ai\mcp\mcpconfig.json 文件中包含 "desktop"的代码 。

用途:快速检索文件内容,适合日志分析或验证文件数据。

写文件

功能 :把内容写到文件中。 示例:把"hello"写到D:\ai\mcp\test.txt文件下,会自动创建此文件,然后写入。

用途:直接把llm生成的结果生成文件。

结论

@wonderwhy-er/desktop-commander 是一个功能强大的 MCP 服务器,结合 MCP Inspector 可实现系统命令执行、文件操作(包括内容查找)和进程管理。其跨平台支持和易用性使其成为 LLM 集成开发的理想工具。通过本文提供的安装步骤、测试用例和调试方法,开发者可以快速上手并解决常见问题。

相关推荐
博客胡9 小时前
Python-fastAPI的学习与使用
学习·fastapi·ai编程
YuMiao9 小时前
WSL2 (Manjaro) 环境下 Google Antigravity AI服务网络连接与环境配置问题
ai编程
yuhaiqun198910 小时前
Typora 技能进阶:从会写 Markdown 到玩转配置 + 插件高效学习笔记
经验分享·笔记·python·学习·学习方法·ai编程·markdown
TeamDev11 小时前
使用 MCP 自动化 JxBrowser
浏览器自动化·jxbrowser·mcp·模型上下文协议·mcp 自动化·jxbrowser 自动化·jxbrowser mcp
方始终_12 小时前
用Spec-kit踩完3个坑后才明白,Constitution才是真正的起点!
ai编程·cursor
喝牛奶的小蜜蜂12 小时前
微信小程序|云环境共享-使用指南
前端·微信小程序·ai编程
用户40993225021213 小时前
Vue3动态样式控制:ref、reactive、watch与computed的应用场景与区别是什么?
后端·ai编程·trae
这儿有一堆花14 小时前
将 AI 深度集成到开发环境:Gemini CLI 实用指南
人工智能·ai·ai编程
磊磊磊磊磊14 小时前
一周做了个文章排版工具,分享下如何高效省钱用AI!
ai编程·产品·cursor
_OP_CHEN14 小时前
用极狐 CodeRider-Kilo 开发俄罗斯方块:AI 辅助编程的沉浸式体验
人工智能·vscode·python·ai编程·ai编程插件·coderider-kilo