mcp正常运行时间kuma
特性
- 实时监控:通过Socket访问监视器、心跳、正常运行时间和响应指标。IO具有即时状态更改通知。
- 上下文友好:默认情况下只返回基本数据,以避免压倒性的LLM上下文窗口。
- 多个传输:支持stdio(本地)和可流式传输HTTP(远程)。
快速开始
使用npx(stdio传输)
将此添加到MCP客户端配置中:
{
"mcpServers": {
"uptime-kuma": {
"command": "npx",
"args": ["-y", "@davidfuchs/mcp-uptime-kuma"],
"env": {
"UPTIME_KUMA_URL": "http://your-uptime-kuma-instance:3001",
"UPTIME_KUMA_USERNAME": "your_username",
"UPTIME_KUMA_PASSWORD": "your_password"
}
}
}
}使用Docker(流式HTTP传输)
选项1:Docker运行
docker run -d \
--name mcp-uptime-kuma \
-p 3000:3000 \
-e UPTIME_KUMA_URL=http://your-uptime-kuma-instance:3001 \
-e UPTIME_KUMA_USERNAME=your_username \
-e UPTIME_KUMA_PASSWORD=your_password \
davidfuchs/mcp-uptime-kuma:latest \
-t streamable-http选项2:Docker编写
A. 文件在存储库中提供。下载它,配置环境变量,然后运行:
docker compose up -d然后配置您的MCP客户端以连接到端点:
{
"mcpServers": {
"uptime-kuma": {
"url": "http://localhost:3000/mcp"
}
}
}看 认证方法 用于JWT令牌和匿名身份验证选项。
对话示例
MCP server answering questions about Uptime Kuma monitors *对话中 Librechat 哪里 mcp-uptime-kuma 服务器正在提供来自Uptime Kuma的实时信息。*
可用工具
监视器
| 工具 | 目的 |
|---|---|
getMonitorSummary | 快速了解所有监视器的当前状态。支持过滤 |
listMonitors | 获取所有具有配置的监视器的完整列表。支持过滤 |
listMonitorTypes | 获取Uptime Kuma支持的所有可用显示器类型。 |
getMonitor | 按ID获取特定监视器的详细配置 |
createMonitor | 创建新监视器(至少需要名称和类型)。 |
updateMonitor | 更新现有监视器的配置。 |
deleteMonitor | 永久删除监视器及其所有心跳历史记录。 |
pauseMonitor | 暂停监视器以停止执行检查。 |
resumeMonitor | 恢复暂停的监视器以重新开始检查。 |
心跳
| 工具 | 目的 |
|---|---|
listHeartbeats | 获取所有监视器的状态检查历史记录。 |
getHeartbeats | 获取特定监视器的状态检查历史记录。 |
通知
| 工具 | 目的 |
|---|---|
listNotifications | 列出所有已配置的通知渠道(Slack、Discord、电子邮件、webhooks等)。 |
addNotification | 创建新的通知通道。 |
updateNotification | 更新现有的通知渠道。 |
deleteNotification | 永久删除通知通道。 |
标签
| 工具 | 目的 |
|---|---|
listTags | 列出Uptime Kuma中定义的所有标签。 |
addTag | 创建一个可以分配给监视器的新标签。 |
deleteTag | 永久删除标签(将其从所有监视器中删除)。 |
维护
| 工具 | 目的 |
|---|---|
getMaintenanceWindows | 列出所有计划维护窗口。 |
createMaintenance | 安排一个新的维护窗口。 |
状态页面和设置
| 工具 | 目的 |
|---|---|
listStatusPages | 列出所有已配置的状态页面。 |
getSettings | 获取Kuma服务器的正常运行时间设置。 |
过滤
getMonitorSummary 和 listMonitors 支持以下过滤方式:
- 关键词:空格分隔的关键字用于与监视器路径名进行模糊匹配
- 类型:监视器类型,逗号分隔(例如。,
"http","http,ping,dns") - 活跃的:按活动筛选(
true)或不活动(false)监视器 - 维护:按维护模式状态过滤
- 标签:标签名称和可选值,逗号分隔(例如。,
"production","env=staging") - 状态 (仅限getMonitorSummary):心跳状态(
"0"=下降,"1"=向上,"2"=待定,"3"=维护)
示例:
getMonitorSummary({ status: "0" }) // All DOWN monitors
getMonitorSummary({ type: "http", maintenance: true }) // HTTP monitors in maintenance
listMonitors({ tags: "production,region=us-east" }) // Monitors with specific tags认证方法
匿名认证
如果在Uptime Kuma实例上禁用身份验证,则仅 UPTIME_KUMA_URL 是必需的。
用户名/密码验证
UPTIME_KUMA_URL=http://your-instance:3001
UPTIME_KUMA_USERNAME=your_username
UPTIME_KUMA_PASSWORD=your_password
UPTIME_KUMA_2FA_TOKEN=123456 # Optional, only if 2FA is enabledJWT令牌身份验证
建议2FA用户使用。如果同时提供用户名和密码,则优先于用户名和密码。
UPTIME_KUMA_URL=http://your-instance:3001
UPTIME_KUMA_JWT_TOKEN=your_jwt_token获取您的JWT代币
使用CLI实用程序(推荐):
npx -p @davidfuchs/mcp-uptime-kuma mcp-uptime-kuma-get-jwt http://localhost:3001 admin mypassword使用Docker:
docker run --rm davidfuchs/mcp-uptime-kuma:latest get-jwt http://host.docker.internal:3001 admin mypassword从浏览器: 打开开发人员工具→ 存储/应用→ 本地存储→ find token 钥匙。
LibreChat配置
stdio传输:
mcpServers:
uptime-kuma:
command: npx
args: ["-y", "@davidfuchs/mcp-uptime-kuma"]
env:
UPTIME_KUMA_URL: "http://your-instance:3001"
UPTIME_KUMA_USERNAME: "your_username"
UPTIME_KUMA_PASSWORD: "your_password"
serverInstructions: true可流式传输HTTP:
将允许的域更新为您在URL中使用的任何域(例如。, localhost 或 host.docker.internal 对于Docker设置):
mcpServers:
uptime-kuma:
type: streamable-http
url: "http://mcp-uptime-kuma:3000/mcp"
serverInstructions: true
mcpSettings:
allowedDomains:
- 'mcp-uptime-kuma'贡献
有关开发设置、构建、测试和项目结构,请参阅 贡献.md.
