1. Conduid
  2. AI
  3. io.github.DavidFuchs/mcp-uptime-kuma
MCP server · AI

io.github.DavidFuchs/mcp-uptime-kuma

A Model Context Protocol (MCP) server for Uptime Kuma version 2.

Unclaimed ai
37Low

Scored 7 months ago · breakdown

About io.github.DavidFuchs/mcp-uptime-kuma

io.github.DavidFuchs/mcp-uptime-kuma is an MCP server published by DavidFuchs in the AI category: a Model Context Protocol (MCP) server for Uptime Kuma version 2.

The repository has 60 stars and 25 forks, with the last commit yesterday. Recent commit activity is the strongest signal that reported issues will get attention.

Install

Claude Code
claude mcp add io-github-davidfuchs-mcp-uptime-kuma -- npx -y @davidfuchs/mcp-uptime-kuma
npx
npx -y @davidfuchs/mcp-uptime-kuma

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Tools (9)

createMonitorCreate a new monitor (requires name and type at minimum).

Parameters not published.

deleteMonitorPermanently delete a monitor and all its heartbeat history.

Parameters not published.

getMonitorGet detailed configuration for a specific monitor by ID.

Parameters not published.

getMonitorSummaryGet a quick overview of all monitors with their current status. Supports filtering.

Parameters not published.

listMonitorTypesGet all available monitor types supported by Uptime Kuma.

Parameters not published.

listMonitorsGet the full list of all monitors with configurations. Supports filtering.

Parameters not published.

pauseMonitorPause a monitor to stop performing checks.

Parameters not published.

resumeMonitorResume a paused monitor to restart checks.

Parameters not published.

updateMonitorUpdate an existing monitor's configuration.

Parameters not published.

Ask AI

✦

Ask AI about io.github.DavidFuchs/mcp-uptime-kuma

Powered by Claude · Grounded in docs

I know everything about io.github.DavidFuchs/mcp-uptime-kuma. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

  • ✓README presentThe repository ships documentation.

5 checks have not been run yet.

README

mcp-uptime-kuma

A Model Context Protocol (MCP) server for Uptime Kuma version 2. Supports stdio and streamable HTTP transports.

GitHub Stars GitHub Last Commit GitHub Repo Size

GitHub Actions - npmjs npmjs Version npmjs Downloads

GitHub Actions - DockerHub Docker Version Docker Pulls

Features

  • Real-time Monitoring: Access monitors, heartbeats, uptime, and responsiveness metrics via Socket.IO with instant status change notifications.
  • Context-Friendly: Returns only essential data by default to avoid overwhelming LLM context windows.
  • Multiple Transports: Supports stdio (local) and streamable HTTP (remote) transports.

Quick Start

Using npx (stdio transport)

Add this to your MCP client configuration:

{
  "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"
      }
    }
  }
}

Using Docker (streamable HTTP transport)

Option 1: Docker Run

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

Option 2: Docker Compose

A docker-compose.yml file is provided in the repository. Download it, configure your environment variables, and run:

docker compose up -d

Then configure your MCP client to connect to the endpoint:

{
  "mcpServers": {
    "uptime-kuma": {
      "url": "http://localhost:3000/mcp"
    }
  }
}

See Authentication Methods for JWT token and anonymous authentication options.

Example Conversation

MCP server answering questions about Uptime Kuma monitors Conversation in LibreChat where the mcp-uptime-kuma server is providing real-time information from Uptime Kuma.

Available Tools

Monitors

Tool Purpose
getMonitorSummary Get a quick overview of all monitors with their current status. Supports filtering.
listMonitors Get the full list of all monitors with configurations. Supports filtering.
listMonitorTypes Get all available monitor types supported by Uptime Kuma.
getMonitor Get detailed configuration for a specific monitor by ID.
createMonitor Create a new monitor (requires name and type at minimum).
updateMonitor Update an existing monitor's configuration.
deleteMonitor Permanently delete a monitor and all its heartbeat history.
pauseMonitor Pause a monitor to stop performing checks.
resumeMonitor Resume a paused monitor to restart checks.

Heartbeats

Tool Purpose
listHeartbeats Get status check history for all monitors.
getHeartbeats Get status check history for a specific monitor.

Notifications

Tool Purpose
listNotifications List all configured notification channels (Slack, Discord, email, webhooks, etc.).
addNotification Create a new notification channel.
updateNotification Update an existing notification channel.
deleteNotification Permanently delete a notification channel.

Tags

Tool Purpose
listTags List all tags defined in Uptime Kuma.
addTag Create a new tag that can be assigned to monitors.
deleteTag Permanently delete a tag (removes it from all monitors).

Maintenance

Tool Purpose
getMaintenanceWindows List all scheduled maintenance windows.
createMaintenance Schedule a new maintenance window.

Status Pages & Settings

Tool Purpose
listStatusPages List all configured status pages.
getSettings Get Uptime Kuma server settings.

Filtering

getMonitorSummary and listMonitors support filtering by:

  • keywords: Space-separated keywords for fuzzy matching against monitor pathNames
  • type: Monitor type(s), comma-separated (e.g., "http", "http,ping,dns")
  • active: Filter by active (true) or inactive (false) monitors
  • maintenance: Filter by maintenance mode status
  • tags: Tag name and optional value, comma-separated (e.g., "production", "env=staging")
  • status (getMonitorSummary only): Heartbeat status ("0"=DOWN, "1"=UP, "2"=PENDING, "3"=MAINTENANCE)

Examples:

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

Authentication Methods

Anonymous Authentication

If authentication is disabled on your Uptime Kuma instance, only UPTIME_KUMA_URL is required.

Username/Password Authentication

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 enabled

JWT Token Authentication

Recommended for 2FA users. Takes precedence over username/password if both are provided.

UPTIME_KUMA_URL=http://your-instance:3001
UPTIME_KUMA_JWT_TOKEN=your_jwt_token

Obtaining Your JWT Token

Using the CLI utility (recommended):

npx -p @davidfuchs/mcp-uptime-kuma mcp-uptime-kuma-get-jwt http://localhost:3001 admin mypassword

Using Docker:

docker run --rm davidfuchs/mcp-uptime-kuma:latest get-jwt http://host.docker.internal:3001 admin mypassword

From browser: Open Developer Tools → Storage/Application → Local Storage → find token key.

LibreChat Configuration

stdio transport:

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

streamable HTTP transport:

Update the allowed domains to whatever domain you're using in the URL (e.g., localhost or host.docker.internal for Docker setups):

mcpServers:
  uptime-kuma:
    type: streamable-http
    url: "http://mcp-uptime-kuma:3000/mcp"
    serverInstructions: true

mcpSettings:
  allowedDomains:
    - 'mcp-uptime-kuma'

Contributing

For development setup, building, testing, and project structure, see CONTRIBUTING.md.

Learn More

README copy captured when this server was indexed; it may lag the repository. The original is authoritative.

Questions

About io.github.DavidFuchs/mcp-uptime-kuma

How do I install io.github.DavidFuchs/mcp-uptime-kuma?

Run claude mcp add io-github-davidfuchs-mcp-uptime-kuma -- npx -y @davidfuchs/mcp-uptime-kuma, then add the server to your MCP client's configuration.

Is io.github.DavidFuchs/mcp-uptime-kuma safe to use with an AI agent?

Its trust score is 37 out of 100 (low). It passes 1 of the 1 static security checks run so far. It has no ConduID identity yet, so agent calls to it are not receipted.

Is io.github.DavidFuchs/mcp-uptime-kuma still maintained?

Yes — the last commit was yesterday. The repository has 60 stars and 25 forks.