更新MCP服务器Skill update-mcp-servers

这是一个全面的MCP服务器管理工具,用于自动发现、更新和设置MCP服务器。它能检测缺失依赖、提供安装帮助,并使用最佳实践更新服务器,适用于Claude Code环境下的开发和运维场景。关键词:MCP服务器、自动更新、依赖管理、Claude Code、DevOps、工具自动化、包管理器、Git仓库更新。

DevOps 0 次安装 2 次浏览 更新于 3/11/2026

名称:update-mcp-servers 描述:“全面的MCP服务器管理。发现、更新和帮助设置MCP服务器,包括依赖检测和最佳实践指导。” 参数提示:“[–all | --enabled-only | --server NAME] [–dry-run] [–interactive | --non-interactive] [–help]” 允许工具:Bash、Read、Glob、AskUserQuestion、Task

更新MCP服务器

全面的MCP服务器一站式管理工具。动态发现所有MCP服务器,检测安装方法,识别缺失依赖,提供安装帮助,并使用最佳实践更新服务器。

何时使用

  • 安装Claude Code后
  • 当MCP服务器工具返回连接错误时
  • 定期获取最新包版本
  • 看到“包已过时”警告后
  • 设置新开发环境时
  • 安装MCP服务器的缺失依赖

参数

参数 描述 默认
--all 更新所有可更新服务器 无参数时默认
--enabled-only 仅更新当前连接的服务器
--server NAME 更新特定服务器 可重复使用
--dry-run 显示将要更新的内容而不执行 false
--interactive 强制交互选择模式 服务器数<10时自动启用
--non-interactive / --yes 跳过所有提示,直接更新
--help 显示全面帮助和支持方法

工作流程

步骤1:会话感知发现

通过直接解析配置文件发现所有配置的MCP服务器。这避免了在活跃Claude Code会话中运行claude mcp list的限制。

主要:基于文件的发现(必需)

  1. 插件配置:使用Glob查找plugins/*/.mcp.json文件
  2. 项目配置:读取项目根目录的.mcp.json
  3. 用户配置:读取~/.claude/settings.json(Windows上为$APPDATA/Claude/settings.json

从每个文件解析mcpServers键。每个条目包含:

{
  "mcpServers": {
    "server-name": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "perplexity-mcp"],
      "env": {}
    }
  }
}

对每个服务器,提取:

  • server_name:JSON键
  • commandcommand字段
  • argsargs数组(连接用于模式匹配)
  • source_file:定义它的配置文件
  • is_httptype"url"或命令/参数包含HTTP URL
  • is_plugin_vendoredargs包含${CLAUDE_PLUGIN_ROOT}(视为字面模式,不扩展)

跨文件合并服务器,注明来源。如果服务器出现在多个文件中,注明所有来源。

次要:CLI验证(尽力而为)

尝试CLAUDECODE= claude mcp list获取实时连接状态:

  • 如果命令成功,将status(已连接/已断开/错误)合并到每个服务器条目
  • 如果命令失败(例如,在活跃会话内),继续基于文件的发现,并将status设置为unknown
  • 不因CLI失败而阻塞——基于文件的发现足以进行更新

步骤2:检测安装方法

对每个服务器,根据命令模式确定更新方法:

包管理器模式(直接更新)

模式 方法 更新命令
包含npx -y npm npm install -g <package>
包含npm exec npm npm install -g <package>
包含uvx uvx uv tool upgrade <package>
包含pipx run pipx pipx upgrade <package>
包含python -m.py(不在仓库中) python pip install --upgrade <package>
包含uv run(不在仓库中) python (uv) uv pip install --upgrade <package>
包含dotnet tool run dotnet-tool dotnet tool update -g <tool>
包含dnx dnx (.NET 10) 无(自动管理)
包含docker run docker docker pull <image>
https://开头或包含(HTTP) 远程 无(服务器管理)

dnx(自动管理的.NET包)

dnx是.NET 10 SDK的等效于npx的工具。包在每次运行时自动解析到最新版本——无需本地安装更新。

  • 检测:命令或参数包含dnx
  • 分类:报告中显示dnx (自动管理)
  • 先决条件必须安装.NET 10+ SDK(通过dotnet --version检查,主版本>=10)
  • 更新操作:无需。如果.NET SDK <10,提供安装指导(见步骤6.5)
  • 报告备注:显示.NET SDK版本并确认自动解析激活

Git克隆/本地仓库模式(多步骤更新)

这些模式需要检测MCP服务器指向的本地文件路径是否在git仓库中。

模式 方法 更新序列
node /path/to/repo/...(带.git) git-node git pull && npm install && npm run build
python /path/to/repo/...(带.git) git-python git pull && pip install -r requirements.txt
uv run --directory /path/to/repo ...(带.git) git-python-uv git pull && uv sync
dotnet run --project /path/to/repo(带.git) git-dotnet git pull && dotnet build
dotnet /path/to/repo/bin/...(带.git) git-dotnet git pull && dotnet build

Git仓库检测:

  1. 从命令参数提取目录路径
  2. 检查目录是否包含.git文件夹
  3. 如果是,基于运行时(node/python/dotnet)分类为git-*方法
  4. 如果没有.git文件夹,分类为unknown(需要手动更新)

插件供应商模式

检测命令或参数中作为插件供应商服务器的${CLAUDE_PLUGIN_ROOT}。这些由其所属插件管理,而非此命令。

检测:

  1. 检查args(连接后)或command是否包含字面字符串${CLAUDE_PLUGIN_ROOT}
  2. 从源文件路径提取插件名称(例如,plugins/microsoft/.mcp.json -> microsoft

对每个插件供应商服务器:

  • 检查供应商根目录中是否有VERSION文件(例如,plugins/<plugin>/vendor/<server>/VERSION
  • 查找插件更新命令(例如,/microsoft:mssql update
  • 如果传递--check,使用--check运行插件更新命令以查看上游是否有更改

分类plugin-vendored——委托给插件的更新命令。

报告格式:显示服务器名称、所属插件、当前版本/提交和要运行的更新命令。

Dotnet工具名称解析

MCP配置中使用的二进制名称可能与dotnet工具包名称不同(例如,aspire二进制安装为aspire.cli包)。在更新前解析正确的包名称。

解析过程:

  1. 运行dotnet tool list -g获取已安装工具表(包ID | 版本 | 命令
  2. 构建命令到包的查找映射:aspire -> aspire.cli
  3. 更新dotnet工具时,使用解析的包名称(而非二进制名称)进行dotnet tool update -g <package-name>
  4. 如果解析失败(工具列表中未找到二进制),警告并回退到二进制名称

包名称提取:

  • 对于npx -y package-name@latest -> 提取package-name(去除@latest
  • 对于cmd /c npx -y package -> 提取package(忽略Windows包装器)
  • 对于作用域包@org/package@version -> 提取@org/package
  • 对于git仓库:为显示目的从路径提取仓库名称
  • 对于dotnet工具:使用从dotnet tool list -g解析的包名称

按可更新状态分组服务器:

  • updateable:具有npm、python、uvx、pipx、dotnet-tool、docker或git方法的服务器
  • remote:HTTP/SSE服务器(无需本地更新)
  • dnx由.NET SDK自动管理(无需更新,验证SDK版本)
  • plugin-vendored:由插件更新命令管理(委托,不在此自动更新)
  • unknown:无法识别的命令模式(报告供手动处理)

步骤2.5:依赖检测与设置帮助

在尝试更新前,检查所需工具是否可用。如果缺失,提供最佳实践安装帮助。

依赖检查矩阵

运行时/工具 检测命令 需求于
node node --version npm、npx、git-node
npm npm --version npm包
nvm nvm --version或检查$NVM_DIR Node的最佳实践
python python --versionpython3 --version python包
pip pip --versionpip3 --version python包
uv uv --version uv/uvx包
pipx pipx --version pipx包
dotnet dotnet --version dotnet工具
dotnet 10+ dotnet --version(主版本>=10) 基于dnx的服务器
docker docker --version docker镜像
git git --version git克隆的仓库

安装推荐(最佳实践)

当依赖缺失时,通过AskUserQuestion提供安装选项:

Node.js/npm:

  • 标题:“Node.js设置”
  • 问题:“需要Node.js/npm但未找到。您想如何安装?”
  • 选项:
    • “通过nvm安装(推荐)” - 版本管理最佳实践
    • “通过系统包管理器安装” - brew/apt/winget
    • “跳过基于npm的服务器” - 不更新这些服务器
    • “显示手动说明” - 显示安装指南

nvm安装命令:

# macOS/Linux
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
source ~/.bashrc  # 或 ~/.zshrc
nvm install --lts

# Windows - nvm-windows指南
# https://github.com/coreybutler/nvm-windows

Python:

  • 标题:“Python设置”
  • 问题:“需要Python但未找到。您想如何安装?”
  • 选项:
    • “通过uv安装(推荐)” - 快速、现代Python工具
    • “通过pyenv安装” - 版本管理最佳实践
    • “通过系统包管理器安装” - brew/apt/winget
    • “跳过基于Python的服务器”
    • “显示手动说明”

uv安装:

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

.NET SDK:

  • 标题:“.NET设置”
  • 问题:“需要.NET SDK但未找到。您想如何安装?”
  • 选项:
    • 安装最新.NET SDK(推荐)”
    • “跳过基于.NET的服务器”
    • “显示手动说明”

Docker:

  • 标题:“Docker设置”
  • 问题:“需要Docker但未找到或未运行。”
  • 选项:
    • “显示Docker Desktop安装指南”
    • “跳过基于Docker的服务器”

安装执行

当用户批准安装时:

  1. 执行前确认:“我将运行以下命令安装X。继续?”
  2. 执行安装命令
  3. 验证安装:重新运行检测命令
  4. 报告结果:“X安装成功"或"安装失败:[错误]”

平台检测

检测平台以提供合适的包管理器建议:

# 检查OS
uname -s  # Linux、Darwin (macOS)、MINGW*/MSYS* (Windows Git Bash)
平台 包管理器 备注
macOS Homebrew (brew) 系统工具首选
Windows winget / chocolatey winget在现代Windows内置
Linux (Debian/Ubuntu) apt sudo apt install
Linux (Fedora/RHEL) dnf sudo dnf install

步骤3:解析参数

解析命令参数以确定操作模式:

模式选择(互斥):

  • --all(默认):更新所有可更新服务器
  • --enabled-only:仅更新状态为"已连接"的服务器
  • --server NAME:仅更新指定服务器
  • --help:显示全面帮助

选项:

  • --dry-run:显示将要更新的内容而不执行
  • --interactive:强制通过AskUserQuestion交互选择
  • --non-interactive--yes:跳过所有提示

自动交互逻辑:

如果未指定--interactive--non-interactive

  • 如果可更新服务器数<10:启用交互模式
  • 否则:以非交互模式继续

步骤4:交互选择(如适用)

当交互模式启用时,使用AskUserQuestion让用户选择要更新的服务器。

问题1:更新范围

  • 标题:“更新范围”
  • 问题:“您想更新哪些MCP服务器?”
  • 选项:
    • “更新所有(N个服务器)” - 更新所有可更新服务器
    • “仅更新npm包” - 如果存在混合方法
    • “仅更新git仓库” - 如果存在git仓库
    • “选择特定服务器” - 选择个别服务器
    • “取消” - 不更新退出

问题2(如果选择"选择特定服务器"):

  • 标题:“服务器选择”
  • 问题:“选择要更新的服务器:”
  • 选项:列出每个可更新服务器及其包/仓库信息
  • multiSelect:true

步骤4.5:捕获更新前版本

在执行更新前,快照当前版本以供报告前后比较。

NPM全局包:

npm ls -g --depth=0 2>/dev/null

解析package@version对。对于npx-only包(未全局安装),记录为(npx按需)

Dotnet全局工具:

dotnet tool list -g 2>/dev/null

解析包ID | 版本 | 命令表列。

Docker镜像:

docker images --format "{{.Repository}}:{{.Tag}}" 2>/dev/null

Git仓库:

git -C /path/to/repo rev-parse --short HEAD 2>/dev/null

捕获每个git克隆服务器的短提交哈希。

插件供应商服务器:

cat plugins/<plugin>/vendor/<server>/VERSION 2>/dev/null

如果没有VERSION文件,使用供应商目录的git提交哈希。

Python (uvx/pipx):

uv tool list 2>/dev/null
pipx list --short 2>/dev/null

将所有版本存储在按服务器/包名称键控的查找映射中,用于步骤6。

步骤5:执行更新

包管理器更新(批处理)

按安装方法分组包并高效执行更新:

NPM包:

npm install -g package1 package2 package3

Python包(pip):

pip install --upgrade package1 package2

Python包(uvx):

uv tool upgrade package1
uv tool upgrade package2

pipx包:

pipx upgrade package1
pipx upgrade package2

.NET工具(使用解析的包名称):

使用步骤2中解析的包名称(Dotnet工具名称解析),而非MCP配置中的二进制名称。

# 示例:二进制"aspire"解析为包"aspire.cli"
dotnet tool update -g aspire.cli
dotnet tool update -g tool2-package-name

如果包名称解析不可能(工具不在dotnet tool list -g中),警告并尝试使用二进制名称作为回退。

Docker镜像:

docker pull image1:latest
docker pull image2:latest

Git仓库更新(顺序,多步骤)

对git克隆的MCP服务器,按仓库执行更新序列:

git-node:

cd /path/to/repo
git status --porcelain  # 检查未提交更改
git pull origin $(git rev-parse --abbrev-ref HEAD)
npm install
npm run build  # 如果package.json中存在构建脚本

git-python:

cd /path/to/repo
git status --porcelain
git pull origin $(git rev-parse --abbrev-ref HEAD)
pip install -r requirements.txt  # 如果存在
# 或:pip install -e .  # 如果存在setup.py/pyproject.toml

git-python-uv:

cd /path/to/repo
git status --porcelain
git pull origin $(git rev-parse --abbrev-ref HEAD)
uv sync

git-dotnet:

cd /path/to/repo
git status --porcelain
git pull origin $(git rev-parse --abbrev-ref HEAD)
dotnet build

Git更新的安全检查:

  • 拉取前验证干净工作目录(无未提交更改)
  • 如果脏,提供暂存更改或跳过选项
  • 拉取后检查合并冲突
  • 报告是否需要手动干预

更新后版本捕获

所有更新完成后,重新运行步骤4.5中的相同版本检测命令以捕获更新后版本。存储在单独的查找映射中供报告比较。

步骤6:报告结果

执行后,显示更新结果摘要,包括前后版本跟踪:

# MCP服务器更新结果

## 摘要
- **发现:** 14个MCP服务器
- **远程(无需更新):** 3个服务器
- **包管理器更新:** 4个服务器
- **Git仓库更新:** 2个服务器
- **插件供应商(委托):** 2个服务器
- **dnx(自动管理):** 1个服务器
- **未知(手动):** 1个服务器
- **失败:** 0个服务器

## NPM包
| 包 | 之前 | 更新后 | 状态 |
|---------|----------|---------|--------|
| perplexity-mcp | 0.2.2 | 0.2.3 | 已更新 |
| firecrawl-mcp | 1.8.0 | 1.8.0 | 已是最新 |
| chrome-devtools-mcp | (npx按需) | (npx按需) | 按需 |
| @playwright/mcp | 0.1.5 | 0.1.6 | 已更新 |

## Dotnet工具
| 包(解析后) | 之前 | 更新后 | 状态 |
|---------------------|----------|---------|--------|
| aspire.cli (二进制: aspire) | 9.1.0 | 9.2.0 | 已更新 |

## Git仓库
| 仓库 | 方法 | 之前 | 更新后 | 状态 |
|------------|--------|----------|---------|--------|
| mssql-mcp-server | git-node | a1b2c3d | f4e5d6a | 已拉取+重建 |
| custom-tools | git-python | 7g8h9i0 | 7g8h9i0 | 已是最新 |

## 插件供应商服务器
| 服务器 | 插件 | 当前版本 | 更新命令 |
|--------|--------|-----------------|----------------|
| mssql-node | microsoft | v1.2.0 | `/microsoft:mssql update` |
| mssql-dotnet | microsoft | v1.2.0 | `/microsoft:mssql update` |

## dnx服务器(自动管理)
| 服务器 | 包 | .NET SDK | 状态 |
|--------|---------|----------|--------|
| nuget | nuget-mcp | 10.0.100 | 每次运行自动解析最新 |

## 远程服务器(无需操作)
| 服务器 | URL |
|--------|-----|
| context7 | https://mcp.context7.com/mcp |
| microsoft-learn | https://... |
| Ref | https://... |

## 未知/需要手动更新
| 服务器 | 命令 | 原因 |
|--------|---------|--------|
| custom-local | /path/to/binary | 非git仓库,未知包管理器 |

## 后续步骤
- 重启Claude Code以使用更新后的服务器
- 运行`/mcp`验证服务器连接
- 对于插件供应商服务器,单独运行其更新命令

步骤6.5:手动步骤说明

当自动化无法完成更新时,提供可操作的手动说明。每个模板遵循格式:问题陈述、WHY解释、带复制粘贴命令的编号步骤。

工具被当前会话锁定

无法在Claude Code运行时更新<tool>。

WHY:<tool>二进制当前被此Claude Code会话使用。
更新被锁定的工具可能失败或损坏安装。

手动步骤:
1. 关闭此Claude Code会话:
   按Ctrl+C或输入/exit

2. 在终端中运行更新命令:
   <update-command>

3. 重启Claude Code:
   claude

4. 验证更新:
   /update-mcp-servers --dry-run

npm权限被拒绝

npm install -g 失败,EACCES(权限被拒绝)。

WHY:全局npm包安装在需要提升权限的系统目录中,或npm前缀配置错误。

手动步骤(选项A - 修复npm前缀,推荐):
1. 设置npm前缀为用户目录:
   npm config set prefix ~/.npm-global

2. 添加到shell配置文件(~/.bashrc或~/.zshrc):
   export PATH="$HOME/.npm-global/bin:$PATH"

3. 重新加载shell并重试:
   source ~/.bashrc
   npm install -g <package>

手动步骤(选项B - 使用sudo):
1. 使用提升权限运行:
   sudo npm install -g <package>

Git合并冲突

git pull 失败,<repo>中有合并冲突。

WHY:本地更改与上游更改冲突。自动合并无法解析这些差异。

手动步骤:
1. 导航到仓库:
   cd <repo-path>

2. 检查冲突状态:
   git status

3. 在每个文件中解析冲突(编辑并移除冲突标记)

4. 标记为已解析并完成合并:
   git add .
   git commit -m "解析合并冲突"

5. 重建项目:
   <build-command>

6. 验证服务器工作:
   /update-mcp-servers --server <name> --dry-run

dnx所需.NET 10+ SDK缺失

dnx-based服务器需要.NET 10+ SDK,但发现版本<version>(或无)。

WHY:dnx是.NET 10 SDK功能(等效于npx)。包每次运行自动解析到最新,但SDK必须版本10+。

手动步骤:

Windows:
  winget install Microsoft.DotNet.SDK.10

macOS:
  brew install dotnet@10

Linux (Ubuntu/Debian):
  sudo apt-get update
  sudo apt-get install -y dotnet-sdk-10.0

Linux (Fedora):
  sudo dnf install dotnet-sdk-10.0

验证安装:
  dotnet --version
  # 应显示10.x.xxx或更高

智能指导系统

此命令充当智能助手,可处理任何情况:

场景处理

场景 行为
所有依赖存在 正常继续更新
某些依赖缺失 提供缺失安装,如果拒绝则跳过不可用服务器
无MCP服务器 指导用户如何使用claude mcp add添加MCP服务器
所有服务器远程 解释无需本地更新,提供验证连接性选项
Git仓库脏 提供暂存更改或跳过并解释选项
网络不可用 检测并报告,建议稍后重试
部分失败 继续剩余,总结成功/失败内容

主动推荐

分析服务器时,主动推荐改进:

推荐:
- 考虑使用nvm管理Node.js版本(您在使用系统Node)
- 服务器'custom-mcp'使用已弃用SSE传输——考虑迁移到HTTP
- 3个npm包可在配置中使用@latest以自动更新

帮助模式

如果用户使用--help运行,显示全面帮助:

MCP服务器更新命令 - 全面管理工具

发现:
  自动从以下发现所有MCP服务器:
  - .mcp.json文件(项目+插件)
  - 用户settings.json
  - claude mcp list(尽力获取实时状态)

支持的更新方法:
  npm/npx包
  Python(pip、uv、uvx、pipx)
  .NET工具(带包名称解析)
  Docker镜像
  Git克隆仓库(Node、Python、.NET)
  dnx包(自动管理,.NET 10+ SDK)
  插件供应商服务器(委托给插件命令)
  远程HTTP/SSE(无需更新)

依赖管理:
  缺失工具?我们将帮助您以最佳实践安装:
  - 通过nvm安装Node.js(推荐)
  - 通过uv或pyenv安装Python
  - 通过官方安装程序安装.NET SDK
  - Docker Desktop

常用用法:
  /update-mcp-servers              # 所有服务器的交互更新
  /update-mcp-servers --dry-run    # 预览将要更新的内容
  /update-mcp-servers --server X   # 更新特定服务器
  /update-mcp-servers --all --yes  # 更新所有,无提示

更多详情,见:https://code.claude.com/docs/en/mcp

故障排除帮助

发生错误时,提供可操作的故障排除:

npm install 失败,对于'perplexity-mcp'

可能原因:
1. 网络连接问题
2. npm注册表暂时不可用
3. 包名称更改或已弃用

建议操作:
- 重试:/update-mcp-servers --server perplexity
- 检查npm状态:https://status.npmjs.org/
- 验证包:npm view perplexity-mcp
- 搜索替代:您希望我搜索类似MCP服务器吗?

传输类型

类型 描述 需要更新
stdio 本地进程(npm、python、docker、git) 是 - 更新包/镜像/仓库
http 远程HTTP服务器 否 - 服务器管理
sse 服务器发送事件(已弃用) 否 - 服务器管理

错误处理

错误 处理
claude mcp list 失败 继续基于文件的发现;设置状态为unknown
无可更新服务器 报告"所有服务器是远程HTTP - 无需本地更新"
npm install 失败 报告失败,继续剩余包
pip install 失败 报告失败,如果需要建议venv激活
dotnet tool update 失败 报告失败,显示解析的包名称,建议SDK版本检查
git pull 失败 报告失败(脏工作目录、网络等)
git仓库有冲突 跳过更新,报告"需要手动合并"(见步骤6.5)
未知方法 报告"无法自动更新:未知方法"并提供指导
权限被拒绝 建议sudo或npm前缀配置(见步骤6.5)
依赖缺失 以最佳实践提供安装(见步骤2.5)
工具被会话锁定 提供关闭会话、更新、重启的手动步骤(见步骤6.5)
dnx需要.NET 10+ SDK 显示发现的SDK版本,提供安装命令(见步骤6.5)
插件供应商服务器 委托给插件更新命令,不尝试直接更新

示例

示例1:更新所有服务器(默认)

用户:/claude-ecosystem:update-mcp-servers

# 发现输出:
发现10个MCP服务器:
- 4个可更新(npm)
- 2个可更新(git-node)
- 3个远程(无需更新)
- 1个未知(手动)

# 交互提示(自动启用,<10可更新):
您想更新哪些MCP服务器?
> 更新所有(6个服务器)

# 执行:
npm install -g chrome-devtools-mcp firecrawl-mcp perplexity-mcp @playwright/mcp
更新git仓库:mssql-mcp-server...
更新git仓库:custom-tools...

# 结果:
成功更新6个服务器。

示例2:干运行

用户:/claude-ecosystem:update-mcp-servers --dry-run

# 显示将要更新的内容而不执行:
将更新4个npm包:
  npm install -g chrome-devtools-mcp firecrawl-mcp perplexity-mcp @playwright/mcp

将更新2个git仓库:
  mssql-mcp-server (git-node):git pull && npm install && npm run build
  custom-tools (git-python):git pull && pip install -r requirements.txt

远程服务器(无需更新):context7、microsoft-learn、Ref
未知(手动):custom-local

示例3:缺失依赖

用户:/claude-ecosystem:update-mcp-servers

# 依赖检查:
需要Node.js/npm但未找到。

# AskUserQuestion:
您想如何安装Node.js?
> 通过nvm安装(推荐)

# 安装:
安装nvm...
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
nvm install --lts
Node.js v22.x安装成功

# 继续更新...

示例4:Git仓库有未提交更改

用户:/claude-ecosystem:update-mcp-servers --server mssql

# Git状态检查:
仓库'mssql-mcp-server'有未提交更改。

# AskUserQuestion:
您想如何处理?
> 暂存更改并继续

# 执行:
git stash
git pull origin main
npm install
npm run build
git stash pop
更新mssql-mcp-server

示例5:非交互模式

用户:/claude-ecosystem:update-mcp-servers --all --non-interactive

# 跳过提示,立即更新所有:
检查依赖...
所有必需依赖可用

更新6个服务器...
npm install -g chrome-devtools-mcp firecrawl-mcp perplexity-mcp @playwright/mcp
更新mssql-mcp-server...
更新custom-tools...

完成。更新6个服务器。

示例6:插件供应商和dnx服务器

用户:/claude-ecosystem:update-mcp-servers --dry-run

# 发现:
从5个配置文件发现14个MCP服务器

# 分类:
- 4个npm包(可更新)
- 1个dotnet工具:aspire.cli(从二进制"aspire"解析)
- 1个dnx服务器:nuget-mcp(自动管理,.NET SDK 10.0.100)
- 2个插件供应商:mssql-node、mssql-dotnet(插件:microsoft)
- 3个远程(无需更新)
- 2个git仓库
- 1个未知

# 插件供应商备注:
mssql-node和mssql-dotnet由microsoft插件管理。
运行`/microsoft:mssql update`以更新这些服务器。

# dnx备注:
nuget-mcp使用dnx(每次运行自动解析最新)。
检测到.NET SDK 10.0.100——无需更新操作。

相关命令

  • /audit-mcp - 审计MCP服务器配置
  • /user-config:mcp - 管理MCP服务器配置
  • /mcp - 检查MCP服务器状态(内置)

相关技能

调用mcp-integration技能以获取MCP传输类型指导和验证模式。