使用说明
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).
- 读取Claude Desktop配置文件(
-
报告阶段:
- 显示每个服务器的详细信息和更新状态。
- 生成详细的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)
- 英语(
-
语言选择:
- 参数: 使用
-Language具有支持的文化代码的参数(例如。,.\Update-MCP-Servers.ps1 -Language fr-FR). - 系统默认值: 如果
-Language如果未提供,则脚本将尝试使用系统当前的UI区域性($PSUICulture.Name). - 退路: 如果指定的语言和系统文化都没有相应的
.psd1文件,它回退到en-US.
- 参数: 使用
-
添加新语言:
- 在中创建新的子目录
Strings使用适当的文化代码(例如。,es-ES西班牙语)。 - 复制
Strings\en-US\Update-MCP-Servers.psd1进入您的新目录。 - 翻译复制的字符串值
.psd1文件。 - 您现在可以通过以下方式使用新语言
-Language参数(例如。,-Language es-ES).
- 在中创建新的子目录
🔍 高级用法
命令行参数
.\Update-MCP-Servers.ps1 [-Language <cultureCode>]
-Language <cultureCode>:设置显示语言。使用标准区域性代码,如en-US,fr-FR等等。
(注: -Update 和 -ForceUpdate 论点已被删除。脚本现在会自动检查更新并提示确认。)
环境变量
MCP_UPDATER_BACKUP_DIR:(当前未实现)自定义备份位置。MCP_UPDATER_LOG_LEVEL:(当前未实现)设置为DEBUG以进行更详细的日志记录。
🚀 主要改进
与基本更新方法相比,此工具提供:
- 智能Git仓库检测 -搜索父目录。
- 增强的用户界面 -带有颜色编码的清晰显示。
- 标准化本地化 -使用易于扩展
.psd1文件夹。 - 简化执行 -基本操作不需要复杂的参数。
- 深度项目分析 -自动检测项目类型和生成命令。
- 本地变更保护 -在更新之前保留本地更改。
- 跨平台兼容性 -适用于各种类型的MCP服务器。
📄 许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
🤝 贡献
欢迎投稿!请随时提交拉取请求。考虑添加新语言的翻译!
☕ 支持发展
如果你觉得这个模块有用,可以考虑给我买杯咖啡来支持进一步的开发!
非常感谢您的支持,这有助于维护和改进这个项目!
📣 致谢
该工具是在Anthropic的人工智能助理Claude的帮助下创建的。