Labsco
MCP SERVER

Uptime Kuma MCP Open

by gryfai

Read your Uptime Kuma monitors, heartbeats and status pages from an assistant — reads only, nothing can be changed.

Observability, Monitoring & Incident Response
Summary
Safe to point at production, because it cannot write.

Read-only is the whole design here rather than a limitation to work around: you can hand it your live monitoring instance and ask what is down without any chance of a model editing a monitor. Adding, editing and deleting monitors, notifications and tags sits in the maintainer's hosted version. The licence is BSL, free for personal use and for small companies internally, with a stated intent to move to Apache 2.0 later; the author also says an automated test suite is still on the to-do list.

What it is

A Python MCP server that talks to your own Uptime Kuma instance and exposes a read-only slice of it to an LLM client over stdio.

What you get
  • Monitor status, both the whole list and an individual monitor
  • Monitor beats and heartbeats, for looking at what happened rather than only what is happening
  • Notifications, all of them or one at a time
  • Status pages, all or individual, plus status page maintenance
  • Tags, all or individual, and the database size
  • Every one of these is a read — this build cannot create, edit or delete anything
Requirements

Python 3.10+ and either uv or pip. Create a virtual environment, `pip install .` into it, and set `UPTIME_KUMA_URL` (default http://localhost:3001), `UPTIME_KUMA_USERNAME` and `UPTIME_KUMA_PASSWORD` in the shell or a .env file. The client then launches `python -m mcp_uptime_kuma_open.server`; if the client runs outside the venv, give it the full path to that interpreter.

Setup effort

One command plus a key — pip install ., then supply credentials