使用说明
库马-MCP
一种模型上下文协议(MCP)服务器 正常运行时间Kuma v2。使AI助手能够管理监控服务——添加、更新、暂停、恢复和删除监控器,检查状态和检查心跳。
快速开始
# Install globally
npm install -g kuma-mcp
# Or run directly
npx kuma-mcp
需要正在运行的Uptime Kuma v2实例和凭据。
先决条件
- 包子 或Node.js 18+(适用于
npx) - Uptime Kuma v2实例(请参见 docker-compose.yml 用于本地设置)
配置
设置这些环境变量:
| 变量 | 必填 | 描述 |
|---|---|---|
UPTIME_KUMA_URL |
是 | 您的Uptime Kuma实例的URL(例如。 http://localhost:3001) |
UPTIME_KUMA_USERNAME |
带密码 | 身份验证用户名 |
UPTIME_KUMA_PASSWORD |
使用用户名 | 密码进行身份验证 |
创建一个 .env 文件(复制自 .env.example)或者直接在MCP客户端配置中传递它们。 |
注: 正常运行时间Kuma API密钥是REST-only(用于Prometheus
/metrics抓取),不能用于监控管理。此服务器通过Socket上的用户名/密码进行身份验证。IO。
用法
作为CLI
kuma-mcp
通过stdio启动MCP服务器。与任何兼容MCP的客户端集成。
MCP客户端集成
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"kuma-mcp": {
"command": "npx",
"args": ["kuma-mcp"],
"env": {
"UPTIME_KUMA_URL": "http://localhost:3001",
"UPTIME_KUMA_USERNAME": "your-username",
"UPTIME_KUMA_PASSWORD": "your-password"
}
}
}
}
GitHub Copilot (~/.github/copilot.json)
{
"mcpServers": {
"kuma-mcp": {
"command": "npx",
"args": ["-y", "kuma-mcp"],
"env": {
"UPTIME_KUMA_URL": "http://localhost:3001",
"UPTIME_KUMA_USERNAME": "your-username",
"UPTIME_KUMA_PASSWORD": "your-password"
}
}
}
}
OpenCode (.opencode.json)
{
"mcp": {
"kuma-mcp": {
"type": "command",
"command": "bunx",
"args": ["kuma-mcp"],
"env": {
"UPTIME_KUMA_URL": "http://localhost:3001",
"UPTIME_KUMA_USERNAME": "admin",
"UPTIME_KUMA_PASSWORD": "admin123"
}
}
}
}
可用工具
| 工具 | 说明 |
|---|---|
add_monitor |
添加新监视器 |
update_monitor_by_id |
按ID更新现有监视器 |
remove_monitors |
按ID删除监视器 |
pause_monitors |
按ID暂停监视器 |
resume_monitors |
按ID恢复监视器 |
get_monitors |
按ID获取特定监视器的详细信息 |
find_monitors_by_name |
按名称查找监视器(支持正则表达式) |
list_monitors |
列出所有监视器 |
bulk_update_monitors |
一次更新多个监视器 |
get_monitor_status |
获取监视器的当前状态 |
get_monitors_by_status |
按状态(向上/向下/暂停/…)查找监视器 |
get_monitor_heartbeats_by_id |
获取原始心跳记录 |
get_monitor_summary_by_id |
获取24小时健康状况汇总 |
get_tags |
列出所有标签定义 |
add_tag |
创建新标签 |
edit_tag |
更新现有标记 |
delete_tag |
删除标签(从所有监视器中删除) |
add_monitor_tag |
在显示器上贴上标签 |
edit_monitor_tag |
更新标签监视器关联值 |
delete_monitor_tag |
从显示器上删除标签 |
示例提示
使用MCP兼容的AI助手尝试这些自然语言提示:
- “显示当前关闭的所有监视器”
- “为添加HTTP监视器https://api.example.com/health每60秒检查一次,并将其命名为“API运行状况”
- “为什么‘API Prod’监测仪昨晚坏了?看看过去24小时的心跳”
- “我们今晚将进行维护-暂停“API暂存”监视器和所有匹配“暂存-*”的监视器”
- “给我一份API Prod监视器的24小时正常运行时间摘要”
- 卸下旧的“api-test-v2”显示器,它已被更换
- “将“API生产”重命名为“API生产”,并将其检查间隔增加到120秒”
- “使用绿色标签将“API Prod”监视器标记为“production”
- “显示所有标记为“生产”的监视器”
代理设置提示
如果您使用AI编码代理(OpenCode、Cursor、Windsurf等),请将此提示粘贴到您的代理说明或规则文件中,使其自动设置kuma-mcp:
您可以访问管理Uptime kuma监控实例的kuma mcp mcp服务器。您可以创建、更新、暂停、恢复和删除监视器,检查其状态和心跳,以及管理标签。
监视器查找模式:始终使用
find_monitors_by_name在调用操作工具之前将名称解析为ID。例如,暂停“API Prod”:第一次调用find_monitors_by_name("API Prod")那么pause_monitors({ids: [result.id]}).可用工具:add_monitor、update_monitor_by_id、remove_monitors、pause_mmonitors、resume_monitors,get_monitors,find_monitors_by_name,list_monitors;bulk_update_monitors。get_monitor_status,get_monitors_by_status;get_monitor_heartbeats_by_id,get_monitor_summary_by_id;get_tags;add_tag;edit_tag;delete_tag;add_monitor_tag;edit_monitor_tags;delete_monitor_tog。
环境:服务器通过以下方式连接
UPTIME_KUMA_URL,UPTIME_KUMA_USERNAME,以及UPTIME_KUMA_PASSWORD.
发展
git clone https://github.com/tuliof/kuma-mcp.git
cd kuma-mcp
bun install
bun run dev
看 贡献.md 了解详情。
许可证
麻省理工学院