MCP服务器更新程序
用于分析和更新Claude Desktop的模型上下文协议(MCP)服务器的PowerShell工具。
🌟 特性
- 自动MCP服务器检测:读取您的Claude Desktop配置以查找所有已配置的MCP服务器。
- 智能存储库分析:检测Git存储库,即使它们位于父目录中。
- 多技术支持:处理各种项目类型,包括Node.js、Python、Go、Java、Rust、。NET和C/C++。
- 详细报告:提供对所有MCP服务器的全面分析。
- 自动更新检查:标识具有可用更新的服务器。
- 用户确认更新:在应用更新之前提示确认。
- 安全更新:在应用更新之前创建备份分支(如果存在本地更改)。
- 智能构建过程:更新后,根据项目类型自动运行正确的生成命令。
- 标准化本地化:使用PowerShell的标准本地化系统(
.psd1文件),易于扩展。
📋 需求
- Windows 10/11
- PowerShell 5.1或更高版本
- Git已安装并位于PATH中
- 已安装Claude Desktop
- MCP服务器的包管理器(npm、pip等)
🚀 快速开始
- 下载最新版本或克隆此存储库:
git clone https://github.com/JayceeB1/mcp-server-updater.git
cd mcp-server-updater- 从PowerShell运行脚本:
# Allow script execution (if needed, run PowerShell as Admin)
# Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
# Run the updater
.\Update-MCP-Servers.ps1 该脚本将分析您的服务器,报告状态,并询问您是否要更新任何有未决更改的服务器。
- 要使用特定语言(例如法语):
.\Update-MCP-Servers.ps1 -Language fr-FR *(有关更多详细信息,请参阅本地化部分)*
📊 它做什么
该工具按顺序执行以下操作:
- 分析阶段:
- 读取Claude Desktop配置文件(%APPDATA%\Claude\claude_desktop_config.json)以识别所有MCP服务器。 - 检测磁盘上每个服务器的位置。 - 查找与每个服务器关联的Git存储库(如果需要,搜索父目录)。 - 确定项目类型和所需的生成工具。 - 检查远程存储库中是否有可用的更新(git fetch + git rev-list).
- 报告阶段:
- 显示每个服务器的详细信息和更新状态。 - 生成详细的JSON报告(mcp-detailed-analysis.json). - 生成操作日志(mcp-updater-log.txt).
- 更新确认阶段:
- 如果任何服务器有可用的更新,它会列出这些更新。 - 提示用户确认(Y/N)在继续更新之前。
- 更新阶段 (如果用户确认):
- 对于已确认更新的每台服务器: - 使用备份未提交的本地更改 git stash (如果存在更改,则可选)。 - 从远程存储库中提取最新更改(git pull). - 使用适当的包管理器(npm、pip等)安装依赖项。 - 使用正确的构建系统(npm run build、mvn install等)构建更新的代码。 - 报告每次更新的成功或失败。
🛠️ 支持的项目类型
| 类型 | 检测方法 | 更新命令 |
|---|---|---|
| Node.js | package.json | npm install, npm run build |
| TypeScript | tsconfig.json | npm install, npm run build |
python requirements.txt, Pipfile, setup.py | pip install, pipenv install | |
| 去吧 | go.mod | go mod download, go build |
Java pom.xml, gradlew | mvn clean install, ./gradlew build | |
| 生锈 | Cargo.toml | cargo build |
| .NET | *.csproj | dotnet restore, dotnet build |
| C/C++ | Makefile, CMakeLists.txt | make, cmake |
🔧 配置
脚本本身不需要特殊配置。它会自动从以下位置读取您的Claude Desktop配置:
%APPDATA%\Claude\claude_desktop_config.json确保此文件正确列出了您的MCP服务器。
🌐 本地化
该工具使用PowerShell的标准本地化机制。面向用户的字符串存储在 .psd1 语言特定子目录中的文件 Strings 文件夹(例如。, Strings\en-US, Strings\fr-FR).
- 支持的语言:
- 英语(en-US)-默认值 - 法语(fr-FR)
- 语言选择:
1. 参数: 使用 -Language 具有支持的文化代码的参数(例如。, .\Update-MCP-Servers.ps1 -Language fr-FR). 1. 系统默认值: 如果 -Language 如果未提供,则脚本将尝试使用系统当前的UI区域性($PSUICulture.Name). 1. 退路: 如果指定的语言和系统文化都没有相应的 .psd1 文件,它回退到 en-US.
- 添加新语言:
1. 在中创建新的子目录 Strings 使用适当的文化代码(例如。, es-ES 西班牙语)。 1. 复制 Strings\en-US\Update-MCP-Servers.psd1 进入您的新目录。 1. 翻译复制的字符串值 .psd1 文件。 1. 您现在可以通过以下方式使用新语言 -Language 参数(例如。, -Language es-ES).
🔍 高级用法
命令行参数
.\Update-MCP-Servers.ps1 [-Language ]-Language:设置显示语言。使用标准区域性代码,如en-US,fr-FR等等。
*(注: -Update 和 -ForceUpdate 论点已被删除。脚本现在会自动检查更新并提示确认。)*
环境变量
MCP_UPDATER_BACKUP_DIR:(当前未实现)自定义备份位置。MCP_UPDATER_LOG_LEVEL:(当前未实现)设置为DEBUG以进行更详细的日志记录。
🚀 主要改进
与基本更新方法相比,此工具提供:
- 智能Git仓库检测 -搜索父目录。
- 增强的用户界面 -带有颜色编码的清晰显示。
- 标准化本地化 -使用易于扩展
.psd1文件夹。 - 简化执行 -基本操作不需要复杂的参数。
- 深度项目分析 -自动检测项目类型和生成命令。
- 本地变更保护 -在更新之前保留本地更改。
- 跨平台兼容性 -适用于各种类型的MCP服务器。
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
🤝 贡献
欢迎投稿!请随时提交拉取请求。考虑添加新语言的翻译!
☕ 支持发展
如果你觉得这个模块有用,可以考虑给我买杯咖啡来支持进一步的开发!

非常感谢您的支持,这有助于维护和改进这个项目!
📣 致谢
该工具是在Anthropic的人工智能助理Claude的帮助下创建的。
