Skip to main content
Glama

Instatus MCP by usefulapi

Server Details

Manage status pages: components, incidents and maintenances; set live component status.

Ownership verified

The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.

If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.

Status
Unhealthy
Uptime
85.3% over 74 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
m190/usefulapi-mcp
GitHub Stars
0

TDQS

A4.1/5.0

Scored across 14 tools

Disambiguation5/5

The set cleanly partitions into three resource families (incidents, maintenances, components) each with distinct verb actions, plus list_pages. Every tool targets a unique resource+action combination, so there is no realistic misselection risk.

Naming Consistency5/5

All tools follow a strict instatus_verb_noun snake_case pattern (create_incident, get_component, list_maintenances, update_component, delete_incident). The convention is applied uniformly across every tool with no deviations.

Tool Count5/5

Fourteen tools map neatly onto three resource lifecycles plus a page list, with no redundant or filler entries. The count is well-matched to the domain's scope.

Completeness4/5

Incidents and maintenances have full create/read/update/delete coverage, and components support get/list/update. However, components cannot be created or deleted and pages support only listing (no get/create/update), which are minor gaps typically handled in the Instatus UI.

Available Tools

14 tools
instatus_create_incidentCreate incidentA
Destructive
Inspect

CREATES a new incident — this MODIFIES live status-page data and can notify subscribers. Provide name (required); optionally set the initial message, affected components, per-component impact via statuses, status, started, notify, and shouldPublish. Instatus: POST /v1/{page_id}/incidents. Returns the created incident.

NameRequiredDescriptionDefault
nameYesIncident title (required).
notifyNoWhether to notify subscribers about this update.
statusNoIncident status.
messageNoIncident update message (Markdown supported).
page_idYesThe status page's id.
startedNoISO 8601 timestamp for when the incident started.
statusesNoPer-component impact — set each listed component's status for this event.
componentsNoComponent ids affected by this incident.
shouldPublishNoWhether the incident should be published to the status page.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only supply destructiveHint=true, and the description adds real context: it modifies live status-page data and can notify subscribers, plus it names the endpoint (POST /v1/{page_id}/incidents) and the return (the created incident). It does not state permission requirements or whether notifications are default-on, so it stops short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two dense sentences with the effect warning front-loaded, required vs optional params summarized compactly, and endpoint/return noted last. No wasted clauses.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter mutation with no output schema, the description covers the key facts an agent needs: required field, optional fields, side effects, and that the created incident is returned. Remaining gaps (notification defaults, permission/error behavior) are minor given full schema coverage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents every parameter including enum values and formats. The description usefully flags name as required and lists the optional fields, but adds no syntax or semantic detail beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb+resource ('CREATES a new incident') with the scope stated — it modifies live status-page data. The name instatus_create_incident plus the create-vs-update framing makes it distinguishable from instatus_update_incident and instatus_create_maintenance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear context — create a new incident, provide name as required, everything else optional — and the mutation warning signals when care is needed. It does not explicitly route the agent to instatus_update_incident for existing incidents, so it stops short of naming alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_create_maintenanceCreate maintenanceA
Destructive
Inspect

CREATES a new scheduled maintenance — this MODIFIES live status-page data and can notify subscribers. Provide name (required); optionally set message, affected components, per-component impact via statuses, status, start/end, duration, and notify. Instatus: POST /v1/{page_id}/maintenances. Returns the created maintenance.

NameRequiredDescriptionDefault
endNoISO 8601 timestamp for when the maintenance ends.
nameYesMaintenance title (required).
startNoISO 8601 timestamp for when the maintenance starts.
notifyNoWhether to notify subscribers about this update.
statusNoMaintenance status.
messageNoMaintenance update message (Markdown supported).
page_idYesThe status page's id.
durationNoMaintenance duration in minutes.
statusesNoPer-component impact — set each listed component's status for this event.
componentsNoComponent ids affected by this maintenance.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only supply destructiveHint=true, so the description usefully adds that this modifies live status-page data and can notify subscribers — an important side effect an agent should anticipate. It also maps the call to the underlying POST endpoint and states the return. It stops short of mentioning auth/permission requirements or whether a scheduled maintenance can be canceled after creation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences: capability and side effect first, then parameters, endpoint, and return value. Every clause carries information and nothing is padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter mutation tool with only destructiveHint covered by annotations and no output schema, the description supplies the effect on live data, notification behavior, and the return shape. It omits permissions and post-creation mutability, but what an agent needs to invoke it correctly is largely present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter is already documented, including the per-component 'statuses' impact mapping and enum values. The description enumerates the same fields (name required, message, components, statuses, status, start/end, duration, notify) without adding syntax, defaults, or interaction rules beyond the schema. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('CREATES a new scheduled maintenance') and immediately characterizes the scope of the effect on live status-page data. The resource name itself separates it from instatus_create_incident, so an agent can select correctly without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the usage context (scheduling maintenance that affects live status-page data and notifies subscribers), which is useful framing. But it never states when to prefer this over instatus_create_incident, instatus_update_maintenance, or what prerequisites (page_id ownership, permissions) must hold. Usage is inferable rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_delete_incidentDelete incidentA
Destructive
Inspect

PERMANENTLY DELETES an incident by id — this MODIFIES live status-page data and cannot be undone. Instatus: DELETE /v1/{page_id}/incidents/{incident_id}.

NameRequiredDescriptionDefault
page_idYesThe status page's id.
incident_idYesThe incident's id to delete.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, so the safety profile is partly covered; the description adds real value beyond that by stating the deletion is PERMANENT, cannot be undone, and modifies live status-page data, plus the underlying HTTP method. It does not cover auth/permission requirements or side effects on the page's status, keeping it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence carrying the destructive warning, followed by the endpoint for traceability. No filler, and the most important information (permanent, irreversible, modifies live data) comes first.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter destructive mutation with destructiveHint already set and no output schema, the description supplies the key missing context: irreversibility and impact on live data. It stops short of describing permission requirements or what effect deletion has on the related status page/incidents.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (both page_id and incident_id are documented in the schema), so the schema does the heavy lifting. The description's endpoint template and 'by id' phrasing lightly reinforce which ids are needed but add no syntax, format, or constraint details beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb+resource (delete an incident by id) and the exact API route, which distinguishes it cleanly from siblings such as instatus_create_incident, instatus_update_incident, and instatus_delete_maintenance. An agent can identify the operation without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies the usage condition by emphasizing permanence and irreversibility, which is a strong hint to reach for it only when removal (not resolution/update) is intended. However, it never names the alternative actions (update_incident to resolve, or sibling delete tools) or states when NOT to use it, so routing guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_delete_maintenanceDelete maintenanceA
Destructive
Inspect

PERMANENTLY DELETES a scheduled maintenance by id — this MODIFIES live status-page data and cannot be undone. Instatus: DELETE /v1/{page_id}/maintenances/{maintenance_id}.

NameRequiredDescriptionDefault
page_idYesThe status page's id.
maintenance_idYesThe maintenance's id to delete.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, so the safety profile is covered structurally. The description adds real value beyond that: it stresses PERMANENT deletion, states that live status-page data is modified, and explicitly says the action cannot be undone — concretely describing what is destroyed. It stops short of auth requirements or error behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence with the destructive warning front-loaded, followed by the endpoint mapping. Efficient, though the caps emphasis and the REST path add little for an agent that already has the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 2-required-param destructive tool with no output schema and full schema coverage, the description covers the critical concerns: permanence, irreversibility, and that live data is affected. Only error/edge-case behavior (e.g., deleting an active maintenance) is unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both page_id and maintenance_id are already documented in the schema. The description only adds 'by id', which does not extend beyond the schema's own descriptions; baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (PERMANENTLY DELETES) and resource (scheduled maintenance) scoped by id, and names the exact REST endpoint. An agent can distinguish it from instatus_delete_incident and instatus_update_maintenance without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says what it deletes but never states when to use it versus alternatives (e.g., cancel vs. delete, or delete_incident) nor any prerequisites such as required permissions or that the maintenance must not be in progress. Usage is only implied by the tool name and endpoint.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_get_componentGet componentA
Read-only
Inspect

Get a single component by id — its full state (name, description, status, order, showUptime, grouped, archived). Instatus: GET /v2/{page_id}/components/{component_id}.

NameRequiredDescriptionDefault
page_idYesThe status page's id.
component_idYesThe component's id.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint already tells the agent this is a safe read. The description adds meaningful context beyond that by listing the returned state fields (name, description, status, order, showUptime, grouped, archived) and the underlying API endpoint, which helps the agent understand the response shape without an output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one tight sentence followed by the API route, with the key fact — retrieving a single component by id — front-loaded. Every part earns its place and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only lookup with full schema coverage and annotations, the definition is complete. It names the resource, the identifying parameters, the returned fields, and the endpoint, leaving no meaningful gap for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents page_id and component_id. The description echoes the id-based access and embeds the parameters in the GET path, but adds no significant semantic detail beyond what the schema provides, matching the baseline for high coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb (Get) and resource (a single component), and explicitly distinguishes it from list-based siblings by emphasizing 'single component by id'. It also previews the full returned state, so an agent knows exactly what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies usage when you have a component ID, but gives no explicit when-to-use guidance, no conditions for choosing it over instatus_list_components, and no exclusions. The context is clear enough to infer the basic use case, but alternatives are not addressed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_get_incidentGet incidentA
Read-only
Inspect

Get a single incident by id — its full state including its update timeline and affected components. Instatus: GET /v1/{page_id}/incidents/{incident_id}.

NameRequiredDescriptionDefault
page_idYesThe status page's id.
incident_idYesThe incident's id.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true already tells the agent this is a safe read. The description goes beyond annotations by disclosing what the payload contains (update timeline, affected components), which matters since no output schema exists. It stops short of noting auth requirements, error behavior for unknown ids, or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The sentence is front-loaded with the core action and payload scope, with no filler. The trailing 'Instatus: GET /v1/{page_id}/incidents/{incident_id}' is mildly redundant with the tool name but useful for mapping to the REST endpoint.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only single-resource getter with full parameter documentation and annotations covering the safety profile, the description supplies the missing piece (what the response contains). Only minor gaps remain around auth and error cases, which are low-value here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with both required params (page_id, incident_id) documented in the schema itself. The description only refers generically to 'id' and adds no format, naming, or lookup guidance beyond what the schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Get a single incident by id') and further scopes it with the returned content ('full state including its update timeline and affected components'). This clearly separates it from the sibling list_incidents and the create/update/delete incident tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied: call it when you have a page_id and incident_id and need one incident's full detail rather than a list. However, it never explicitly says when to prefer this over instatus_list_incidents or instatus_get_maintenance, nor states any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_get_maintenanceGet maintenanceA
Read-only
Inspect

Get a single scheduled maintenance by id — its full state including its update timeline and affected components. Instatus: GET /v1/{page_id}/maintenances/{maintenance_id}.

NameRequiredDescriptionDefault
page_idYesThe status page's id.
maintenance_idYesThe maintenance's id.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so safety is covered; the description earns credit by disclosing the response shape (full state, update timeline, affected components), which is meaningful context absent an output schema. It omits error/not-found behavior, keeping it short of a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences, front-loaded with the operation and the payload it returns. The trailing REST path is mildly redundant metadata but does not obscure the core statement.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only two-param tool with no output schema, the description supplies the return content the schema cannot, so an agent knows what a successful call yields. Only not-found/error handling is left unspecified, a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both page_id and maintenance_id are already documented in the schema. The description only restates 'by id' and adds no format, linkage, or sourcing detail beyond the structured fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Get) and resource (a single scheduled maintenance) scoped by id, which cleanly distinguishes it from the sibling list_maintenances and from instatus_get_incident/get_component.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by 'single ... by id' versus the list sibling, but the description never states when to prefer this over instatus_list_maintenances or what to do when the id is unknown. No explicit conditions or exclusions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_list_componentsList componentsA
Read-only
Inspect

List a status page's components — id, name, description, status, order, showUptime, grouped, archived. The component ids are what you set impact on. Instatus: GET /v2/{page_id}/components.

NameRequiredDescriptionDefault
pageNoPage number to fetch (default 1).
page_idYesThe status page's id (from list_pages).
per_pageNoItems per page (default 50, max 100).

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the safety profile is covered and the bar is lower. The description adds real value beyond that by disclosing the exact fields returned (id, name, description, status, order, showUptime, grouped, archived) and the underlying endpoint GET /v2/{page_id}/components, which matters because no output schema exists.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short clauses with the purpose and returned fields front-loaded before the endpoint reference. No filler text, though the raw field enumeration is dense and the endpoint citation is arguably redundant with the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only list tool with no output schema, the description compensates by naming the returned fields, and pagination details are fully covered by the 100%-covered input schema. The main remaining gap is how this differs from instatus_get_component, but nothing needed to invoke the tool correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so page, page_id, and per_page are all documented in the schema with defaults and bounds; the baseline is 3. The description only implies the page scoping ('a status page's components') and adds nothing about pagination syntax or formats beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (List) and resource (a status page's components) and enumerates the returned fields, so the agent knows exactly what comes back. It does not explicitly distinguish itself from the sibling instatus_get_component, so it falls short of full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The line 'The component ids are what you set impact on' implies downstream usage (incident impact), which gives some context for why an agent would call this. However, there is no explicit when-to-use guidance, no statement of when to prefer instatus_get_component, and no prerequisites beyond the schema-level page_id.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_list_incidentsList incidentsA
Read-only
Inspect

List a status page's incidents, most recent first — optionally filtered by status. Each incident: id, name, status, impact, affected components, updates, timestamps. Instatus: GET /v1/{page_id}/incidents.

NameRequiredDescriptionDefault
pageNoPage number to fetch (default 1).
statusNoFilter to incidents with this status (INVESTIGATING, IDENTIFIED, MONITORING, RESOLVED).
page_idYesThe status page's id.
per_pageNoItems per page (default 50, max 100).

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With readOnlyHint=true already covering the safety profile, the description still adds real behavioral context: deterministic ordering ('most recent first') and the shape of each returned incident (id, name, status, impact, components, updates, timestamps). It does not mention pagination behavior beyond what the schema's page/per_page params imply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action and result shape in essentially one dense sentence, with the API mapping trailing as a useful reference. Every clause carries information, though the field enumeration borders on schema duplication.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only paginated list tool, the description plus fully-documented schema and readOnlyHint annotation cover what an agent needs to invoke it correctly. Only minor gaps remain, such as explicit pagination/ordering interaction or total-count behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents page, per_page, status, and page_id with defaults and bounds. The description only echoes the status filter and adds no format or syntax detail beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (list a status page's incidents) plus ordering ('most recent first') and the optional status filter, and even maps to the underlying endpoint. It is clearly distinguishable from instatus_get_incident, but it never names a sibling explicitly the way a top-tier definition would.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Optionally filtered by status' implies the filtering use case, but there is no explicit guidance on when to use this list versus instatus_get_incident or instatus_list_maintenances, nor any prerequisite or exclusion statements. Usage is implied rather than specified.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_list_maintenancesList maintenancesA
Read-only
Inspect

List a status page's scheduled maintenances, most recent first — id, name, status, affected components, start/end, updates. Instatus: GET /v2/{page_id}/maintenances.

NameRequiredDescriptionDefault
pageNoPage number to fetch (default 1).
page_idYesThe status page's id.
per_pageNoItems per page (default 50, max 100).

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already establishes the safe read-only profile, so the description's main added value is the ordering guarantee ('most recent first') and the field set returned. It discloses nothing about pagination limits or the raw endpoint's behavior beyond naming 'GET /v2/{page_id}/maintenances'. Reasonable extra context, but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single compact sentence that front-loads the resource and scope, followed by the field list and the underlying endpoint. Every clause carries information; nothing is padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, three-parameter list tool with a fully documented schema and a readOnlyHint annotation, the description covers purpose, ordering and returned fields adequately. Only minor gaps (pagination behavior, total counts) remain, and those are largely covered by the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with page, per_page and page_id all documented in the schema including defaults and max values. The description adds no parameter syntax or format detail beyond what the schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource (list a status page's scheduled maintenances) and even enumerates the returned fields and ordering ('most recent first'), so an agent knows exactly what it retrieves. It doesn't explicitly distinguish itself from siblings like instatus_list_incidents or instatus_get_maintenance, but the resource noun makes the separation clear.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: it lists maintenances for a given page. There is no explicit guidance on when to use this versus instatus_get_maintenance for a single record or list_incidents, and no stated prerequisites. Adequate but leaves the routing decision to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_list_pagesList pagesA
Read-only
Inspect

List all status pages on the account — each page's id, subdomain, name, status, url, custom domain, and timestamps. The page id is what every other tool takes as page_id. Instatus: GET /v2/pages.

NameRequiredDescriptionDefault
pageNoPage number to fetch (default 1).
per_pageNoItems per page (default 50, max 100).

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

readOnlyHint=true already tells the agent this is a safe, non-mutating read, so the annotation carries the safety profile. The description adds the returned field set and the cross-tool meaning of `page.id`, which is useful context, but says nothing about pagination behavior, ordering, or limits beyond what the schema states.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences: the returned fields come first, then the high-value note about page_id, then the endpoint. No filler, no restating of the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, enumerating the returned fields is exactly the right compensation, and the page_id linkage closes the loop for downstream tools. Minor gap: pagination semantics (how to walk pages, what happens past the last page) are implied only by the schema parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so `page` and `per_page` are already fully documented with defaults and max. The description adds no parameter-level meaning (e.g., ordering of results across pages), so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('List all status pages on the account') plus the exact fields returned, and pairs it with the underlying endpoint (GET /v2/pages). This clearly distinguishes it from sibling list tools such as instatus_list_components and instatus_list_incidents.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explains the role this call plays for the rest of the toolset: 'The page id is what every other tool takes as `page_id`', which tells the agent to resolve page ids here first. It does not state any when-not conditions or exclusions, but for a leaf list tool none are really needed.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_update_componentUpdate componentA
Destructive
Inspect

UPDATES a component by id — this MODIFIES live status-page data. The key way to set a component's operational status (OPERATIONAL, UNDERMAINTENANCE, DEGRADEDPERFORMANCE, PARTIALOUTAGE, MAJOROUTAGE). Send only the fields you want to change. Instatus: PUT /v2/{page_id}/components/{component_id}. Returns the updated component.

NameRequiredDescriptionDefault
nameNoComponent name.
orderNoDisplay order of the component on the page.
statusNoOperational status of the component.
groupedNoWhether the component is displayed within a group.
page_idYesThe status page's id.
archivedNoWhether the component is archived (hidden).
showUptimeNoWhether to show the uptime graph for this component.
descriptionNoFree-form component description.
component_idYesThe component's id to update.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare destructiveHint=true; the description adds real behavioral context beyond that by emphasizing the operation MODIFIES live data and by disclosing partial-update semantics (omitted fields are left unchanged), which is critical to avoid accidentally wiping component settings. It also states the return value, useful since there is no output schema. Auth requirements and side effects on the public status page are not covered.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three terse sentences, front-loaded with the verb and the mutation warning, then usage, then transport/return details. No padding; every clause carries information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 9-parameter mutation tool with 100% schema coverage and a destructiveHint annotation, the description supplies mutation severity, partial-update behavior, endpoint, and return value. Remaining gaps (auth/permission requirements, status enum semantics for each value) are minor, and the enum is fully enumerated in the schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful semantics not present in the schema: the partial-update contract ('send only the fields you want to change') and a framing of status as the primary field to set. Listing the status enum values duplicates the schema's enum, but on balance this is slightly above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('UPDATES a component by id') and immediately scopes it as modifying live status-page data, which cleanly separates it from instatus_get_component and instatus_list_components. It even names the underlying endpoint, so the agent knows exactly which operation this maps to.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear context for use ('The key way to set a component's operational status') and the partial-update rule 'Send only the fields you want to change', which tells the agent how to invoke it safely. It does not, however, name an alternative or state explicit when-not-to-use conditions relative to siblings like instatus_update_incident or instatus_create_maintenance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_update_incidentUpdate incidentA
Destructive
Inspect

UPDATES an existing incident by id — this MODIFIES live status-page data and can notify subscribers (e.g. move it to MONITORING or RESOLVED). Send only the fields you want to change. Instatus: PUT /v1/{page_id}/incidents/{incident_id}. Returns the updated incident.

NameRequiredDescriptionDefault
nameNoIncident title.
notifyNoWhether to notify subscribers about this update.
statusNoIncident status.
messageNoIncident update message (Markdown supported).
page_idYesThe status page's id.
startedNoISO 8601 timestamp for when the incident started.
statusesNoPer-component impact — set each listed component's status for this event.
componentsNoComponent ids affected by this incident.
incident_idYesThe incident's id to update.
shouldPublishNoWhether the incident should be published to the status page.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only declare destructiveHint=true; the description adds meaningful context beyond that: it MODIFIES live status-page data, may notify subscribers, uses partial-update semantics, and returns the updated incident. It does not mention auth requirements or any irreversibility/rate-limit caveats, keeping it below a 5.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences with no filler, front-loaded with the verb and the mutation side effect. The API endpoint and return note each add distinct value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 10-parameter mutation tool with no output schema, the description covers the mutation risk, notification side effect, patch semantics, and return value, which is nearly everything an agent needs. It leaves the relationship between the components and statuses arrays unexplained, a minor omission against a fully documented schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with per-parameter descriptions and an enum for status, so the baseline is 3. The description's 'send only the fields you want to change' adds partial-update semantics but no syntax or format detail beyond the schema, and it does not explain the components vs. statuses interplay.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('UPDATES an existing incident by id') and identifies the underlying API operation (PUT /v1/{page_id}/incidents/{incident_id}). The 'existing incident' scoping plus the id requirement distinguishes it cleanly from instatus_create_incident and instatus_get_incident.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides a clear operational instruction — 'Send only the fields you want to change' — which is exactly the guidance an agent needs for a partial update, and gives concrete examples of target states (MONITORING, RESOLVED). It stops short of naming explicit alternatives or exclusions (e.g. 'use instatus_create_incident for new incidents'), so it does not reach a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

instatus_update_maintenanceUpdate maintenanceA
Destructive
Inspect

UPDATES an existing scheduled maintenance by id — this MODIFIES live status-page data and can notify subscribers. Send only the fields you want to change. Instatus: PUT /v1/{page_id}/maintenances/{maintenance_id}. Returns the updated maintenance.

NameRequiredDescriptionDefault
endNoISO 8601 timestamp for when the maintenance ends.
nameNoMaintenance title.
startNoISO 8601 timestamp for when the maintenance starts.
notifyNoWhether to notify subscribers about this update.
statusNoMaintenance status.
messageNoMaintenance update message (Markdown supported).
page_idYesThe status page's id.
durationNoMaintenance duration in minutes.
statusesNoPer-component impact — set each listed component's status for this event.
componentsNoComponent ids affected by this maintenance.
maintenance_idYesThe maintenance's id to update.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations carry only destructiveHint=true, so the description usefully adds that this modifies live status-page data and can trigger subscriber notifications, plus a concrete side-effect (returns the updated maintenance). It stops short of spelling out what is irreversibly lost or what permissions are required, but this is well beyond what the annotation provides.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three compact sentences with the destructive nature and partial-update rule front-loaded, followed by the endpoint mapping. No filler; every sentence carries information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 11-param mutation tool with no output schema and only a destructiveHint annotation, the description covers the key risks (live data, notifications) and update semantics. It could say more about whether the update is reversible or how notification is suppressed, but nothing essential to making the call is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3 and the schema already documents all 11 params. The description adds genuine semantics the schema does not: that this is a partial update where omitted fields are left untouched, which resolves the ambiguity of whether unset fields are cleared.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('UPDATES an existing scheduled maintenance by id') and pins the operation to an API endpoint. The word 'existing' plus the required maintenance_id clearly separates it from the create/delete maintenance siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an invocation rule ('Send only the fields you want to change') and warns that it modifies live data and may notify subscribers, which implies the context for cautious use. However, it never names an alternative tool or states when to prefer this over instatus_update_incident or instatus_create_maintenance, so selection guidance is only implied.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Let agents read and manage your org’s independent monitors, incidents, status pages, and alerts (honest measured state, no false greens).
    -
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to check whether anything on a status page is down, open, update and resolve incidents, change component statuses, and schedule maintenance windows through Instatus's public API. Writes keep subscriber notifications off by default and expose MCP annotations so clients can confirm before publishing anything.
    14
    5 npm
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables querying the current state, incident history, resolution times, and feed URLs for over 1,100 SaaS/cloud vendor status pages.
    7
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.