all-quiet
Manage incidents and on-call: list/create/update incidents, who is on call, on-call overrides.
Should I use this
Quality & Safety
Findings (2)
- LOWin allquiet_list_on_call_overrides
- LOWin allquiet_create_on_call_override
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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": {
"all-quiet": {
"url": "https://all-quiet.usefulapi.io/mcp"
}
}
}Remote endpoints
https://all-quiet.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (11)
🟢allquiet_list_incidents(statuses, severities, teamIds, userIds, searchTerm, ...)
Search/list incidents with filters (status, severity, team, user, search term, archived/snoozed, date range) and pagination. All Quiet: GET /v1/incident/search/list.
Input Schema
{
"type": "object",
"properties": {
"statuses": {
"description": "Filter by incident status(es).",
"type": "array",
"items": {
"type": "string"
}
},
"severities": {
"description": "Filter by incident severity/severities.",
"type": "array",
"items": {
"type": "string"
}
},
"teamIds": {
"description": "Filter by team id(s).",
"type": "array",
"items": {
"type": "string"
}
},
"userIds": {
"description": "Filter by assigned user id(s).",
"type": "array",
"items": {
"type": "string"
}
},
"searchTerm": {
"description": "Free-text search term.",
"type": "string"
},
"unattended": {
"description": "Filter to incidents with no acknowledging user.",
"type": "boolean"
},
"isArchived": {
"description": "Filter by archived state.",
"type": "boolean"
},
"includeSnoozed": {
"description": "Whether to include snoozed incidents.",
"type": "boolean"
},
"limit": {
"description": "Max incidents to return.",
"type": "number"
},
"offset": {
"description": "Pagination offset.",
"type": "number"
},
"sortBy": {
"description": "Field to sort by.",
"type": "string"
},
"asc": {
"description": "Sort ascending (default descending).",
"type": "boolean"
},
"createdFrom": {
"description": "ISO8601 lower bound on creation time.",
"type": "string"
},
"createdUntil": {
"description": "ISO8601 upper bound on creation time.",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_get_incident(incidentId)
Get a single incident by its id. All Quiet: GET /v1/incident/search/{incidentId}.
Input Schema
{
"type": "object",
"properties": {
"incidentId": {
"type": "string",
"description": "The incident id (required)."
}
},
"required": [
"incidentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_get_incident_markdown(incidentId)
Get a markdown rendering of a single incident by its id (useful for pasting into a doc or chat). All Quiet: GET /v1/incident/search/{incidentId}/markdown.
Input Schema
{
"type": "object",
"properties": {
"incidentId": {
"type": "string",
"description": "The incident id (required)."
}
},
"required": [
"incidentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_who_is_on_call(teamIds, userIds, timestamp)
Get who is currently (or at a given point in time) on call, optionally filtered by team/user. All Quiet: GET /v1/on-call.
Input Schema
{
"type": "object",
"properties": {
"teamIds": {
"description": "Filter by team id(s).",
"type": "array",
"items": {
"type": "string"
}
},
"userIds": {
"description": "Filter by user id(s).",
"type": "array",
"items": {
"type": "string"
}
},
"timestamp": {
"description": "ISO8601 point-in-time to check (defaults to now).",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_on_call_report(start, end, userId, teamId, maxTier)
Get a summed on-call duration report over a time window, optionally filtered by user/team/escalation tier. All Quiet: GET /v1/on-call-report/sum.
Input Schema
{
"type": "object",
"properties": {
"start": {
"type": "string",
"description": "ISO8601 start of the report window (required)."
},
"end": {
"type": "string",
"description": "ISO8601 end of the report window (required)."
},
"userId": {
"description": "Filter by user id.",
"type": "string"
},
"teamId": {
"description": "Filter by team id.",
"type": "string"
},
"maxTier": {
"description": "Only include escalation tiers up to this number.",
"type": "number"
}
},
"required": [
"start",
"end"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_list_teams(displayName, offset, limit)
Search/list teams, optionally filtered by display name. All Quiet: GET /v1/team/search/list.
Input Schema
{
"type": "object",
"properties": {
"displayName": {
"description": "Filter by team display name.",
"type": "string"
},
"offset": {
"description": "Pagination offset.",
"type": "number"
},
"limit": {
"description": "Max teams to return.",
"type": "number"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_list_users(email, displayName, offset, limit)
Search/list users, optionally filtered by email or display name. All Quiet: GET /v1/user/search/list.
Input Schema
{
"type": "object",
"properties": {
"email": {
"description": "Filter by user email.",
"type": "string"
},
"displayName": {
"description": "Filter by user display name.",
"type": "string"
},
"offset": {
"description": "Pagination offset.",
"type": "number"
},
"limit": {
"description": "Max users to return.",
"type": "number"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢allquiet_list_on_call_overrides(userId, offset, limit)
Search/list on-call overrides for a given user. All Quiet: GET /v1/on-call-override/search/list.
Input Schema
{
"type": "object",
"properties": {
"userId": {
"type": "string",
"description": "The user id to list overrides for (required)."
},
"offset": {
"description": "Pagination offset.",
"type": "number"
},
"limit": {
"description": "Max overrides to return.",
"type": "number"
}
},
"required": [
"userId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴allquiet_create_incident(title, status, severity, message, messageIsPublic, ...)
Creates a new incident on the LIVE account (may trigger alerting/paging). `status` and `severity` are free-form strings the API validates against your account's configuration — common `severity` values include "Warning", "Minor", "Major", "Critical", and `status` reflects the incident lifecycle (e.g. "Open"/"Resolved"); confirm the valid values for your account before calling. All Quiet: POST /v1/incident.
Input Schema
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Incident title (required)."
},
"status": {
"type": "string",
"description": "Incident status (required) — free-form, validated by the API; reflects the incident lifecycle (e.g. \"Open\"/\"Resolved\"). Confirm valid values for your account."
},
"severity": {
"type": "string",
"description": "Incident severity (required) — free-form, validated by the API; common values include \"Warning\", \"Minor\", \"Major\", \"Critical\". Confirm valid values for your account."
},
"message": {
"description": "Incident message/description.",
"type": "string"
},
"messageIsPublic": {
"description": "Whether the message is visible on a public status page.",
"type": "boolean"
},
"teamIds": {
"description": "Ids of teams to associate with the incident.",
"type": "array",
"items": {
"type": "string"
}
},
"serviceIds": {
"description": "Ids of affected services.",
"type": "array",
"items": {
"type": "string"
}
},
"integrationId": {
"description": "Id of the integration that should own/route the incident.",
"type": "string"
}
},
"required": [
"title",
"status",
"severity"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴allquiet_update_incident(incidentId, changeSeverity, appendIntent, intentMessage)
Applies an operation to an existing LIVE incident: change its severity and/or append an intent (a lifecycle action such as acknowledge/resolve/reopen/snooze — a status transition). At least one of `changeSeverity` or `appendIntent` is required. All Quiet: PATCH /v1/incident/{incidentId}.
Input Schema
{
"type": "object",
"properties": {
"incidentId": {
"type": "string",
"description": "The incident id to update (required)."
},
"changeSeverity": {
"description": "New severity to set on the incident.",
"type": "string"
},
"appendIntent": {
"description": "Lifecycle action/intent to append (e.g. acknowledge/resolve/reopen/snooze — a status transition). Confirm valid values for your account.",
"type": "string"
},
"intentMessage": {
"description": "Optional message to attach to the appended intent.",
"type": "string"
}
},
"required": [
"incidentId"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴allquiet_create_on_call_override(userId, type, teamId, escalationTier, replacementUserIds, ...)
Creates an on-call override for a user on the LIVE account (temporarily changes who is on call). `type` is a free-form override kind and `start`/`end` govern the override window — confirm the valid `type` values for your account. All Quiet: POST /v1/on-call-override.
Input Schema
{
"type": "object",
"properties": {
"userId": {
"type": "string",
"description": "The user id the override applies to (required)."
},
"type": {
"type": "string",
"description": "Override kind (required) — free-form, validated by the API. Confirm valid values for your account."
},
"teamId": {
"description": "Team id the override applies within.",
"type": "string"
},
"escalationTier": {
"description": "Escalation tier the override applies to.",
"type": "number"
},
"replacementUserIds": {
"description": "Ids of the replacement user(s) on call.",
"type": "array",
"items": {
"type": "string"
}
},
"start": {
"description": "ISO8601 start of the override window.",
"type": "string"
},
"end": {
"description": "ISO8601 end of the override window.",
"type": "string"
}
},
"required": [
"userId",
"type"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence