Model Context Protocol server for Rollbar
Pingpulse is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Uptime monitoring: monitors, outages, on-call schedules, status pages, maintenance and logs.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user pingpulse-mcp '--' npx -y @reneturcios/pingpulse mcp
# 2 — ask your agent for something these tools do
# list_monitors, get_monitor, create_monitor and 66 more
Pingpulse costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. This one runs on your machine: your client starts Pingpulse as a process under your own user, with your files and your network, so the tool surface below is what it can do to your computer rather than to a server somewhere else. Its scan result is on the Security tab — read the surface before you approve it.
This is a public server: you run it yourself and this marketplace is not in the path. You need Node.js — the current LTS (24) is the safe choice; npx comes with it. Claude Code registers it in one command; --scope user makes it available in every project. The '--' is in quotes so that PowerShell passes it on.
claude mcp add --scope user pingpulse-mcp '--' npx -y @reneturcios/pingpulse mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry your client uses to start the process locally. A local server runs with your file system and your network, which is why it is priced without metering.
69 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Read from its source code. A server that builds its tool list when it starts can list more tools than this.
Paginated monitors in the project. Optional status filter (up/down/paused/ssl_expiring).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status | string | no | Filter by state. "ssl_expiring" = SSL expires within 30 days. |
| page | integer | no | Zero-indexed page. Default 0. |
| limit | integer | no | Rows per page. Default 50, max 200. |
Fetch a single monitor by its UUID.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Monitor UUID (format "mon_...") |
Create a new monitor. Requires name+url; add "port" for port checks, "dns_*" for DNS checks.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Human-readable monitor name. |
| url | string | yes | Target URL (http) or hostname (icmp/port/dns). |
| protocol | string | no | Check protocol. Defaults to "http". |
| port | integer | no | TCP port — required when protocol is "port". |
| http_method | string | no | HTTP verb. Defaults to GET. |
| regions | array | no | Probe region codes, e.g. ["us-east","eu-west"]. Use ["*"] for all. |
| check_frequency | number | no | Check interval in seconds. Sub-30s requires a business plan. |
| follow_redirects | boolean | no | Follow 3xx redirects on http monitors. |
| ip_version | number | no | IP version used to reach the target (default 4). 6 = checked over IPv6 only, for http/port/icmp, from the selected regions that have an IPv6 probe. |
| timeout | integer | no | Request timeout in seconds (default 30). |
| expected_status_code | string/number | no | Expected response status: number (200), "2xx", or "1xx-3xx". |
| request_body | string | no | Body for http requests. |
| request_headers | array | no | Custom request headers. |
| required_keyword | string | no | Body must contain this keyword, else flagged down. |
| paused | boolean | no | Start the monitor in a paused state. |
| alerts_wait | number | no | Minutes to wait before alerting. -1 disables, 0 is immediate. |
| dns_record_type | string | no | DNS record type (protocol="dns"). |
| dns_nameserver | string | no | Custom nameserver for DNS checks. |
| dns_expected_answer | string | no | Expected DNS answer to assert against. |
| escalation_policy | string | no | UUID of an escalation policy to link. |
Patch a monitor. Pass only fields you want to change; others are preserved.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | UUID of the monitor to update. |
| name | string | no | Human-readable monitor name. |
| url | string | no | Target URL (http) or hostname (icmp/port/dns). |
| protocol | string | no | Check protocol. Defaults to "http". |
| port | integer | no | TCP port — required when protocol is "port". |
| http_method | string | no | HTTP verb. Defaults to GET. |
| regions | array | no | Probe region codes, e.g. ["us-east","eu-west"]. Use ["*"] for all. |
| check_frequency | number | no | Check interval in seconds. Sub-30s requires a business plan. |
| follow_redirects | boolean | no | Follow 3xx redirects on http monitors. |
| ip_version | number | no | IP version used to reach the target (default 4). 6 = checked over IPv6 only, for http/port/icmp, from the selected regions that have an IPv6 probe. |
| timeout | integer | no | Request timeout in seconds (default 30). |
| expected_status_code | string/number | no | Expected response status: number (200), "2xx", or "1xx-3xx". |
| request_body | string | no | Body for http requests. |
| request_headers | array | no | Custom request headers. |
| required_keyword | string | no | Body must contain this keyword, else flagged down. |
| paused | boolean | no | Start the monitor in a paused state. |
| alerts_wait | number | no | Minutes to wait before alerting. -1 disables, 0 is immediate. |
| dns_record_type | string | no | DNS record type (protocol="dns"). |
| dns_nameserver | string | no | Custom nameserver for DNS checks. |
| dns_expected_answer | string | no | Expected DNS answer to assert against. |
Pause a monitor — no checks run and no alerts fire. Same as update_monitor with paused=true.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | UUID of the monitor to pause. |
Resume a paused monitor. Same as update_monitor with paused=false.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | UUID of the monitor to resume. |
Case-insensitive substring search across monitor names and URLs.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | Case-insensitive substring matched against monitor names or URLs. |
Up/down/paused counts plus a list of currently down monitors with the timestamp they went down.
No parameter schema on file.
Paginated list of outages in the project. Filter by status, type, or search term.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| page | integer | no | Zero-indexed page number, 20 outages per page. |
| search | string | no | Substring matched against monitor name/URL/domain, or an incident key: "INC-123", or the project's own prefix such as "API-123". |
| status | string | no | Filter by status. Defaults to "all". |
| type | string | no | Filter by type. Defaults to "all". |
Fetch a single outage by UUID, including acknowledgements, description, and root cause.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID. |
Full activity timeline for an outage: detection, cross-region verification, alert dispatches, acknowledgement, resolution.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID (format "outage_..." or "INC-123"). |
Paginated list of outages scoped to one monitor. Convenience wrapper around list_outages.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| monitor_uuid | string | yes | Monitor UUID (format "mon_...") to filter by. |
| page | integer | no | Zero-indexed page number, 20 per page. |
| status | string | no | Filter by status. Defaults to "all". |
Declare an incident by hand, for a problem no monitor detects. It appears under Incident Management in the dashboard and, with an escalation policy, pages its on-call responders. Internal: nothing is published on a status page (create_status_page_incident does that).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| description | string | yes | What is wrong, e.g. "Payments failing at checkout". Shown as the incident title. |
| summary | string | no | Details for the responders. |
| severity | string | no | Severity key: "critical", "major" or "minor" by default. Defaults to the least severe. |
| escalation_policy_uuid | string | no | Escalation policy whose on-call responders are paged (list_escalation_policies). Without one, nobody is paged. |
Mark an ongoing outage as being handled: repeat alerts stop. Escalation steps still fire on schedule; resolve it or fix the cause to stop them.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID from list_outages. |
Page the next step of the outage's escalation policy now instead of waiting for it. Each call moves one step further.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID from list_outages. |
Resolve an incident declared by hand or a server incident, and send the recovery to the channels it paged. An outage detected on a monitor resolves itself when its checks pass again.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID from list_outages. |
Alert notifications (up/down transitions) over a date range. Defaults to last 30 days.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | ISO start date. Default: 30 days ago. |
| to | string | no | ISO end date. Default: now. |
| resolution | string | no | Time grouping. Default "day". |
| monitor_uuids | array | no | Restrict to these monitor UUIDs. |
Uptime percentage over a date window, aggregated and optionally per day/hour/week/month.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | ISO start date. Default: 30 days ago. |
| to | string | no | ISO end date. Default: now. |
| monitor_uuids | array | no | Monitor UUIDs to report on. Pass EVERY monitor you care about in a SINGLE call: the endpoint resolves them in one aggregate query and returns a per-monitor breakdown, so N monitors in one call costs a |
| resolution | string | no | Time grouping. Default "day". |
| timezone | string | no | IANA timezone the periods are cut in, e.g. "Europe/Paris". Default: the project's timezone when set, else UTC. |
Response time latency trend over a date window. Returns a per-monitor breakdown — pass all monitors at once in monitor_uuids rather than calling this once per monitor.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | ISO start date. Default: 30 days ago. |
| to | string | no | ISO end date. Default: now. |
| monitor_uuids | array | no | Monitor UUIDs to report on. Pass EVERY monitor you care about in a SINGLE call: the endpoint resolves them in one aggregate query and returns a per-monitor breakdown, so N monitors in one call costs a |
| resolution | string | no | Time grouping. Default "day". |
| timezone | string | no | IANA timezone the periods are cut in, e.g. "Europe/Paris". Default: the project's timezone when set, else UTC. |
Mean time to resolve (MTTR) per monitor over a date window, in seconds. Already per-monitor — pass all monitors at once in monitor_uuids rather than calling this once per monitor.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | ISO start date. Default: 30 days ago. |
| to | string | no | ISO end date. Default: now. |
| monitor_uuids | array | no | Monitor UUIDs to report on. Pass EVERY monitor you care about in a SINGLE call: the endpoint resolves them in one aggregate query and returns a per-monitor breakdown, so N monitors in one call costs a |
Mean time to acknowledge (MTTA) per monitor over a date window, in seconds. Already per-monitor — pass all monitors at once in monitor_uuids rather than calling this once per monitor.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | ISO start date. Default: 30 days ago. |
| to | string | no | ISO end date. Default: now. |
| monitor_uuids | array | no | Monitor UUIDs to report on. Pass EVERY monitor you care about in a SINGLE call: the endpoint resolves them in one aggregate query and returns a per-monitor breakdown, so N monitors in one call costs a |
Anomaly-detection output for a single monitor (flapping, latency spikes, etc.).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Monitor UUID (format "mon_..."). |
Recent HTTP probe logs for a monitor, paginated. Useful to diagnose recent check failures.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Monitor UUID (format "mon_..."). |
| page | integer | no | Zero-indexed page. Default 0. |
| limit | integer | no | Rows per page. Default 50, max 200. |
| level | array | no | Filter by log level. |
All on-call schedules in the project. Each entry typically includes rotation config and current on-call.
No parameter schema on file.
One schedule by UUID with full rotation detail and the linked escalation policies.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Schedule UUID (format "sch_..."). |
All escalation policies in the project. Use to find which monitors route alerts where.
No parameter schema on file.
One policy by UUID. Reveals step sequence, linked schedules, and contact channels.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Escalation policy UUID (format "esc_..."). |
Users on the project, with names and emails. Use to resolve user IDs from schedules/policies.
No parameter schema on file.
Who is on call, per on-call schedule, right now or at the moment given in at (e.g. next Saturday 10:00), computed by the engine that pages people: names, emails and the rotation of each person, and the escalation policies each schedule pages for. Use it for any "who is on call" question instead…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| at | string | no | ISO 8601 date-time to resolve, within 90 days of now. Default: now. |
All notification integrations in the project (Slack, Telegram, Discord, PagerDuty, OpsGenie, Teams, webhook, etc.).
No parameter schema on file.
One integration by UUID, with its channel-specific config (channel name, webhook URL, routing, etc.).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Integration UUID (format "int_..."). |
Status pages in the project, 20 per page: UUID, name, public URL, password protection.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| page | integer | no | Zero-indexed page, 20 per page. |
| search | string | no | Substring matched against name and hostname. |
One status page with its settings (languages, subscriptions, access) and the services it shows, section by section, with their UUIDs and type (monitor, healthcheck, server or component).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Status page UUID (format "sp_..."). |
Create a status page on a hyperping.app subdomain, with sections of monitors, healthchecks, components and servers. It is public as soon as it exists: confirm the name, address and services with the user first. Password protection, SSO, a custom domain and a logo are set in the dashboard.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Name shown on the page, e.g. "Acme Status". |
| subdomain | string | yes | Address on hyperping.app: "acme" publishes the page at acme.hyperping.app. |
| description | string | no | Short text under the page status. |
| website | string | no | Company website, linked from the page header. |
| language | string | no | Two-letter code of the page's language, e.g. "fr". Default "en". |
| theme | string | no | Default "system". |
| accent_color | string | no | Hex color, e.g. "#36b27e". |
| sections | array | no | Sections of services, in order. |
| show_uptime | boolean | no | Show the 90-day uptime bar of each service. Default true. |
| show_response_times | boolean | no | Show the response time chart of each monitor. Default false. Never shown for a healthcheck, which has none. |
Change a status page's name, description, website, look or subscription button. Only the fields passed change. The page is public: confirm the change with the user first.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Status page UUID (format "sp_..."). |
| name | string | no | Name shown on the page. |
| description | string | no | Short text under the page status. Empty string to remove it. |
| language | string | no | Two-letter code of the language the description is written in. Defaults to the page's default language; the other translations are kept. |
| website | string | no | Company website, linked from the page header. Empty string to remove it. |
| theme | string | no | — |
| accent_color | string | no | Hex color, e.g. "#36b27e". |
| font | string | no | — |
| calendar | boolean | no | Show the incident calendar. |
| auto_refresh | boolean | no | Reload the page every minute, for a wall screen. |
| hide_from_search_engines | boolean | no | — |
| subscriptions | boolean | no | Let visitors subscribe to updates. |
Show monitors, healthchecks, components or servers on a status page, in the section you name (created at the end if the page has none by that name) or the first one. Services already on the page stay where they are. A healthcheck shows its uptime bar (show_uptime) but never response times.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Status page UUID (format "sp_..."). |
| services | array | yes | Monitors (mon_...) and components (comp_...): UUIDs from list_monitors or get_status_page. Healthchecks (hc_...): from list_healthchecks. Servers (agt_...): from get_status_page, or the end of the ser |
| section | string | no | Section to add them to, by title. Default: the first section. |
| show_uptime | boolean | no | Show the 90-day uptime bar of each service. Default true. |
| show_response_times | boolean | no | Show the response time chart of each monitor. Default false. Never shown for a healthcheck, which has none. |
Take monitors, healthchecks, components or servers off a status page, wherever they appear, groups included. Their settings on the page (display name, description) are lost.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Status page UUID (format "sp_..."). |
| services | array | yes | Monitors (mon_...) and components (comp_...): UUIDs from list_monitors or get_status_page. Healthchecks (hc_...): from list_healthchecks. Servers (agt_...): from get_status_page, or the end of the ser |
Incidents published on status pages, newest first, each with its current stage and latest update. For downtime detected on monitors, use list_outages.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status_page_uuid | string | no | Only incidents published on this status page. |
| status | string | no | Default "all". |
| page | integer | no | Zero-indexed page, 20 per page, newest first. |
One status page incident with every update (newest first, with their UUIDs), its status pages and affected components.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Incident UUID (format "inci_..."). |
Publish an incident on status pages, with its first update. Public, and emailed to subscribers unless notify_subscribers is false: confirm the wording with the user first. To record an incident internally and page on-call instead, use create_outage.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| title | string | yes | Public headline, e.g. "Elevated API error rates". |
| message | string | yes | Public text of the update, shown on the status page and sent to subscribers. Basic HTML allowed. |
| status_pages | array | yes | UUIDs of the status pages to publish on (list_status_pages). |
| type | string | no | "incident" for degraded service, "outage" for services down. Default "incident". |
| status | string | no | Stage of the first update. Default "investigating". |
| affected_components | array | no | Services shown as affected: their UUIDs from get_status_page (mon_..., comp_... or agt_... for servers). |
| notify_subscribers | boolean | no | Email/SMS/Slack/Teams the status page subscribers. Default true. |
| language | string | no | Two-letter code of the language the text is written in, e.g. "fr". Defaults to the status page's default language. |
Post an update on a status page incident (investigating, identified, update, monitoring, resolved). Public, and sent to subscribers unless notify_subscribers is false.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Incident UUID (format "inci_..."). |
| message | string | yes | Public text of the update, shown on the status page and sent to subscribers. Basic HTML allowed. |
| status | string | yes | Stage this update moves the incident to. "update" keeps the current stage. Any stage but "resolved" reopens a resolved incident. |
| notify_subscribers | boolean | no | Email/SMS/Slack/Teams the status page subscribers. Default true. |
| language | string | no | Two-letter code of the language the text is written in. Defaults to the language of the incident title. |
Close a status page incident with a final "resolved" update. Same as add_status_page_incident_update with status "resolved"; refuses an incident that is already resolved.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Incident UUID (format "inci_..."). |
| message | string | yes | Public closing note, e.g. "A fix has been deployed and error rates are back to normal." |
| notify_subscribers | boolean | no | Email/SMS/Slack/Teams the status page subscribers. Default true. |
| language | string | no | Two-letter code of the language the text is written in. Defaults to the language of the incident title. |
Change a status page incident's title, type, status pages or affected services. The pages show the change right away; subscribers are not notified. To tell them something, post an update.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Incident UUID (format "inci_..."). |
| title | string | no | New public headline. All its translations together must fit in 255 characters. |
| language | string | no | Two-letter code of the language the new title is written in. Defaults to the language of the current title; its other translations are kept. |
| type | string | no | "incident" for degraded service, "outage" for services down. |
| add_status_pages | array | no | Status pages to also publish the incident on (list_status_pages). |
| remove_status_pages | array | no | Status pages to take the incident off. |
| add_components | array | no | Services to mark as affected: their UUIDs from get_status_page (mon_..., comp_... or agt_... for servers). |
| remove_components | array | no | Services no longer affected. |
Correct the text or stage of an update already posted, e.g. a typo. The page shows the correction; subscribers are not notified again and its date is kept.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Incident UUID (format "inci_..."). |
| update_uuid | string | yes | UUID of the update to edit, from get_status_page_incident. |
| message | string | no | Corrected public text. Replaces the text in its language and keeps the translations. |
| status | string | no | Corrected stage. The latest update's stage is the incident's status. |
| language | string | no | Two-letter code of the language the corrected text is written in. Defaults to the language of the update. |
Maintenance windows, 20 per page, with their monitors, status pages, updates and status (upcoming, inprogress, completed).
| Parameter | Type | Required | Notes |
|---|---|---|---|
| timeline | string | no | Omit for all windows, newest first. |
| page | integer | no | Zero-indexed page, 20 per page. |
One maintenance window with its updates and the state of its subscriber notification.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Maintenance window UUID (format "mw_..."). |
Schedule a maintenance window: checks and alerts stop for its monitors during the window, and the status pages you pass announce it. Public once it has status pages: confirm with the user first.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | yes | Internal name, shown in the dashboard only. |
| title | string | no | Public title on the status pages. Defaults to name. |
| message | string | no | Public description of the work, shown on the status pages and sent to subscribers. |
| start_date | string | yes | Start, ISO 8601 with a timezone, e.g. "2026-10-04T02:00:00Z" or "2026-10-04T04:00:00+02:00". |
| end_date | string | yes | End, after start_date, ISO 8601 with a timezone, e.g. "2026-10-04T02:00:00Z" or "2026-10-04T04:00:00+02:00". |
| monitors | array | yes | Monitors (mon_...), components (comp_...) or servers (agt_...) under maintenance: their checks and alerts stop during the window. |
| status_pages | array | no | UUIDs of the status pages that announce the window. |
| notify | string | no | Subscriber notification: now, "scheduled" before the start, or "none" (default). |
| notify_minutes_before | integer | no | With notify "scheduled": minutes before the start. Default 60. |
| timezone | string | no | IANA timezone the window is scheduled in, e.g. "Europe/Paris". start_date and end_date without an offset are read in it. Subscriber messages are dated in it when the status page has no timezone. Defau |
| language | string | no | Two-letter code of the language the text is written in, e.g. "fr". Defaults to the status page's default language. |
Reschedule a maintenance window, rename it, change its monitors or status pages, or post a public update on it. The pages show the change; subscribers are not notified.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Maintenance window UUID (format "mw_..."). |
| name | string | no | New internal name. |
| title | string | no | New public title. Its translations in other languages are kept. |
| message | string | no | Public update posted on the window now, e.g. "The work is extended by 30 minutes." Earlier updates stay. |
| start_date | string | no | New start, ISO 8601 with a timezone, e.g. "2026-10-04T02:00:00Z" or "2026-10-04T04:00:00+02:00". |
| end_date | string | no | New end, ISO 8601 with a timezone, e.g. "2026-10-04T02:00:00Z" or "2026-10-04T04:00:00+02:00". |
| add_monitors | array | no | Monitors (mon_...), components (comp_...) or servers (agt_...) to add to the window. |
| remove_monitors | array | no | Monitors, components or servers to take out of the window. At least one must remain. |
| add_status_pages | array | no | Status pages that should also announce the window. |
| remove_status_pages | array | no | Status pages that should stop announcing it. |
| language | string | no | Two-letter code of the language the title or message is written in. Defaults to the language of the current title. |
End a maintenance window in progress now: checks and alerts resume on its monitors and the status pages show it as completed.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Maintenance window UUID (format "mw_..."). |
Cancel a maintenance window that has not started: it is deleted and leaves the status pages. Subscribers already told about it are not told it is cancelled. To end one in progress, use complete_maintenance_window.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Maintenance window UUID (format "mw_..."). |
Search the project's logs, newest first. Logs search language (not SQL): free words are ANDed (whole words), "exact phrase", -word to exclude, service:api, host:web-1, env:prod, source:src_…, level:error or level:>=warn, attr.<key>:value, trace:<id>, pattern:<hash>, word* for a prefix. OR is not…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | no | Search, e.g. level:error service:api timeout. Empty = every line. |
| from | string | no | Start. Default 1h ago. ISO 8601, epoch ms, or relative (15m, 1h, 24h, 7d). Window at most 7 days, within the last 30 days. |
| to | string | no | End. Default now. |
| limit | integer | no | Lines to return. Default 50, max 200. |
| cursor | string | no | next_cursor of a previous call, for older lines. |
Logs around one outage (incident) of the project: from 15 min before it started to 5 min after it ended. Returns warnings and errors grouped by message pattern, the latest matching lines, and a per-level histogram. Works for monitor, manual, server, log-rule and healthcheck (hco_) outages. Logs…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID ("outage_…" or "hco_…"). |
| query | string | no | Filter. Default level:>=warn; pass "" for every line. |
Groups the project's errors (or warnings) of a time window by message pattern (numbers, ids and IPs normalized), most frequent first: count, share, trend (>1 = rising in the last quarter of the window), level, services, hosts, first/last seen, one sample. Computed from the stored lines, no AI.…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | Start. Default 1h ago. ISO 8601, epoch ms, or relative (15m, 1h, 24h, 7d). Window at most 7 days, within the last 30 days. |
| to | string | no | End. Default now. |
| min_level | string | no | Lowest level counted. Default error. |
| query | string | no | Extra filter, e.g. service:api. Logs search language (not SQL): free words are ANDed (whole words), "exact phrase", -word to exclude, service:api, host:web-1, env:prod, source:src_…, level:error or |
| limit | integer | no | Patterns to return. Default 20, max 50. |
Log dashboards of the project: name, tags, widget count, template, last update. With uuid, one dashboard in detail: its time range, variables, sections and every widget with its chart as HPL (run one with run_log_chart; dashboard variables such as $service must be passed in variables). With…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | no | A dashboard uuid (ldash_…) to read in detail. |
| templates | boolean | no | Also list the templates with their compatibility score. Default false. |
Aggregates the project's logs into a chart and returns a compact summary: per series min/max/avg/last and up to max_points points, a table (up to 50 rows) or a single value. HPL = `<search> | <aggregations> [by <fields>] [every <interval>] [compare <1h|1d|1w|4w>] [| eval <alias> = <formula>] [|…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| hpl | string | no | The chart as HPL, e.g. level:>=error | count() by service every 15m compare 1d. |
| spec | object | no | The chart as a ChartSpec v1 object ({v: 1, filter, aggregations, formulas, group_by, interval, compare, having, sort, limit, output}). |
| from | string | no | Start. Default 1h ago. ISO 8601, epoch ms, or relative (15m, 1h, 24h, 7d, 90d). Raw lines answer up to 7 days; counts by service/level and derived metrics up to 400 days. |
| to | string | no | End. Default now. |
| variables | object | no | Dashboard variables the chart reads, e.g. {"service": ["api", "web"]}. An unset variable drops its term. |
| max_series | integer | no | Series to return. Default 10. |
| max_points | integer | no | Points per series. Default 60 (thinned evenly, last kept). |
Creates a log dashboard from a ready-made template (overview, errors-patterns, http-access, app-otel, containers, host-syslog, databases, jobs, ingestion-cost, incident-war-room, vercel). The template's fields (HTTP status, duration, route…) are detected in the project's logs; pass bindings to…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| template_id | string | yes | Template id: overview, errors-patterns, http-access, app-otel, containers, host-syslog, databases, jobs, ingestion-cost, incident-war-room, vercel. |
| bindings | object | no | Template field → log field, e.g. {"route": "attr.http.route"}. |
| name | string | no | Dashboard name. Default: the template name. |
| outage_uuid | string | no | incident-war-room only: the outage (incident) to open the war room on. |
| dry_run | boolean | no | Instantiate without saving. Default false. |
Region-by-region evidence for one outage ("outage_…" or an incident key like "INC-12"): a verdict — "global" (every checked region failed), "partial" (some regions stayed healthy, listed), "single_region" or "unknown" —, the dominant failure layer (dns, connect, tls, timeout, http = the endpoint…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage UUID ("outage_…") or incident key ("INC-12"). |
| before_minutes | integer | no | Minutes before the start to include. Default 10. |
| after_minutes | integer | no | Minutes after the start to include. Default 5. |
Other incidents of this project that started within ±window_minutes (default 10, max 60) of an outage (outage_uuid, or incident key) or of a moment (at), each with monitor (uuid, name), start, end or ongoing, status code, error, host, registrable domain, resolved IP and detecting region, and the…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| outage_uuid | string | no | Anchor outage ("outage_…" or "INC-12"). Either this or at. |
| at | string | no | Anchor moment instead of an outage: ISO 8601 or epoch ms. |
| window_minutes | integer | no | Minutes on each side of the anchor. Default 10, max 60. |
| hyperping_wide | boolean | no | Include the Hyperping-wide counts per region. Default true. |
What changed on a monitor before a moment (default: the outage start) and shortly after: audit-log changes to the monitor and to its escalation policies (regions, URL, timeout, pause / resume..., with who made them; needs the owner or admin role and the plan that includes the Audit Log, like the…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| outage_uuid | string | no | Outage ("outage_…" or "INC-12"); the moment defaults to its start. |
| monitor_uuid | string | no | Monitor ("mon_…") when there is no outage. |
| at | string | no | The moment: ISO 8601 or epoch ms. Default: the outage start, else now. |
| before_minutes | integer | no | Minutes before the moment. Default 360. |
| after_minutes | integer | no | Minutes after the moment. Default 30. |
Run the monitor's check right now from each of its regions (20 at most) and return per region: ok, status, total ms, error, failure layer and phase timings in integer ms (dns, connect, ttfb, download), once every region answered or after about 25 s (regions still waiting are listed in pending),…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Monitor UUID ("mon_…"). |
Cron/heartbeat healthchecks of the project (jobs that ping Hyperping; monitors are list_monitors, servers list_servers): per healthcheck its hc_ uuid, name, schedule (cron + timezone, or period), grace period, state (down, up, or new = never pinged), paused: true when paused (no alert), last ping,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status | string | no | Only healthchecks in this state (a paused one keeps its state, flagged paused: true). |
| name | string | no | Case-insensitive substring of the healthcheck name. |
One healthcheck in detail: schedule, grace, state and timing, escalation policy, uptime and downtime over the last 30 days, its last 20 pings (pings are kept 15 days; "start" = a /start ping without its completion, "fail" = a run the job reported failed) and its last 10 incidents (hco_ uuids,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Healthcheck uuid "hc_..." from list_healthchecks (the "tok_..." form shown on outages is accepted too), or its exact name. |
Servers of the project (machines running the Hyperping agent, agt_ uuids; not monitors or healthchecks): per server its name, hostname, status (online, stale = heartbeat late, offline, uninstalled), last_seen_at, OS, agent version, group, tags, current memory_pct and disk_pct of the root…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| status | string | no | Only servers in this status. |
| group | string | no | Exact group name (case-insensitive). |
| tag | string | no | Tag filter "key:value", e.g. "env:production". |
| name | string | no | Case-insensitive substring of the display name or hostname. |
One server in detail: status, last seen, OS, agent version (and whether an update exists), hardware, group, tags, escalation policy; current memory and root disk usage; last 24 h of CPU %, memory %, disk % (all filesystems) and 1-minute load as last/avg/max of 5-minute averages; filesystems…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Server uuid "agt_..." from list_servers, or its exact display name or hostname. |
Who changed what in the project (the Audit Log page; owners and admins, Business plan): newest first, each event with its time, actor (user name and email, or the API key / MCP key that acted, or system), action (e.g. UpdateMonitor, DeleteStatuspage, InviteUser, MuteOutage), resource (type, uuid,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| resource_uuid | string | no | Only events about this resource, e.g. a monitor "mon_...", a status page "sp_...", an escalation policy, a healthcheck "hc_...". |
| actor | string | no | Only events by this user (email) or by this API / MCP key (its name). |
| action | string | no | Only this action, e.g. "UpdateMonitor", "DeleteMonitor", "UpdateEscalationPolicy", "InviteUser", "ApiKeyAuthFailure". |
| from | string | no | Start: ISO 8601 or an age such as 7d / 24h. Default 7 days before "to". |
| to | string | no | End: ISO 8601 or an age. Default now. |
| limit | integer | no | Events to return, newest first. Default 30, max 100. |
Uptime of every monitor of the project over a period, worst first, in one call: per monitor uptime_pct, downtime (seconds + text), outage count, longest outage and MTTR (mean time to resolve, resolved outages only), plus project totals (average uptime, total downtime and outages, MTTR, monitors…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| from | string | no | Start: ISO 8601 or an age such as 30d / 12h. Default 30 days before "to". |
| to | string | no | End: ISO 8601 or an age. Default now. |
| name | string | no | Case-insensitive substring of the monitor name or URL. |
| protocol | string | no | Only monitors of this type: http, icmp, port, dns, browser. |
| group | string | no | Case-insensitive substring of the monitor group name. |
| include_paused | boolean | no | Include paused monitors (their uptime only counts outages recorded before the pause). Default false. |
| limit | integer | no | Monitors listed, worst first. Default 50, max 200. Totals always cover every matching monitor. |
Who was notified for one outage, and how: every alert delivery attempt (time, channel email/sms/phonecall/slack/teams/webhook/pagerduty/opsgenie/…, recipient: user name and email, phone as its last 4 digits, or the integration name; down or up; escalation step) with its status: sent, failed (+…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | Outage uuid "outage_..." (list_outages, get_monitor_outages). |
| limit | integer | no | Deliveries to return, oldest first. Default 100, max 300. |
Recent runs of one browser check (Playwright), newest first: when, region, pass or fail, the failing test and the first line of its error, and for checks that retry failures whether the retry passed. Failed runs only by default, over the last 7 days. Then read one with get_browser_run for the…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | The browser check's monitor uuid ("mon_…"). |
| status | string | no | failed (default) or all runs. |
| from | string | no | Start, ISO 8601 or epoch. Default: 7 days ago. |
| to | string | no | End, ISO 8601 or epoch. Default: now. |
| limit | integer | no | Runs to return, default 20, max 50. |
One run of a browser check (Playwright) in depth, to explain a failure: each test with its error and failed step, the script's console output, and a digest of the Playwright trace (the actions up to the failure with their call log and script line, failed network requests, browser console errors,…
| Parameter | Type | Required | Notes |
|---|---|---|---|
| uuid | string | yes | The browser check's monitor uuid ("mon_…"). |
| run_uuid | string | no | The run ("brlog_…") from list_browser_runs. Default: the latest failed run. |
| screenshot | boolean | no | Attach the screen at the failure as an image (default true). |
- Every tool, no call limit
- No card, and mcprush charges nothing for it
- Source published under MIT
- Runs on your machine — nothing of it reaches our gateway
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install Pingpulse or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
| Term | Level | What it prices | Points |
|---|---|---|---|
| capability-exposure | minimal | capability blast radius (minimal) — client exposure if the model is manipulated | −0 |
| verification-discount | repo | publisher verification (public source) — no provenance, but the source is public and inspectable | −1 |
| coverage-honesty | source | inspection depth (source) — how much of the target the scan could see | −0 |
What the scan could actually read
A grade is only as meaningful as its coverage, so the scanner publishes its own depth before it publishes its result.
No tools were enumerated, so prompt-injection, capability and toxic-flow analysis had no tool surface to inspect. To grade a package’s real runtime tools, scan the running server: --command "npx -y <package>".
Capability — what it could do if the model were manipulated
Tags derived from each tool’s schema and the implementation, not from what the tool calls itself. minimal is the level these add up to.
| Tool | Capability tags | Why the tag was assigned |
|---|---|---|
| No per-tool rows for this release — see the note below. | ||
Toxic-flow graph
The lethal trifecta, checked as a graph rather than as a checklist: untrusted input, a sensitive source and an external sink have to meet before there is a path worth worrying about.
The public result for this release does not print the flow graph, so there is nothing to show here. That is not the same as "no paths were found": what the scan did read is above, under coverage.
Supply chain and provenance
This is the first scan of this surface here, so there is nothing yet to compare it against.
Every result on this tab comes from one deterministic pass over the published package — offline, rule by rule, and auditable line by line above. Same methodology version, same bytes, same score.
Release history
Always latest — the install command names no version, so it installs the newest release when it runs; the current release on file is 0.1.0. Pin a release below and the command asks for exactly that one.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish Pingpulse can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.