适用于MCP服务器的热重载监控工具——就像nodemon,但针对模型上下文协议
修改您的MCP服务器代码并立即看到更改,无需重启您的MCP客户端。就像nodemon自动重启Node.js应用程序一样,mcpmon会自动重启MCP服务器。
mcpmon是一个位于您的MCP客户端(如Claude Code、Claude Desktop、MCP Inspector等)和MCP服务器之间的透明代理。当您修改服务器代码时,mcpmon会自动重启服务器,同时保持客户端连接。
关键优势:
全局安装:
npm install -g mcpmon
与您的MCP服务器一起使用:
# 替代:node server.js
mcpmon node server.js
# 替代:python server.py
mcpmon python server.py
# 替代:deno run --allow-all server.ts
mcpmon deno run --allow-all server.ts
与MCP客户端一起使用:
# MCP Inspector
npx @modelcontextprotocol/inspector mcpmon node server.js
# 对于现有的Claude Code/Desktop服务器,使用设置:
mcpmon setup my-server
设置命令会自动配置您的现有MCP服务器以启用热重载!✨
就这样!您的MCP服务器现在已启用热重载。编辑您的服务器代码,更改会立即生效。
# Node.js服务器
mcpmon node server.js
# Python服务器
mcpmon python -m mcp_server
# 带参数的Python
mcpmon python server.py --port 3000
# Deno服务器
mcpmon deno run --allow-all server.ts
# 带调试
mcpmon node --inspect server.js
# 直接命令
npx @modelcontextprotocol/inspector mcpmon node server.js
# 带环境变量
API_KEY=your-key npx @modelcontextprotocol/inspector mcpmon node server.js
最简单的方法:使用自动设置命令来配置现有服务器:
# 为现有服务器设置热重载
mcpmon setup my-server
# 为所有标准I/O服务器设置热重载
mcpmon setup --all
# 列出可用服务器
mcpmon setup --list
# 如有需要恢复原始配置
mcpmon setup --restore
设置命令会自动:
设置好热重载后:
专业提示:为了获得最佳开发体验,请先进行代码更改,然后进行模式更改。即使在模式更新之后,Claude Desktop也会从最新的热重载代码中获取工具调用!
手动配置:您也可以手动更新配置:
Claude Code (~/.claude_code_config):
{
"mcpServers": {
"my-server": {
"command": "mcpmon",
"args": ["node", "server.js"],
"env": {
"API_KEY": "your-key"
}
}
}
}
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"my-server": {
"command": "/Users/username/.nvm/versions/node/v22.15.0/bin/node",
"args": ["/usr/local/bin/mcpmon", "python", "server.py"],
"env": {
"PYTHONPATH": "/path/to/your/modules"
}
}
}
}
注意:设置命令会自动检测您最新的Node.js版本和mcpmon路径。上面显示的是生成的配置示例 - 您很少需要手动编写这些内容!
mcpmon开箱即用,无需配置。它会自动检测您的服务器文件并开始监视更改。
要监视其他文件:
# 监视多个文件
MCPMON_WATCH="server.js,config.json" mcpmon node server.js
就是这样!mcpmon设计为无需配置即可工作。
MCPMON_WATCH - 覆盖要监视的文件/目录(逗号分隔)MCPMON_DELAY - 重启延迟(毫秒,默认值:1000)MCPMON_VERBOSE - 启用详细日志记录mcpmon作为MCP客户端和服务器之间的透明代理,提供自动热重载功能:
sequenceDiagram
participant Client as MCP Client
participant mcpmon
participant Server as MCP Server
Client->>mcpmon: 请求
mcpmon->>Server: 请求
Server->>mcpmon: 响应
mcpmon->>Client: 响应
Server->>Server: 文件更改
Note right of Server: 自动重启
Client->>mcpmon: 请求
mcpmon->>Server: 请求
Server->>mcpmon: 响应
m
cpmon->>Client: 响应
神奇之处:您的MCP客户端在服务器重新加载时保持连接。无需重新连接Claude Code或重启MCP Inspector!
| 特性 | 无mcpmon | 有mcpmon |
|---|---|---|
| 文件更改 | 需要手动重启 | 自动重启 |
| 客户端连接 | 必须重新连接 | 保持连接 |
| 丢失的消息 | 可能 | 从未(缓冲) |
| 设置复杂度 | 手动配置更改 | 只需添加mcpmon |
启用详细日志记录以查看发生了什么:
MCPMON_VERBOSE=1 mcpmon node server.js
常见问题:
mcpmon setup自动检测现代Node.js版本# 运行测试(包括清理和构建)
npm test
# 开发模式
npm run dev
详见贡献指南了解更多信息。
需求:Node.js 16+(设置命令会自动检测)
# 全局安装(推荐)
npm install -g mcpmon
# 或不安装直接使用
npx mcpmon node server.js
我们欢迎贡献!详见贡献指南了解详情。
MIT许可证 - 详情见LICENSE文件。
喜欢nodemon吗?您会爱上mcpmon。 简单、快速且可靠的MCP开发热重载。