uptime-agent-mcp

0.0.10 • Public • Published

🚀 Uptime Agent MCP Server

GitHub license Node.js Version Model Context Protocol smithery badge

Connect your Uptime Agent monitoring system directly to AI assistants like Claude through the Model Context Protocol (MCP).

✨ Features

  • Real-time Monitoring Access: Allow AI assistants to check your system's uptime status
  • Incident Management: View and analyze downtime incidents through natural conversation
  • Monitor Creation: Set up new monitoring endpoints with simple voice or text commands
  • Secure Integration: Enterprise-grade security for your monitoring infrastructure

🔍 What is Uptime Agent?

Uptime Agent is a powerful monitoring solution that tracks your websites and API endpoints, alerting you when they go down. This MCP server extends Uptime Agent's capabilities by letting you interact with your monitoring system through AI assistants.

🛠️ Installation

Prerequisites

  • Node.js 18 or higher
  • An active Uptime Agent account
  • Your Uptime Agent API key

To obtain your Uptime Agent API key:

  1. Log in to your Uptime Agent Dashboard
  2. Navigate to Account → API Keys
  3. Create a new API key with appropriate permissions
  4. Copy the generated key for use with the MCP server

Option 1: Quick Install via NPM (Recommended)

The fastest way to get started is with our setup command:

npx uptime-agent-mcp setup

This command will:

  • Install the MCP server
  • Configure it for use with Claude Desktop
  • Prompt you for your Uptime Agent API key
  • Set up all necessary configurations automatically

Option 2: Install via Smithery.ai

To install using Smithery.ai:

  1. Create an account at smithery.ai
  2. Get your personal key from your Smithery account
  3. Run the following command:
npx -y @smithery/cli@latest install @AVIMBU/uptime_agent_mcp --client claude --key <personal_key>

Replace <personal_key> with your actual Smithery personal key.

Option 3: Manual Local Installation

For advanced users who want more control:

# Clone the repository
git clone https://github.com/AVIMBU/uptime_agent_mcp.git
cd uptime_agent_mcp

# Install dependencies
npm install

# Build the project
npm run build

Configure with your API key by creating a .env file:

UPTIME_API_KEY=your-api-key-here
PORT=3000  # Optional, defaults to 3000

Start the server:

npm start
# or directly with
node dist/index.js

🤖 AI Assistant Integration

Setting Up with Claude Desktop

After installing using one of the methods above, your MCP server is automatically configured for Claude Desktop.

If you installed manually, add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "uptime-agent": {
      "command": "npx",
      "args": [
        "-y",
        "uptime-agent-mcp"
      ],
      "env": {
        "UPTIME_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

Alternatively, you can use Docker:

{
  "mcpServers": {
    "uptime-agent": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "UPTIME_API_KEY",
        "uptime-agent-mcp"
      ],
      "env": {
        "UPTIME_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

Example Conversations

Checking Monitors:

"Claude, show me all my active uptime monitors."

Creating a New Monitor:

"Please create a new monitor for our API endpoint at https://api.mycompany.com/v2/health"

Analyzing Incidents:

"What incidents happened on our production servers last week, and what was the average downtime?"

📊 Available Functions

Monitor Operations

Function Description Parameters
listMonitors Get a complete list of all monitoring endpoints None required
getMonitor Retrieve detailed information about a specific monitor id: Monitor identifier
createMonitor Set up a new endpoint to monitor name: Monitor name
url: URL to monitor
tracking_type: Type of monitoring (http, ping, etc.)
check_frequency: Check interval in seconds

Incident Management

Function Description Parameters
listIncidents View all detected downtime incidents None required
getIncident Get detailed information about a specific incident id: Incident identifier
listIncidentsByMonitor See all incidents for a particular endpoint monitor_id: Monitor identifier

Public Tracking

Function Description Parameters
createAnonymousTracking Create public tracking without authentication url: URL to monitor
name: (Optional) Name for the tracking

Integration with Slack (Coming Soon)

Function Description Parameters
slack_get_users List all users in connected Slack workspace limit: Max number of users
cursor: Pagination cursor
slack_post_message Post notifications to Slack channel_id: Channel to post to
text: Message content

🐳 Docker Deployment

We provide Docker support for easy deployment:

# Build the Docker image
docker build -t uptime-agent-mcp .

# Run the container
docker run -p 3000:3000 -e UPTIME_API_KEY=your-api-key uptime-agent-mcp

📬 Support

If you have questions or need assistance:

📜 License

This project is licensed under the MIT License - see the LICENSE file for details.


Developed with ❤️ by AVIMBU

/uptime-agent-mcp/

    Package Sidebar

    Install

    npm i uptime-agent-mcp

    Weekly Downloads

    20

    Version

    0.0.10

    License

    MIT

    Unpacked Size

    39.8 kB

    Total Files

    8

    Last publish

    Collaborators

    • michael_bauer_wapp