Connect AI assistants to your UptimeRobot monitors and incidents through the Model Context Protocol.
Getting started
Step 1: Generate your API token
You'll need a UptimeRobot API key to authenticate the MCP server. Get it from your UptimeRobot dashboard:
Log in to UptimeRobot
Navigate to Integrations & API
Copy your Main API Key, or read-only API key if you want to use MCP for read-only actions.
Step 2: Configure the MCP server
The UptimeRobot MCP server runs as a remote HTTP server. Add this configuration to your MCP client replacing <your-api-token> with your actual token:
{
"mcpServers": {
"uptimerobot": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.uptimerobot.com/mcp",
"--header",
"Authorization: Bearer <your-api-token>",
"--header",
"X-MCP-Content-Format: true"
]
}
}
}
Step 3: Test your connection
Your AI assistant can now access UptimeRobot data. Try these:
"Show me all monitors that are currently down"
"What's the availability of my website monitor this month?"
"What incidents occurred yesterday?"
"Pause monitor 801150533 for maintenance"
Monitor Management
Your AI assistant can manage monitoring infrastructure through natural language. Ask questions like:
"Show me all monitors that are currently down"
"What's the availability of my website monitor this month?"
"Create a new HTTP monitor for https://example.com"
"Pause monitor 801150533 for maintenance"
Monitors
List monitors: Shows all monitors with optional filtering by status, search, and tagsGet monitor details: Provides monitor configuration, current status, SSL/domain expiration, and custom settingsGet monitor stats: Calculates uptime percentages, incident counts, and status breakdownsGet response times: Analyzes historical response time data with statistical summaries (1h to 90d time ranges)Update monitor status: Pauses or resumes monitoring for specific monitorsUpdate monitor: Modifies monitor configuration including name, URL, interval, timeout, alert contacts, and tagsCreate monitor: Creates new monitors (HTTP, KEYWORD, PING, PORT, DNS, or HEARTBEAT) with full configuration
Example queries:
"List all monitors with status DOWN"
"Show me details for monitor ID 801150533"
"What's the uptime for monitor mywebsite.com over the last 7 days?"
"Get response times for monitor 801150533 for the last 30 days"
"Pause monitor 801150533"
"Update monitor 801150533 to check every 5 minutes"
"Create a new HTTP monitor for https://api.example.com checking every 5 minutes"
Incident Management
Your AI assistant can investigate incidents and view monitoring data through natural language. Ask questions like:
"What incidents occurred yesterday?"
"Show me all incidents from the last 24 hours"
"Get details about incident 927921560"
Incidents
List incidents: Finds incidents by time range, monitor ID, or status with pagination supportGet incident details: Shows comprehensive incident information including timeline, error codes, request logs, checker locations, and affected regions
Example queries:
"List all incidents from the last 24 hours"
"Show me incidents for monitor ID 801150533"
"Get details for incident ID 927921560"
"What incidents are currently ongoing?"
Integration Management
Your AI assistant can view alert integrations and their status. Ask questions like:
"List all my alert integrations"
"Show me all active integrations"
Integrations
List integrations: Shows all configured alert integrations (email, SMS, voice, mobile app, webhooks) with their status and configuration
Example queries:
"List all my alert integrations"
"Show me all active integrations"
"What integrations are configured for notifications?"
Available Tools
Monitor Management Tools
list-monitors
Lists all monitors in your account
Supports filtering by status (UP, DOWN, PAUSED, NOT_STARTED, EXPIRING_DOMAIN, EXPIRING_SSL_CERTIFICATE)
Full-text search by monitor name or URL
Pagination support (default: 10 per page, max: 100)
Returns monitor ID, name, URL, type, status, interval, and current state duration
get-monitor-details
Retrieves comprehensive details for a specific monitor
Includes configuration settings (interval, timeout, SSL settings, authentication)
Shows current status, SSL/domain expiration dates
Displays monitor type-specific settings (HTTP method, keywords, ports, etc.)
Returns tags, alert contacts, and custom HTTP headers
get-monitor-stats
Provides aggregated statistics for monitors
Shows uptime percentages, incident counts, and status breakdowns
Supports time range filtering (relative: 1h-90d, or absolute ISO 8601 dates)
Returns counts of monitors by status (UP, DOWN, PAUSED, DEGRADED)
Calculates overall uptime percentage across all monitors
get-response-times
Retrieves historical response time data for a specific monitor
Supports time ranges from 1 hour to 90 days
Returns time series data with statistical summaries (min, max, avg, p95)
Optional bucket size for time aggregation
Useful for performance analysis and trend identification
update-monitor-status
Pauses or resumes monitoring for a specific monitor
Use PAUSED to temporarily stop monitoring during maintenance
Use STARTED to resume monitoring after maintenance
Returns confirmation of status change
update-monitor
Updates configuration of an existing monitor
Supports partial updates (only provided fields are modified)
Can update name, URL, interval, timeout, alert contacts, tags
Type-specific settings (HTTP method, keywords, ports, etc.)
Validates changes against subscription limits
create-monitor
Creates a new monitor of any supported type
Supported types: HTTP, KEYWORD, PING, PORT, HEARTBEAT, DNS
Configures monitoring interval, timeout, and type-specific parameters
Sets up alert contacts, tags, and custom settings
Validates all parameters before creation
Incident Management Tools
list-incidents
Lists all incidents across your account or for a specific monitor
Filters by time range (relative: 1h-90d, or absolute ISO 8601 dates)
Optional filtering by monitor ID
Pagination support (default: 10 per page, max: 100)
Returns incident ID, status, duration, start/end times, and monitor information
get-incident-details
Retrieves comprehensive details for a specific incident
Includes full timeline (start/end times, duration)
Shows error codes, reasons, and primary error messages
Provides request logs with timestamps, regions, and error details
Lists affected regions and checker locations
Includes traceroute data when available
Integration Management Tools
list-integrations
Lists all alert integrations configured in your account
Shows integration types: email, SMS, voice, mobile app, webhooks
Displays integration status and configuration
Pagination support (default: 10 per page, max: 100)
Returns integration IDs and details for management
Troubleshooting
"Authentication failed" or "Invalid API key"
Verify your API key is correct in the UptimeRobot dashboard
Check for extra spaces when pasting the API key
Generate a new API key if needed
Security
Keep your API keys secure and never share them publicly or commit them to version control
Your Main API key has the same permissions as your UptimeRobot account
Limitations
API calls are subject to UptimeRobot's rate limits
Data and feature availability depends on your subscription plan
