Token导航 LogoToken导航TokenDH.com
Health Monitor (mcp-server-health-monitor) logo
AI代理stdio官方级别未说明来源级核验

Health Monitor (mcp-server-health-monitor)

MCP Server

@modelcontextprotocol/inspector

MCP服务器健康监控工具,通过调用list_tools协议检查服务器健康状态,提供自动发现、版本漂移检测、历史趋势分析和HTML仪表板功能。

工具数

8

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude数据分析Claude DesktopClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

dbsectrainer

提供方

dbsectrainer

最后核验

2026/5/17 20:20

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/list

详细介绍

MCP服务器运行状况监视器

npm mcp-server-health-monitor 包裹

MCP本地健康监测,它讲协议,而不仅仅是HTTP。它不是ping端口,而是调用 list_tools 在每台服务器上,您的代理使用相同的握手方式,因此绿色状态表示服务器实际上已准备好为MCP请求提供服务。所有健康史在SQLite中都是本地的;不需要外部监控服务。

工具参考 | 配置 | 贡献 | 故障排除

主要特点

  • 自动发现:无需额外设置即可读取现有的MCP配置文件(Claude Desktop、Cursor、VS Code)。
  • 非侵入式探测:只打电话 list_tools 在目标服务器上--只读,无副作用。
  • 版本漂移检测:跨检查比较工具架构,以检测服务器何时更新。
  • 历史趋势:将延迟历史存储在SQLite中;p50/p95是根据存储的历史记录按需计算的,在它们成为中断之前进行表面回归。
  • HTML仪表板:生成一个独立的健康仪表板,每个服务器都有正常运行时间火花线。
  • 后台轮询:作为守护进程运行,因此当您请求时,健康数据始终是最新的。

为什么这超过了通用的正常运行时间监视器?

通用正常运行时间监视器(UptimeRobot、Pingdom、BetterStack)检查端口是否打开或HTTP端点是否返回200。对于MCP服务器来说,这还不够——服务器可能正在运行,但无法协商MCP协议或返回损坏的工具模式。

mcp服务器运行状况监视器通用正常运行时间监视器
探测方法MCP list_tools call--测试实际协议HTTP ping或TCP端口检查
架构漂移检测检测工具签名在版本之间何时更改没有协议感知是不可能的
配置自动发现自动读取克劳德桌面、光标、VS代码配置每台服务器手动输入URL
数据驻留本地SQLite;无外部服务健康数据存储在供应商云中
付费免费,自托管免费等级有限;按历史记录/警报付费

如果你想知道你的MCP服务器是真正健康的——而不仅仅是“进程正在运行”——这是一个正确的工具。

需求

  • Node.js v20.19或更新版本。
  • npm。

入门

将以下配置添加到MCP客户端:

{
  "mcpServers": {
    "health-monitor": {
      "command": "npx",
      "args": ["-y", "mcp-server-health-monitor@latest"]
    }
  }
}
监视器会自动从其注册的同一配置文件中发现其他MCP服务器。不需要额外的设置。

MCP客户端配置

放大器·克劳德码·克莱恩·光标·VS码·风帆·泽德

您的第一个提示

在MCP客户端中输入以下内容以验证一切正常:

Check the health of all my MCP servers.

您的客户端应返回一个状态表,显示每个服务器的当前延迟和运行状况。

工具

健康检查(3种工具)

  • health_check_all --通过并行方式探测所有已配置的服务器 list_tools,测量延迟并存储结果。接受可选 timeout_ms 参数(默认值:5000)。
  • get_server_status --返回每台服务器的详细信息,包括延迟、上次出现时间、24小时错误计数、上次错误消息和p50/p95延迟百分位数。需要 server_name.
  • list_degraded --过滤器用于过滤脱机或延迟高于阈值的服务器。接受可选 latency_threshold 以(权力)否决

历史记录(1个工具)

  • get_history --返回特定服务器的原始健康检查历史记录,按最新顺序排列。需要 server_name;接受可选 limit (默认值:50,最大值:500)。

服务器注册表(2个工具)

  • configure_server --注册一个新的MCP服务器进行监控。以这种方式添加的服务器存储在 ~/.mcp/extra-servers.json 并与自动发现的服务器合并。必修的: name, command.可选: args, env.
  • remove_server --从监视中删除手动注册的服务器。仅影响通过添加的服务器 configure_server;自动发现的服务器不受影响。需要 name.

更新(1个工具)

  • check_updates --通过在每个探测器上对工具模式进行哈希运算并与最后存储的哈希值进行比较来检测版本漂移。退货 has_changed, previous_hash, current_hash,以及 changed_at 每台服务器。

导出(1个工具)

  • export_dashboard --生成一个自包含的单文件HTML仪表板,其中包含摘要卡、具有p50/p95延迟的每台服务器状态表和内联SVG正常运行时间火花线。接受可选 output_path 写入磁盘。

手动服务器注册表

除了从MCP配置文件中自动发现外,您还可以使用 configure_server 工具。手动注册的服务器将写入 ~/.mcp/extra-servers.json (与健康数据库一起存储),并与每个探测器上的自动发现服务器合并。

Add a server named "my-internal-tool" running with command "node" and args ["/opt/tools/server.js"]

要停止监视手动注册的服务器,请执行以下操作:

Remove the server named "my-internal-tool" from monitoring

从Claude Desktop的配置中发现的服务器无法通过以下方式删除 remove_server --直接编辑MCP配置文件以删除这些文件。

配置

--interval / --interval-seconds

轮询每个MCP服务器的频率(秒)。

类型: number 违约: 60

--latency-threshold

延迟(毫秒),超过该延迟,服务器将被标记为降级。

类型: number 违约: 1000

--db / --db-path

用于存储健康历史的SQLite数据库文件的路径。

类型: string 违约: ~/.mcp/health.db

--daemon

作为后台轮询守护进程运行。健康数据是连续收集的,而不是按需收集的。

类型: boolean 违约: false

--startup-grace-seconds

新启动的服务器之前的宽限期(秒)被认为是不健康的。

类型: number 违约: 10

通过传递旗帜 args JSON配置中的属性:

{
  "mcpServers": {
    "health-monitor": {
      "command": "npx",
      "args": ["-y", "mcp-server-health-monitor@latest", "--interval=30", "--latency-threshold=500"]
    }
  }
}

挂牌

  • 列在 MCP注册表 --搜索 mcp-server-health-monitor.
  • 上市 MCP市场 --搜索 mcp-server-health-monitor.

验证

在发布新版本之前,使用MCP Inspector验证服务器,以确认所有工具都已正确公开,协议握手成功。

交互式用户界面 (打开浏览器):

npm run build && npm run inspect

CLI模式 (脚本/CI友好):

# List all tools
npx @modelcontextprotocol/inspector --cli node dist/index.js --method tools/list

# List resources and prompts
npx @modelcontextprotocol/inspector --cli node dist/index.js --method resources/list
npx @modelcontextprotocol/inspector --cli node dist/index.js --method prompts/list

# Call a tool (example — replace with a relevant read-only tool for this plugin)
npx @modelcontextprotocol/inspector --cli node dist/index.js \
  --method tools/call --tool-name health_check_all

# Call a tool with arguments
npx @modelcontextprotocol/inspector --cli node dist/index.js \
  --method tools/call --tool-name health_check_all --tool-arg key=value

在发布之前运行,以捕获工具注册和运行时启动中的回归。

贡献

探头模块带电 src/probes/。每个探头必须返回一个 ProbeResultstatus, latencyMs,以及可选 message。保持所有探测器为只读——永远不要在受监控的服务器上引发副作用。

npm install && npm test

目录标签

目录标签

TypeScriptClaude数据分析服务器监控本地部署MCP协议健康检查SQLite存储自动发现

支持客户端

Claude DesktopClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@modelcontextprotocol/inspector

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP