
All-in-one monitoring for uptime, servers, incidents & status pages. Manage it all from AI chat.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Marks an open incident as acknowledged and attaches an AI diagnostic note. Use this tool when you have reviewed an active incident and want to let the team know it is being investigated. Note: This tool does not resolve the incident, it only acknowledges it.
Purpose: The unique ID of the incident to acknowledge. Accepted values: Integer ID.
Purpose: Optional note or investigation summary. Example values: Investigating 502 Bad Gateway error on origin server Checking database CPU metrics
Alternative alias for id.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http monitorhub https://mcp.monitorhubs.com/mcp
Marks an open incident as acknowledged and attaches an AI diagnostic note. Use this tool when you have reviewed an active incident and want to let the team know it is being investigated. Note: This tool does not resolve the incident, it only acknowledges it.
| Argument | Type | Description |
|---|---|---|
| id | integer | Purpose: The unique ID of the incident to acknowledge. Accepted values: Integer ID. |
| note | string | Purpose: Optional note or investigation summary. Example values: Investigating 502 Bad Gateway error on origin server Checking database CPU metrics |
| incident_id | integer | Alternative alias for id. |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the incident to acknowledge.\n\nAccepted values: Integer ID."
},
"note": {
"type": "string",
"description": "Purpose: Optional note or investigation summary.\n\nExample values:\nInvestigating 502 Bad Gateway error on origin server\nChecking database CPU metrics"
},
"incident_id": {
"type": "integer",
"description": "Alternative alias for id."
}
}
}Creates a new monitor inside Monitor Hub. Supports: • HTTP • HTTPS • API • Ping • TCP Port • Keyword Monitoring Use this tool whenever a user wants to monitor a website, API, server, endpoint, IP address or service. Returns the newly created monitor and its initial monitoring status.
| Argument | Type | Description |
|---|---|---|
| url | string | Alias for target. |
| body | string | Optional HTTP request body payload for POST/PUT checks. |
| name* | string | Purpose: Descriptive name for the new monitor. Example values: Production Checkout API Frontend Website Validation rules: Must be a non-empty string. |
| type | string | Purpose: Monitoring type. Supported values: http https tcp port ping keyword |
| method | string | HTTP method (e.g. GET, POST, HEAD). |
| target | string | Purpose: Target URL or hostname to monitor. Accepted values: URL or IP address. Example values: https://monitorhubs.com https://api.example.com/health |
| headers | object | Optional custom HTTP headers to include with checks. |
| keyword | string | Expected keyword string for keyword monitors. |
| category | string | Purpose: Category grouping. Supported values: uptime api |
| interval_seconds | integer | Purpose: Monitoring interval in seconds (Free: 300s, Starter: 60s, Pro/Business: 30s). Supported values: 30 60 300 600 1800 3600 |
{
"type": "object",
"required": [
"name"
],
"properties": {
"url": {
"type": "string",
"description": "Alias for target."
},
"body": {
"type": "string",
"description": "Optional HTTP request body payload for POST/PUT checks."
},
"name": {
"type": "string",
"description": "Purpose: Descriptive name for the new monitor.\n\nExample values:\nProduction Checkout API\nFrontend Website\n\nValidation rules: Must be a non-empty string."
},
"type": {
"enum": [
"http",
"https",
"tcp",
"port",
"ping",
"keyword"
],
"type": "string",
"default": "http",
"description": "Purpose: Monitoring type.\n\nSupported values:\nhttp\nhttps\ntcp\nport\nping\nkeyword"
},
"method": {
"type": "string",
"default": "GET",
"description": "HTTP method (e.g. GET, POST, HEAD)."
},
"target": {
"type": "string",
"description": "Purpose: Target URL or hostname to monitor.\n\nAccepted values: URL or IP address.\n\nExample values:\nhttps://monitorhubs.com\nhttps://api.example.com/health"
},
"headers": {
"type": "object",
"description": "Optional custom HTTP headers to include with checks."
},
"keyword": {
"type": "string",
"description": "Expected keyword string for keyword monitors."
},
"category": {
"enum": [
"uptime",
"api"
],
"type": "string",
"default": "uptime",
"description": "Purpose: Category grouping.\n\nSupported values:\nuptime\napi"
},
"interval_seconds": {
"type": "integer",
"default": 300,
"description": "Purpose: Monitoring interval in seconds (Free: 300s, Starter: 60s, Pro/Business: 30s).\n\nSupported values:\n30\n60\n300\n600\n1800\n3600"
}
}
}Permanently removes monitoring and deletes its historical metrics. Use only when the user explicitly requests the deletion of a monitor, as this action is irreversible and deletes all associated monitoring history and data.
| Argument | Type | Description |
|---|---|---|
| id | integer | Purpose: The unique ID of the monitor to delete. Accepted values: Integer ID. |
| monitor_id | integer | Alternative alias for id. |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the monitor to delete.\n\nAccepted values: Integer ID."
},
"monitor_id": {
"type": "integer",
"description": "Alternative alias for id."
}
}
}Returns incident timeline, outage duration, recovery time, failure reason, affected monitor, and timestamps. Useful when Claude needs to investigate the root cause of an outage or read historical logs for a specific downtime event.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Purpose: The unique ID of the incident to inspect. Accepted values: Integer ID. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the incident to inspect.\n\nAccepted values: Integer ID."
}
}
}Retrieves full diagnostic configuration, headers, assertion settings, and last check time for a specific monitor.
| Argument | Type | Description |
|---|---|---|
| monitor_id* | number | The unique ID of the monitor to retrieve. |
{
"type": "object",
"required": [
"monitor_id"
],
"properties": {
"monitor_id": {
"type": "number",
"description": "The unique ID of the monitor to retrieve."
}
}
}Returns historical uptime events, incidents, and outages for a specific monitor ID. Useful for checking the long-term reliability of a specific website or server over time.
| Argument | Type | Description |
|---|---|---|
| id* | integer | Purpose: The unique ID of the monitor. Accepted values: Integer ID. |
| limit | integer | Purpose: Maximum number of historical records to return. Accepted values: Integer between 1 and 100. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the monitor.\n\nAccepted values: Integer ID."
},
"limit": {
"type": "integer",
"default": 50,
"description": "Purpose: Maximum number of historical records to return.\n\nAccepted values: Integer between 1 and 100."
}
}
}Fetches historical CPU %, RAM %, Disk %, and Network telemetry metrics for a server agent over a specified time window.
| Argument | Type | Description |
|---|---|---|
| hours | number | Time window in hours (default: 24, min: 1, max: 168). |
| agent_id* | number | The unique ID of the server agent. |
{
"type": "object",
"required": [
"agent_id"
],
"properties": {
"hours": {
"type": "number",
"description": "Time window in hours (default: 24, min: 1, max: 168)."
},
"agent_id": {
"type": "number",
"description": "The unique ID of the server agent."
}
}
}Lists all HTTP, TCP, Ping, and Keyword monitors for the user along with current status and uptime stats.
| Argument | Type | Description |
|---|---|---|
| status | string | Filter monitors by status (up, down, warning, paused, pending). |
| category | string | Filter by category (uptime or api). |
{
"type": "object",
"properties": {
"status": {
"enum": [
"up",
"down",
"warning",
"paused",
"pending"
],
"type": "string",
"description": "Filter monitors by status (up, down, warning, paused, pending)."
},
"category": {
"enum": [
"uptime",
"api"
],
"type": "string",
"description": "Filter by category (uptime or api)."
}
}
}Lists configured alert webhooks (Slack, Discord, Telegram, Email) and alert trigger settings with sensitive tokens redacted.
No arguments.
{
"type": "object",
"properties": {}
}Summarizes downtime events over a specified number of days along with outage duration in minutes and root cause explanations.
| Argument | Type | Description |
|---|---|---|
| days | number | Time window in days (default: 7, min: 1, max: 30). |
{
"type": "object",
"properties": {
"days": {
"type": "number",
"description": "Time window in days (default: 7, min: 1, max: 30)."
}
}
}Lists user public status page configurations and public URLs.
No arguments.
{
"type": "object",
"properties": {}
}Pauses uptime checking for a specified monitor ID. Use this tool when a user explicitly requests to stop monitoring a website temporarily (e.g. during maintenance).
| Argument | Type | Description |
|---|---|---|
| id | integer | Purpose: The unique ID of the monitor to pause. Accepted values: Integer ID. |
| monitor_id | integer | Alternative alias for id. |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the monitor to pause.\n\nAccepted values: Integer ID."
},
"monitor_id": {
"type": "integer",
"description": "Alternative alias for id."
}
}
}Fetches recent alert log entries and delivery notifications across email, Slack, Discord, and Telegram channels.
| Argument | Type | Description |
|---|---|---|
| limit | number | Maximum number of alert logs to return (default: 50, min: 1, max: 100). |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of alert logs to return (default: 50, min: 1, max: 100)."
}
}
}Retrieves active and recent outage incidents including start time, resolution time, and AI-generated root cause analysis.
| Argument | Type | Description |
|---|---|---|
| limit | number | Maximum number of incidents to return (default: 50, min: 1, max: 100). |
{
"type": "object",
"properties": {
"limit": {
"type": "number",
"description": "Maximum number of incidents to return (default: 50, min: 1, max: 100)."
}
}
}Provides a high-level health overview (total count, up count, down count, warning count, overall uptime percentage, average response time).
No arguments.
{
"type": "object",
"properties": {}
}Lists connected physical/virtual server agents, hostnames, OS types, public/private IPs, and dynamic heartbeat status (up, down, pending).
| Argument | Type | Description |
|---|---|---|
| status | string | Filter servers by status (up, down, pending). |
{
"type": "object",
"properties": {
"status": {
"enum": [
"up",
"down",
"pending"
],
"type": "string",
"description": "Filter servers by status (up, down, pending)."
}
}
}Calculates 24-hour uptime SLA percentages and average latency statistics across all monitors.
No arguments.
{
"type": "object",
"properties": {}
}Marks an ongoing incident as resolved and updates root cause analysis details. Use this tool when you have diagnosed an incident and want to close it, specifying what steps were taken to fix the issue.
| Argument | Type | Description |
|---|---|---|
| id | integer | Purpose: The unique ID of the incident to resolve. Accepted values: Integer ID. |
| root_cause | string | Purpose: Explanation of root cause and resolution steps taken. Example values: Restarted nginx upstream service; 200 OK restored Rolled back faulty deployment |
| incident_id | integer | Alternative alias for id. |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the incident to resolve.\n\nAccepted values: Integer ID."
},
"root_cause": {
"type": "string",
"description": "Purpose: Explanation of root cause and resolution steps taken.\n\nExample values:\nRestarted nginx upstream service; 200 OK restored\nRolled back faulty deployment"
},
"incident_id": {
"type": "integer",
"description": "Alternative alias for id."
}
}
}Resolves an active warning sign on a monitored server agent. Closes open warning incidents for the server, restores the agent status to "up" (operational), and clears firing threshold alarms. Use this tool when you have diagnosed high CPU, RAM, or disk warnings and resolved the underlying server load.
| Argument | Type | Description |
|---|---|---|
| id | integer | The unique ID of the server agent. |
| agent_id | integer | Alternative alias for id. |
| server_id | integer | Alternative alias for id. |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The unique ID of the server agent."
},
"agent_id": {
"type": "integer",
"description": "Alternative alias for id."
},
"server_id": {
"type": "integer",
"description": "Alternative alias for id."
}
}
}Resumes active uptime monitoring for a paused monitor ID. Use this tool when a user explicitly requests to resume monitoring a website or API.
| Argument | Type | Description |
|---|---|---|
| id | integer | Purpose: The unique ID of the monitor to resume. Accepted values: Integer ID. |
| monitor_id | integer | Alternative alias for id. |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Purpose: The unique ID of the monitor to resume.\n\nAccepted values: Integer ID."
},
"monitor_id": {
"type": "integer",
"description": "Alternative alias for id."
}
}
}Searches monitors by target URL, keyword, or name.
| Argument | Type | Description |
|---|---|---|
| query* | string | The search query matching target URL or monitor name (max 200 characters). |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"description": "The search query matching target URL or monitor name (max 200 characters)."
}
}
}Runs an instant live HTTP/ping probe test against any website or API URL. Measures exact response time (latency), HTTP status code, response headers, and response snippet without creating a monitor. Use this tool to verify endpoint reachability, test latency, check SSL/TLS responses, or diagnose an ongoing outage.
| Argument | Type | Description |
|---|---|---|
| url | string | Alternative alias for target. |
| body | string | Optional request body payload for POST/PUT/PATCH. |
| method | string | HTTP method (GET, POST, HEAD, PUT, OPTIONS). |
| target | string | Target URL or IP address to test (e.g. https://api.example.com/health). |
| headers | object | Optional custom request headers. |
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "Alternative alias for target."
},
"body": {
"type": "string",
"description": "Optional request body payload for POST/PUT/PATCH."
},
"method": {
"type": "string",
"default": "GET",
"description": "HTTP method (GET, POST, HEAD, PUT, OPTIONS)."
},
"target": {
"type": "string",
"description": "Target URL or IP address to test (e.g. https://api.example.com/health)."
},
"headers": {
"type": "object",
"description": "Optional custom request headers."
}
}
}Triggers a synthetic test alert to verify notification channels (email, webhooks, Slack, Discord). Use this tool when a user wants to test if their alerting setup is working correctly.
| Argument | Type | Description |
|---|---|---|
| message | string | Purpose: Custom message for test alert verification. Example values: Test alert from Monitor Hub AI Please ignore this alert |
| monitor_id | integer | Purpose: Optional monitor ID to associate with the test alert. Accepted values: Integer ID. |
{
"type": "object",
"properties": {
"message": {
"type": "string",
"description": "Purpose: Custom message for test alert verification.\n\nExample values:\nTest alert from Monitor Hub AI\nPlease ignore this alert"
},
"monitor_id": {
"type": "integer",
"description": "Purpose: Optional monitor ID to associate with the test alert.\n\nAccepted values: Integer ID."
}
}
}Updates configuration for an existing monitor (name, target URL, interval, HTTP method, headers, expected status code). Use this tool when a user wants to edit or reconfigure a monitor.
| Argument | Type | Description |
|---|---|---|
| id | integer | The unique ID of the monitor to update. |
| url | string | Alias for target. |
| body | string | Request payload body for POST/PUT checks. |
| name | string | New descriptive name for the monitor. |
| method | string | HTTP method (GET, POST, HEAD, PUT). |
| target | string | New target URL or IP address. |
| headers | object | Custom HTTP headers object. |
| keyword | string | Keyword string expected in response body. |
| monitor_id | integer | Alternative alias for id. |
| expected_status | string | Expected HTTP status code range (e.g. "200-399"). |
Updates public status page configuration and slug for the user workspace. Use this tool when a user wants to rename or update their public status page URL.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Purpose: New unique URL slug for the status page. Example values: my-company-status startup-uptime Validation rules: Must be URL-safe (no spaces or special characters). |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Purpose: New unique URL slug for the status page.\n\nExample values:\nmy-company-status\nstartup-uptime\n\nValidation rules: Must be URL-safe (no spaces or special characters)."
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 13, 2026.
| interval_seconds |
| integer |
| New checking interval in seconds (30, 60, 300, 600, 1800, 3600). |
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The unique ID of the monitor to update."
},
"url": {
"type": "string",
"description": "Alias for target."
},
"body": {
"type": "string",
"description": "Request payload body for POST/PUT checks."
},
"name": {
"type": "string",
"description": "New descriptive name for the monitor."
},
"method": {
"type": "string",
"description": "HTTP method (GET, POST, HEAD, PUT)."
},
"target": {
"type": "string",
"description": "New target URL or IP address."
},
"headers": {
"type": "object",
"description": "Custom HTTP headers object."
},
"keyword": {
"type": "string",
"description": "Keyword string expected in response body."
},
"monitor_id": {
"type": "integer",
"description": "Alternative alias for id."
},
"expected_status": {
"type": "string",
"description": "Expected HTTP status code range (e.g. \"200-399\")."
},
"interval_seconds": {
"type": "integer",
"description": "New checking interval in seconds (30, 60, 300, 600, 1800, 3600)."
}
}
}