英语| 简体中文
Open Source. Forever Free.
Built with ❤️ by Path Integral Institute🌟 MCPM-模型上下文协议管理器
MCPM是一个用于管理MCP服务器的开源CLI工具。它提供了一种简化的全局配置方法,您只需安装一次服务器,用配置文件组织它们,然后将它们集成到任何MCP客户端中。功能包括通过中央注册表发现服务器、直接执行、共享功能和客户端集成工具。
演示显示了过时的v1命令,新的演示正在烘焙。.. Demo of MCPM in action
🤝 社区贡献
💡 发展MCP生态系统! 我们欢迎对我们的 MCP注册表。添加自己的服务器、改进文档或建议功能。开源在社区参与下蓬勃发展!
🚀 快速安装
推荐:
curl -sSL https://mcpm.sh/install | bash或者选择 其他安装方法 喜欢 brew, pipx, uv 等等
🔎 概述
MCPM v2.0提供了一种使用全局配置模型管理MCP服务器的简化方法。主要特征包括:
- ✨ 全局服务器管理:安装服务器一次,随处使用
- 📋 虚拟配置文件:使用不同工作流的标签组织服务器
- 🔍 服务器发现:从MCP注册表浏览并安装
- 🚀 直接执行:通过stdio或HTTP运行服务器进行测试
- 🌐 公共共享:通过安全隧道共享服务器
- 🔄 服务器更新:检查并应用基于git、NPX和二进制服务器的更新
- 🎛️ 客户端集成:管理Claude Desktop、Cursor、Windsurf等的配置
- 🤖 AI代理友好:具有全面自动化支持的非交互式CLI llm.txt 引导
- 💻 漂亮的CLI:丰富的格式和交互式界面
- 📊 使用情况分析:监控服务器使用情况和性能
MCPM v2.0消除了v1基于目标的系统的复杂性,有利于干净的全局工作空间模型。
🖥️ 支持的MCP客户端
MCPM将支持管理以下客户端的MCP服务器:
- 🤖 克劳德桌面(拟人)
- ⌨️ 光标
- 🏄 帆板运动
- 🧩 Vscode
- 📝 克莱恩
- ➡️ 继续
- 🦢 鹅
- 🔥 5ire
- 🦘 Roo 代码
- ✨ 更多的客户即将到来。..
🔥 命令行界面(CLI)
MCPM提供了一个全面的CLI,具有干净、有序的界面。v2.0架构使用全局配置模型,其中服务器安装一次,可以用配置文件组织,然后根据需要集成到特定的MCP客户端中。
ℹ️ 将军
mcpm --help # Display help information and available commands
mcpm --version # Display the current version of MCPM🌐 服务器管理
全局服务器安装和管理命令:
# 🔍 Search and Install
mcpm search [QUERY] # Search the MCP Registry for available servers
mcpm info SERVER_NAME # Display detailed information about a server
mcpm install SERVER_NAME # Install a server from registry to global configuration
mcpm uninstall SERVER_NAME # Remove a server from global configuration
# 📋 List and Inspect
mcpm ls # List all installed servers and their profile assignments
mcpm edit SERVER_NAME # Edit a server configuration
mcpm inspect SERVER_NAME # Launch MCP Inspector to test/debug a server🚀 服务器执行
直接执行服务器以进行测试或集成:
mcpm run SERVER_NAME # Execute a server directly over stdio
mcpm run SERVER_NAME --http # Execute a server over HTTP for testing
mcpm share SERVER_NAME # Share a server through secure tunnel for remote access
mcpm usage # Display comprehensive analytics and usage data📂 配置文件管理
配置文件是虚拟标记,用于将服务器组织到不同工作流的逻辑组中:
# 🔄 Profile Operations
mcpm profile ls # List all profiles and their tagged servers
mcpm profile create PROFILE # Create a new profile
mcpm profile rm PROFILE # Remove a profile (servers remain installed)
mcpm profile edit PROFILE # Interactive server selection for profile
# 🚀 Profile Execution
mcpm profile run PROFILE # Execute all servers in a profile over stdio or HTTP
mcpm profile share PROFILE # Share all servers in a profile through secure tunnel
mcpm profile inspect PROFILE # Launch MCP Inspector for all servers in profile🖥️ 客户端集成
管理MCP客户端配置(Claude Desktop、Cursor、Windsurf等):
mcpm client ls # List all supported MCP clients and their status
mcpm client edit CLIENT_NAME # Interactive server enable/disable for a client
mcpm client edit CLIENT_NAME -e # Open client config in external editor
mcpm client import CLIENT_NAME # Import server configurations from a client🔄 服务器更新
检查已安装的MCP服务器并应用更新:
mcpm update # Update all servers
mcpm update SERVER_NAME # Update a specific server
mcpm update --check # Dry run — check for updates without applying
mcpm update --rebase # Use git rebase instead of fast-forward
mcpm update --init # Scan servers and populate source metadata
mcpm update --init --force # Re-detect all source metadataMCPM跟踪每个服务器的来源(git repo、npm包、HTTP远程),并可以自动提取最新更改。基于Git的服务器通过以下方式更新 git pull --ff-only 默认情况下 --rebase 作为一种选择加入的替代方案。NPX/UVX服务器在运行时自动更新,仅供参考。
🛠️ 系统和配置
mcpm doctor # Check system health and server status
mcpm config # Manage MCPM configuration and settings
mcpm migrate # Migrate from v1 to v2 configuration📚 注册表
MCP注册表是可用MCP服务器的中央存储库,可以使用MCPM安装。该注册表可在 mcpm.sh/注册表.
🤖 AI代理集成
MCPM旨在为AI代理提供全面的自动化支持。每个交互式命令都有一个使用CLI参数和环境变量的非交互式替代方案。
🔧 非交互模式
设置环境变量以实现完全自动化:
export MCPM_NON_INTERACTIVE=true # Disable all interactive prompts
export MCPM_FORCE=true # Skip confirmations
export MCPM_JSON_OUTPUT=true # JSON output for parsing📋 LLM.txt指南
这 llm.txt 该文件提供了专门为AI代理设计的全面文档,包括:
- 完整的命令参考,包括参数和示例
- 环境变量使用模式
- 自动化的最佳实践
- 错误处理和故障排除
- 批量操作模式
llm.txt文件是从CLI结构自动生成的,并在每次发布时保持最新。
⚡ 示例用法
用例1:通过HTTP公开本地stdio服务器
- 将服务器添加到MCPM
mcpm new [MY_SERVER_NAME] --type stdio --command "[COMMAND]" --args "[ARG_1] [ARG_2] ..."(添加 --force arg绕过确认交互) 验证它是否出现在您安装的服务器中:
mcpm ls你应该看看 [MY_SERVER_NAME] 在列表中。
- 通过HTTP提供服务
mcpm run [MY_SERVER_NAME] --httpMCPM打印服务器URL,例如:
URL: http://127.0.0.1:6276/mcp/- 在您的网络上公开它(可选)
mcpm run [MY_SERVER_NAME] --http --host 0.0.0.0提示:添加 --port 选择其他端口。
用例2:组合多个服务器并将其作为一个配置文件提供
- 将服务器添加到MCPM
# Stdio server
mcpm new [SERVER_A] --type stdio --command "[COMMAND]" --args "[ARG_1] [ARG_2] ..." --force
# Remote HTTP/SSE server
mcpm new [SERVER_B] --type remote --url "http://SERVER_ADDR/mcp/" --force- 创建配置文件并添加服务器
互动:
mcpm profile create [PROFILE_NAME]
mcpm profile edit [PROFILE_NAME]MCPM将列出所有已安装的服务器,您可以使用箭头导航,使用空格选择/取消选择,键入搜索,然后按Enter确认。
验证:
mcpm profile ls您应该看到所选服务器的个人资料。
- 运行配置文件
# Stdio
mcpm profile run [PROFILE_NAME]
# HTTP
mcpm profile run [PROFILE_NAME] --http
# Optional: host and port
mcpm profile run [PROFILE_NAME] --http --host 0.0.0.0 --port 8080其他常见用法
# Server management
mcpm new myserver --type stdio --command "python -m server" --force
mcpm edit myserver --env "API_KEY=secret" --force
# Profile management
mcpm profile edit web-dev --add-server myserver --force
mcpm profile run web-dev --port 8080
# Client integration
mcpm client edit cursor --add-profile web-dev --force🗺️ 路线图
✅ v2.0完成
- \[x\] 全局服务器配置模型
- \[x\] 基于配置文件的服务器标记和组织
- \[x\] 交互式命令界面
- \[x\] 客户集成管理(
mcpm client edit) - \[x\] 具有一致用户体验的现代CLI
- \[x\] 注册表集成和服务器发现
- \[x\] 直接执行和共享服务器
- \[x\] 从现有客户端配置导入
- \[x\] 额外的客户端支持(gemini cli、codex等)
🔮 未来的增强功能
- \[x\] 服务器更新管理(
mcpm update) - \[\]GitHub发布二进制更新(下载+替换)
- \[\]高级服务器访问监控和分析
- \[\]在docker中执行
- \[\]将MCPM功能作为MCP服务器公开(搜索、安装、配置文件管理等)
- \[\]MCP检查的TUI接口
- \[\]MCP和配置文件管理的TUI接口
📦 其他安装方法
🍺 家酿
brew install mcpm📦 pipx(推荐用于Python工具)
pipx install mcpm🪄 紫外线工具
uv tool install mcpm更多安装方法
🐍 点
pip install mcpm🧰 X-CMD
如果您是 x-cmd,您可以运行:
x install mcpm.sh👨💻 发展
此存储库包含MCP Manager的CLI和服务组件,使用Python和Click按照现代包开发实践构建。
📋 开发需求
- 🐍 Python 3.10+
- 🚀 uv(用于虚拟环境和依赖关系管理)
- 🖱️ 点击CLI框架
- ✨ 丰富的控制台输出
- 🌐 API交互请求
📁 项目结构
该项目遵循现代的基于src的布局:
mcpm.sh/
├── src/ # Source package directory
│ └── mcpm/ # Main package code
├── tests/ # Test directory
├── test_cli.py # Development CLI runner
├── pyproject.toml # Project configuration
├── pages/ # Website content
│ └── registry/ # Registry website
├── mcp-registry/ # MCP Registry data
└── README.md # Documentation🚀 开发设置
- 克隆仓库
git clone https://github.com/pathintegral-institute/mcpm.sh.git
cd mcpm.sh- 使用uv设置虚拟环境
uv venv --seed
source .venv/bin/activate # On Unix/Mac- 在开发模式下安装依赖项
uv pip install -e .- 在开发过程中直接运行CLI
# Either use the installed package
mcpm --help
# Or use the development script
./test_cli.py --help- 运行测试
pytest tests/✅ 最佳实践
- 📁 使用基于src的目录结构来防止导入混淆
- 🔧 使用可编辑的安装进行开发
uv pip install -e . - 🧩 保持命令模块化
src/mcpm/commands/目录 - 🧪 在中添加新功能的测试
tests/目录 - 💻 使用
test_cli.py快速开发测试脚本
🔢 版本管理
MCP使用单一真实源模式进行版本管理,以确保所有组件的一致性。
🏷️ 版本结构
- 📍 规范版本定义于
version.py从项目根源 - 📥
src/mcpm/__init__.py导入此版本 - 📄
pyproject.toml使用动态版本控制从中读取version.py - 🏷️ Git标签是使用前缀为“v”的相同版本号创建的(例如v1.0.0)
🔄 更新版本
发布新版本时:
- 使用提供的版本凹凸脚本
./bump_version.sh NEW_VERSION
# Example: ./bump_version.sh 1.1.0- 推送更改和标签
git push && git push --tags- 创建与新版本匹配的GitHub版本
此过程确保版本在所有地方都是一致的:代码、包元数据和git标签。 PyPI发布由CI/CD管道处理,并将自动触发。
📜 许可证
麻省理工学院
星迹

