โŒ˜K
MCP Integration

MCP Integration

Updated April 15, 2026

The Model Context Protocol (MCP) server exposes Hyperping's monitoring data and controls to AI agents over HTTP. Works with any MCP-compatible client: Claude Desktop, Claude Code, Cursor, Windsurf, mcp-inspector, or custom clients built on the MCP SDK.

๐Ÿ“˜Machine-readable spec

For a dense, agent-friendly spec (tools, query patterns, response shapes), point your client at /mcp/llms.txt. Zero-setup context.

Endpoint

URL
https://api.hyperping.io/v1/mcp
Methods
POSTGETDEL
Transport
Streamable HTTP ยท JSON-RPC 2.0
Auth
Bearer token
Scope
One project per key
Tools
25 read ยท 5 write

Quick start

Step 01
Create an API key
Go to Project Settings โ†’ API Keys and create a read_only or read_write key. Keys are strictly scoped to one project.
Step 02
Add to your client
Paste the mcpServers block below into your Claude Desktop, Cursor, or Windsurf config.
Step 03
Restart and ask
Restart your client. Start asking questions: "What's down?", "SLA on the API monitor this month?"

Client configuration

Claude Desktop, Cursor, Windsurf, Claude Code. Add to the mcpServers block of your client config:

Streamable HTTP (recommended)JSON
{
  "mcpServers": {
    "hyperping": {
      "type": "http",
      "url": "https://api.hyperping.io/v1/mcp",
      "headers": {
        "Authorization": "Bearer sk_..."
      }
    }
  }
}

Older clients that only speak stdio can bridge via mcp-remote:

stdio bridge via mcp-remoteJSON
{
  "mcpServers": {
    "hyperping": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.hyperping.io/v1/mcp",
        "--header",
        "Authorization: Bearer sk_..."
      ]
    }
  }
}

Tool reference

Your AI composes the queries; Hyperping returns the facts. Writes are scoped to reversible operations, delete_monitor is intentionally not exposed.

Monitors 6 tools

list_monitors(status?, page?, limit?)read
Paginated list with optional filter: up, down, paused, ssl_expiring.
get_monitor(uuid)read
Single monitor with full config.
search_monitors_by_name(query)read
Case-insensitive substring match across names and URLs.
create_monitor(...)write
HTTP, ICMP, port, or DNS. Accepts regions, frequency (10s to 24h), expected status, keyword, headers, escalation policy.
update_monitor(uuid, ...)write
Partial update.
pause_monitor(uuid) / resume_monitor(uuid)write
Toggle without losing history.

Status & reporting 5 tools

get_status_summary()read
Counts plus list of down monitors with duration.
get_monitor_uptime(from?, to?, resolution?, monitor_uuids?)read
SLA %, aggregate plus per-day, hour, week, or month.
get_monitor_response_time(...)read
Latency trend.
get_monitor_mttr(...)read
Mean time to resolve, per monitor.
get_monitor_mtta(...)read
Mean time to acknowledge, per monitor.

Outages 4 tools

list_outages(page?, search?, status?, type?)read
Paginated.
get_outage(uuid)read
Flat record.
get_outage_timeline(uuid)read
Detection, cross-region verification, alerts dispatched, acknowledgement, resolution.
get_monitor_outages(monitor_uuid, page?, status?)read
Scoped to one monitor.

Observability 3 tools

get_monitor_anomalies(uuid)read
Anomaly detection (flapping, latency spikes).
get_monitor_http_logs(uuid, page?, limit?, level?)read
Recent probe logs.
list_recent_alerts(from?, to?, resolution?, monitor_uuids?)read
Notification history across all channels.

On-call context 5 tools

list_on_call_schedules()read
All current rotations.
get_on_call_schedule(uuid)read
Rotation detail with overrides.
list_escalation_policies()read
Full policy chain.
get_escalation_policy(uuid)read
Policy detail.
list_team_members()read
Name and email for user-ID lookups.

Integrations 2 tools

list_integrations()read
All configured channels: Slack, Telegram, Discord, PagerDuty, OpsGenie, Teams, webhook, email.
get_integration(uuid)read
Channel-specific config.

Security

Project scope
API keys are bound to exactly one project in the database (FK-constrained). req.projectuuid is resolved server-side from the key. Client headers cannot override.
Row-level isolation
Every controller SQL scopes by projectuuid = ?. Cross-project access returns 404, never leaks.
Read-only enforcement
Write tools check apiKeyPermissions === 'read_only' and refuse with a clear error. Enforced at the tool handler, not at the route.
Role gating
Session-auth endpoints (reporting, schedules, on-call, integrations) run hasAccountRole with the user's actual project role. viewer keys cannot invoke write-adjacent endpoints.
Revocation
Deactivating a key in the dashboard blocks the next MCP call immediately. No TTL to wait out.

Not available via MCP

โš Scoped out by design
  • delete_monitor. Pause instead, or delete via dashboard / REST API.
  • Billing, API key management, SSO, teammate invites, password reset.
  • Status-page incidents (/v3/incidents/*). Different resource. Contact us if you need them exposed.

Limits

Pagination
Up to 200 monitors or outages per page.
Rate limit
Shared with the REST API: 300 req / min / key.
Response size
Large windows (for example, 30-day alert history) can be capped by narrowing from / to.

Next steps