Status.io MCP by usefulapi

Read Status.io components, incidents, maintenance; post incidents, schedule maintenance, set status.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
97%
Naming quality
77%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • LOWTool 'statusio_list_resolved_incidents' name length outside 3-30 rangein statusio_list_resolved_incidents
  • LOWTool 'statusio_get_maintenance_message' name length outside 3-30 rangein statusio_get_maintenance_message
  • LOWTool 'statusio_update_component_status' name length outside 3-30 rangein statusio_update_component_status

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~5,659Tokens (tool definitions)
~2.4 KBTypical response size
Significant attention impact (4.42% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "status-io": {
      "url": "https://status-io.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://status-io.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (20)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢statusio_get_status_summary(statuspage_id)

The current state of the status page in one call: overall status, every component and container with its status code and last update, open incidents and active/upcoming maintenance. Start here. GET /status/summary/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_components(statuspage_id)

List the components of the status page and the containers (data centers / locations) attached to each, with ids. Component and container ids are needed to update a status or to say what an incident affects ('<component_id>-<container_id>'). GET /component/list/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_incidents(statuspage_id)

The ids of all active and resolved incidents (ids only, no details): a quick way to see which incidents exist. Fetch one with statusio_get_incident. GET /incidents/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_active_incidents(statuspage_id, page)

Active (unresolved) incidents with their messages and affected components. GET /incident/list/active/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Status.io reports no totals: ask for the next page until a page comes back empty.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_resolved_incidents(statuspage_id, page)

Resolved incidents (history) with their messages and affected components. GET /incident/list/resolved/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Status.io reports no totals: ask for the next page until a page comes back empty.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_get_incident(incident_id, statuspage_id)

One incident in full: components, containers, infrastructure affected and all its messages. GET /incident/{statuspage_id}/{incident_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "incident_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Incident id (from statusio_list_incidents or the active/resolved lists)."
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "incident_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_get_incident_message(message_id, statuspage_id)

One message (update) of an incident: text, state, status, time and the user who posted it. GET /incident/message/{statuspage_id}/{message_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "message_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Incident message id (from statusio_get_incident)."
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "message_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_maintenance_ids(statuspage_id)

The ids of all active, closed and upcoming maintenance events (ids only). Fetch one with statusio_get_maintenance. GET /maintenances/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_maintenance(state, statuspage_id, page)

Maintenance events in one state, with messages and affected components: pending (scheduled, not started), active (in progress) or closed (finished). GET /maintenance/list/{pending|active|closed}/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "enum": [
        "pending",
        "active",
        "closed"
      ],
      "description": "pending = scheduled and not started, active = in progress, closed = finished."
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Status.io reports no totals: ask for the next page until a page comes back empty.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    }
  },
  "required": [
    "state"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_get_maintenance(maintenance_id, statuspage_id)

One maintenance event in full, with all messages and the infrastructure affected. GET /maintenance/{statuspage_id}/{maintenance_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "maintenance_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Maintenance id (from statusio_list_maintenance_ids or statusio_list_maintenance)."
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "maintenance_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_get_maintenance_message(message_id, statuspage_id)

One message of a maintenance event. GET /maintenance/message/{statuspage_id}/{message_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "message_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Maintenance message id (from statusio_get_maintenance)."
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "message_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢statusio_list_subscribers(statuspage_id)

List the people and endpoints subscribed to the status page (email addresses, phone numbers, webhook hosts) with ids and their granular preferences. This is personal data of your subscribers. Webhook URLs are shortened to their host, because they can carry secrets. GET /subscriber/list/{statuspage_id}.

Input Schema

{
  "type": "object",
  "properties": {
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_update_component_status(component_id, container_id, status, details, statuspage_id)

WRITE: change the PUBLIC status of one component/container pair (for example to degraded_performance) without creating an incident. It changes what visitors of your status page see right away. Set it back to operational when done. Ids from statusio_list_components. POST /component/status/update.

Input Schema

{
  "type": "object",
  "properties": {
    "component_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Component id."
    },
    "container_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Container id; it must be attached to that component."
    },
    "status": {
      "type": "string",
      "enum": [
        "operational",
        "planned_maintenance",
        "degraded_performance",
        "partial_service_disruption",
        "service_disruption",
        "security_issue"
      ],
      "description": "New status level."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Short message shown with the status change."
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "component_id",
    "container_id",
    "status",
    "details"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_create_incident(name, details, status, state, all_infrastructure_affected, ...)

WRITE: open a new incident on the PUBLIC status page. It is visible to every visitor immediately and sets the status of the affected components. No subscriber, Slack, Teams, IRC or Twitter notification is sent unless you switch it on (notify_*). Returns the new incident id. Say what is affected with all_infrastructure_affected or infrastructure_affected pairs. POST /incident/create.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Short incident title."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing the incident."
    },
    "status": {
      "type": "string",
      "enum": [
        "operational",
        "degraded_performance",
        "partial_service_disruption",
        "service_disruption",
        "security_issue"
      ],
      "description": "Status the affected components get."
    },
    "state": {
      "description": "Incident state (default investigating).",
      "type": "string",
      "enum": [
        "investigating",
        "identified",
        "monitoring"
      ]
    },
    "all_infrastructure_affected": {
      "description": "true = every component and container is affected. Otherwise give infrastructure_affected.",
      "type": "boolean"
    },
    "infrastructure_affected": {
      "description": "Affected pairs, each '<component_id>-<container_id>' (ids from statusio_list_components).",
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 140,
        "pattern": "^[A-Za-z0-9_]+-[A-Za-z0-9_]+$"
      }
    },
    "notify_email": {
      "description": "Also email your email subscribers (default false).",
      "type": "boolean"
    },
    "notify_sms": {
      "description": "Also text your SMS subscribers (default false).",
      "type": "boolean"
    },
    "notify_webhook": {
      "description": "Also call your webhook subscribers (default false).",
      "type": "boolean"
    },
    "notify_slack": {
      "description": "Also post to your connected Slack channels (default false).",
      "type": "boolean"
    },
    "notify_msteams": {
      "description": "Also post to your connected Microsoft Teams channels (default false).",
      "type": "boolean"
    },
    "notify_irc": {
      "description": "Also post to your connected IRC channel (default false).",
      "type": "boolean"
    },
    "post_to_twitter": {
      "description": "Also post to your connected Twitter/X account (default false).",
      "type": "boolean"
    },
    "message_subject": {
      "description": "Subject line for the email notification.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "name",
    "details",
    "status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_update_incident(incident_id, details, status, state, notify_email, ...)

WRITE: post a new update message on an existing incident and set its state and component status. The message is public at once. No subscriber or channel notification is sent unless you switch it on (notify_*). To close an incident use statusio_resolve_incident. POST /incident/update.

Input Schema

{
  "type": "object",
  "properties": {
    "incident_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Incident id."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing this update."
    },
    "status": {
      "type": "string",
      "enum": [
        "operational",
        "degraded_performance",
        "partial_service_disruption",
        "service_disruption",
        "security_issue"
      ],
      "description": "Status the affected components get now."
    },
    "state": {
      "type": "string",
      "enum": [
        "investigating",
        "identified",
        "monitoring"
      ],
      "description": "Incident state now."
    },
    "notify_email": {
      "description": "Also email your email subscribers (default false).",
      "type": "boolean"
    },
    "notify_sms": {
      "description": "Also text your SMS subscribers (default false).",
      "type": "boolean"
    },
    "notify_webhook": {
      "description": "Also call your webhook subscribers (default false).",
      "type": "boolean"
    },
    "notify_slack": {
      "description": "Also post to your connected Slack channels (default false).",
      "type": "boolean"
    },
    "notify_msteams": {
      "description": "Also post to your connected Microsoft Teams channels (default false).",
      "type": "boolean"
    },
    "notify_irc": {
      "description": "Also post to your connected IRC channel (default false).",
      "type": "boolean"
    },
    "post_to_twitter": {
      "description": "Also post to your connected Twitter/X account (default false).",
      "type": "boolean"
    },
    "message_subject": {
      "description": "Subject line for the email notification.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "incident_id",
    "details",
    "status",
    "state"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_resolve_incident(incident_id, details, notify_email, notify_sms, notify_webhook, ...)

WRITE: resolve an incident with a closing message. The affected components return to operational and the incident moves to history. No notification is sent unless you switch it on (notify_*). POST /incident/resolve.

Input Schema

{
  "type": "object",
  "properties": {
    "incident_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Incident id."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing the resolution."
    },
    "notify_email": {
      "description": "Also email your email subscribers (default false).",
      "type": "boolean"
    },
    "notify_sms": {
      "description": "Also text your SMS subscribers (default false).",
      "type": "boolean"
    },
    "notify_webhook": {
      "description": "Also call your webhook subscribers (default false).",
      "type": "boolean"
    },
    "notify_slack": {
      "description": "Also post to your connected Slack channels (default false).",
      "type": "boolean"
    },
    "notify_msteams": {
      "description": "Also post to your connected Microsoft Teams channels (default false).",
      "type": "boolean"
    },
    "notify_irc": {
      "description": "Also post to your connected IRC channel (default false).",
      "type": "boolean"
    },
    "post_to_twitter": {
      "description": "Also post to your connected Twitter/X account (default false).",
      "type": "boolean"
    },
    "message_subject": {
      "description": "Subject line for the email notification.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "incident_id",
    "details"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_schedule_maintenance(name, details, start, end, all_infrastructure_affected, ...)

WRITE: schedule a planned maintenance on the PUBLIC status page. It is visible to visitors as upcoming maintenance. Subscribers are told only if you switch on notify_now / notify_72_hr / notify_24_hr / notify_1_hr (all default off). With automation true Status.io starts and ends it by itself at the planned times. Returns the maintenance id. POST /maintenance/schedule.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300,
      "description": "Short maintenance title."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing the maintenance."
    },
    "start": {
      "type": "string",
      "description": "Planned start, 'YYYY-MM-DD HH:mm' (24-hour). Status.io's reference does not state the time zone of this input: check the scheduled time in your dashboard."
    },
    "end": {
      "type": "string",
      "description": "Planned end, 'YYYY-MM-DD HH:mm' (24-hour); after the start."
    },
    "all_infrastructure_affected": {
      "description": "true = every component and container is affected. Otherwise give infrastructure_affected.",
      "type": "boolean"
    },
    "infrastructure_affected": {
      "description": "Affected pairs, each '<component_id>-<container_id>' (ids from statusio_list_components).",
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 140,
        "pattern": "^[A-Za-z0-9_]+-[A-Za-z0-9_]+$"
      }
    },
    "notify_now": {
      "description": "Tell subscribers right away (default false).",
      "type": "boolean"
    },
    "notify_72_hr": {
      "description": "Remind subscribers 72 hours before the start (default false).",
      "type": "boolean"
    },
    "notify_24_hr": {
      "description": "Remind subscribers 24 hours before the start (default false).",
      "type": "boolean"
    },
    "notify_1_hr": {
      "description": "Remind subscribers 1 hour before the start (default false).",
      "type": "boolean"
    },
    "automation": {
      "description": "Start and end the maintenance automatically at the planned times (default false).",
      "type": "boolean"
    },
    "automation_start_text": {
      "description": "Message posted when the maintenance starts (with automation).",
      "type": "string",
      "minLength": 1,
      "maxLength": 10000
    },
    "automation_stop_text": {
      "description": "Message posted when the maintenance ends (with automation).",
      "type": "string",
      "minLength": 1,
      "maxLength": 10000
    },
    "message_subject": {
      "description": "Subject line for the email notifications.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "name",
    "details",
    "start",
    "end"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_start_maintenance(maintenance_id, details, notify_email, notify_sms, notify_webhook, ...)

WRITE: start a scheduled maintenance now; it moves from pending to active and the affected components show planned maintenance. The message is public at once. No notification is sent unless you switch it on (notify_*). POST /maintenance/start.

Input Schema

{
  "type": "object",
  "properties": {
    "maintenance_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Maintenance id."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing this maintenance update."
    },
    "notify_email": {
      "description": "Also email your email subscribers (default false).",
      "type": "boolean"
    },
    "notify_sms": {
      "description": "Also text your SMS subscribers (default false).",
      "type": "boolean"
    },
    "notify_webhook": {
      "description": "Also call your webhook subscribers (default false).",
      "type": "boolean"
    },
    "notify_slack": {
      "description": "Also post to your connected Slack channels (default false).",
      "type": "boolean"
    },
    "notify_msteams": {
      "description": "Also post to your connected Microsoft Teams channels (default false).",
      "type": "boolean"
    },
    "notify_irc": {
      "description": "Also post to your connected IRC channel (default false).",
      "type": "boolean"
    },
    "post_to_twitter": {
      "description": "Also post to your connected Twitter/X account (default false).",
      "type": "boolean"
    },
    "message_subject": {
      "description": "Subject line for the email notification.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "maintenance_id",
    "details"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_update_maintenance(maintenance_id, details, notify_email, notify_sms, notify_webhook, ...)

WRITE: post a new status message on an active maintenance event. The message is public at once. No notification is sent unless you switch it on (notify_*). POST /maintenance/update.

Input Schema

{
  "type": "object",
  "properties": {
    "maintenance_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Maintenance id."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing this maintenance update."
    },
    "notify_email": {
      "description": "Also email your email subscribers (default false).",
      "type": "boolean"
    },
    "notify_sms": {
      "description": "Also text your SMS subscribers (default false).",
      "type": "boolean"
    },
    "notify_webhook": {
      "description": "Also call your webhook subscribers (default false).",
      "type": "boolean"
    },
    "notify_slack": {
      "description": "Also post to your connected Slack channels (default false).",
      "type": "boolean"
    },
    "notify_msteams": {
      "description": "Also post to your connected Microsoft Teams channels (default false).",
      "type": "boolean"
    },
    "notify_irc": {
      "description": "Also post to your connected IRC channel (default false).",
      "type": "boolean"
    },
    "post_to_twitter": {
      "description": "Also post to your connected Twitter/X account (default false).",
      "type": "boolean"
    },
    "message_subject": {
      "description": "Subject line for the email notification.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "maintenance_id",
    "details"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴statusio_finish_maintenance(maintenance_id, details, notify_email, notify_sms, notify_webhook, ...)

WRITE: finish an active maintenance event; it moves to history and the affected components return to operational. The message is public at once. No notification is sent unless you switch it on (notify_*). POST /maintenance/finish.

Input Schema

{
  "type": "object",
  "properties": {
    "maintenance_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$",
      "description": "Maintenance id."
    },
    "details": {
      "type": "string",
      "minLength": 1,
      "maxLength": 10000,
      "description": "Message describing this maintenance update."
    },
    "notify_email": {
      "description": "Also email your email subscribers (default false).",
      "type": "boolean"
    },
    "notify_sms": {
      "description": "Also text your SMS subscribers (default false).",
      "type": "boolean"
    },
    "notify_webhook": {
      "description": "Also call your webhook subscribers (default false).",
      "type": "boolean"
    },
    "notify_slack": {
      "description": "Also post to your connected Slack channels (default false).",
      "type": "boolean"
    },
    "notify_msteams": {
      "description": "Also post to your connected Microsoft Teams channels (default false).",
      "type": "boolean"
    },
    "notify_irc": {
      "description": "Also post to your connected IRC channel (default false).",
      "type": "boolean"
    },
    "post_to_twitter": {
      "description": "Also post to your connected Twitter/X account (default false).",
      "type": "boolean"
    },
    "message_subject": {
      "description": "Subject line for the email notification.",
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "statuspage_id": {
      "description": "Status page id. Defaults to the status page chosen when you connected.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,64}$"
    }
  },
  "required": [
    "maintenance_id",
    "details"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded20 tools