返回市场
MCP服务器更新器

MCP服务器更新器

作者:JayceeB13 星标更新:2025-04-06

项目介绍

MCP服务器更新工具

一个PowerShell工具,用于分析并更新Claude桌面中的模型上下文协议(MCP)服务器。

MCP服务器更新工具横幅

🌟 特性

  • 自动MCP服务器检测:读取Claude桌面配置以查找所有已配置的MCP服务器。
  • 智能仓库分析:即使仓库位于父目录中也能检测到。
  • 多技术支持:处理各种项目类型,包括Node.js、Python、Go、Java、Rust、.NET和C/C++。
  • 详细报告:提供对所有MCP服务器的全面分析。
  • 自动更新检查:识别有可用更新的服务器。
  • 用户确认更新:在应用更新前提示确认。
  • 安全更新:在应用更新前创建备份分支(如果存在本地更改)。
  • 智能构建过程:更新后根据项目类型自动运行正确的构建命令。
  • 标准化本地化:使用PowerShell的标准本地化系统(.psd1文件),易于扩展。

📋 要求

  • Windows 10/11
  • PowerShell 5.1或更高版本
  • 已安装Git且添加到PATH
  • 已安装Claude桌面
  • 各种MCP服务器的包管理器(npm、pip等)

🚀 快速开始

  1. 下载最新版本或克隆此仓库:

    git clone https://github.com/JayceeB1/mcp-server-updater.git
    cd mcp-server-updater
    
  2. 在PowerShell中运行脚本:

    # 允许脚本执行(如需,请以管理员身份运行PowerShell)
    # Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 
    
    # 运行更新器
    .\Update-MCP-Servers.ps1 
    

    脚本将分析您的服务器,报告状态,并询问您是否要更新任何有待更改的服务器。

  3. 使用特定语言(例如法语):

    .\Update-MCP-Servers.ps1 -Language fr-FR 
    

    (参见本地化部分获取更多详情)

📊 它做了什么

该工具按顺序执行以下操作:

  1. 分析阶段

    • 读取Claude桌面配置文件(%APPDATA%\Claude\claude_desktop_config.json)以识别所有MCP服务器。
    • 检测每个服务器在磁盘上的位置。
    • 查找与每个服务器关联的Git仓库(如有必要,搜索父目录)。
    • 确定项目类型和所需的构建工具。
    • 检查远程仓库是否有可用更新(git fetch + git rev-list)。
  2. 报告阶段

    • 显示每个服务器的详细信息和更新状态。
    • 生成详细的JSON报告(mcp-detailed-analysis.json)。
    • 生成操作日志(mcp-updater-log.txt)。
  3. 更新确认阶段

    • 如果有任何服务器有可用更新,则列出它们。
    • 在继续更新之前提示用户确认(Y/N)。
  4. 更新阶段(如果用户确认):

    • 对于每个确认更新的服务器:
      • 使用git stash备份未提交的本地更改(可选,如果有更改)。
      • 从远程仓库拉取最新更改(git pull)。
      • 使用适当的包管理器安装依赖项(npm、pip等)。
      • 使用正确的构建系统构建更新后的代码(npm run build、mvn install等)。
    • 报告每次更新的成功或失败。

🛠️ 支持的项目类型

类型检测方法更新命令
Node.jspackage.jsonnpm install, npm run build
TypeScripttsconfig.jsonnpm install, npm run build
Pythonrequirements.txt, Pipfile, setup.pypip install, pipenv install
Gogo.modgo mod download, go build
Javapom.xml, gradlewmvn clean install, ./gradlew build
RustCargo.tomlcargo build
.NET*.csprojdotnet restore, dotnet build
C/C++Makefile, CMakeLists.txtmake, cmake

🔧 配置

无需特别配置脚本本身。它会自动从以下位置读取您的Claude桌面配置:

%APPDATA%\Claude\claude_desktop_config.json

确保此文件正确列出了您的MCP服务器。

🌐 本地化

该工具使用PowerShell的标准本地化机制。面向用户的字符串存储在Strings文件夹下语言特定子目录中的.psd1文件中(例如,Strings\en-USStrings\fr-FR)。

  • 支持的语言

    • 英语(en-US)- 默认
    • 法语(fr-FR
  • 语言选择

    1. 参数:使用支持的文化代码的-Language参数(例如,.\Update-MCP-Servers.ps1 -Language fr-FR)。
    2. 系统默认:如果没有提供-Language,脚本尝试使用系统的当前UI文化($PSUICulture.Name)。
    3. 回退:如果指定的语言或系统文化没有对应的.psd1文件,它将回退到en-US
  • 添加新语言

    1. Strings中使用适当的文化代码创建一个新的子目录(例如,es-ES用于西班牙语)。
    2. Strings\en-US\Update-MCP-Servers.psd1复制到您的新目录。
    3. 翻译复制的.psd1文件中的字符串值。
    4. 您现在可以通过-Language参数使用新的语言(例如,-Language es-ES)。

🔍 高级用法

命令行参数

.\Update-MCP-Servers.ps1 [-Language <cultureCode>]
  • -Language <cultureCode>:设置显示语言。使用标准文化代码,如en-USfr-FR等。

(注意:-Update-ForceUpdate参数已被移除。脚本现在自动检查更新并提示确认。)

环境变量

  • MCP_UPDATER_BACKUP_DIR:(尚未实现)自定义备份位置。
  • MCP_UPDATER_LOG_LEVEL:(尚未实现)设置为DEBUG以获得更详细的日志记录。

🚀 主要改进

与基本更新方法相比,此工具提供了:

  1. 智能Git仓库检测 - 搜索父目录。
  2. 增强的用户界面 - 清晰显示并带有颜色编码。
  3. 标准化本地化 - 使用.psd1文件易于扩展。
  4. 简化执行 - 基本操作不需要复杂的参数。
  5. 深入项目分析 - 自动检测项目类型和构建命令。
  6. 本地更改保护 - 在更新前暂存本地更改。
  7. 跨平台兼容性 - 适用于各种类型的MCP服务器。

📄 许可证

该项目采用MIT许可证 - 详见LICENSE文件。

🤝 贡献

欢迎贡献!请随意提交Pull Request。考虑为新语言添加翻译!

☕ 支持开发

如果您发现此模块有用,请考虑购买一杯咖啡来支持进一步开发!

购买我一杯咖啡

您的支持非常宝贵,有助于维护和改进这个项目!

📣 致谢

此工具是在Anthropic的AI助手Claude的帮助下创建的。

📝 其他语言