بنقرة واحدة
errors
Handle UptimeRobot MCP errors — codes, meanings, retry policy, and user-facing recovery suggestions.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Handle UptimeRobot MCP errors — codes, meanings, retry policy, and user-facing recovery suggestions.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Modify an existing UptimeRobot monitor — rename, change URL/interval, swap alert contacts, retag, tweak HTTP/keyword/API/heartbeat settings, and toggle SSL or domain reminders.
Choose between monitor groups and tags for organizing monitors — group membership is opaque and write-only over MCP, so tags are usually the better default.
Create and publish a public status page from monitors, groups, or tags, and manage announcements (incident, maintenance, info notices) on it.
Pause (or resume) many UptimeRobot monitors at once — by tag, search term, or state — around a deployment or maintenance window.
End-to-end incident workflow — find what's down, diagnose it, pause flapping monitors, and verify recovery.
Schedule one-off or recurring maintenance windows that suppress alerts for planned downtime, as an alternative to bulk-pause.
| name | errors |
| description | Handle UptimeRobot MCP errors — codes, meanings, retry policy, and user-facing recovery suggestions. |
| tags | ["errors","troubleshooting","rate-limit","uptimerobot"] |
The UptimeRobot MCP server returns structured JSON-RPC errors with numeric codes. Map them to user-facing messages rather than echoing raw codes.
| Code | Name | Retryable | Meaning |
|---|---|---|---|
-28001 | monitor_limit_exceeded | No | Account has hit its plan's monitor cap. Creation or resuming a paused monitor exceeded it. |
-28002 | subscription_limit_exceeded | No | Request violates plan limits — most commonly interval too aggressive, or a monitor type not available on the plan. |
-29001 | invalid_parameters | No | Payload failed validation. Includes blacklisted URLs, forbidden fields for a monitor type, wrong enum values, string too long, etc. The error message usually lists the offending fields. |
-30001 | monitor_not_found | No | Monitor ID doesn't exist or isn't owned by this account. |
-30003 | resource_not_found | No | A referenced resource (alert contact, maintenance window, tag) doesn't exist. |
-31001 | user_not_found | No | Authentication failed. The OAuth grant is missing, expired, or revoked. |
-31002 | access_denied | No | The authorized account doesn't have permission for the requested action (e.g. a write tool with read-only access). |
-32603 | internal | Maybe | Unexpected server error. One retry with backoff is fine; escalate on repeat. |
HTTP 429 | rate limit | Yes | Back off with exponential delay + jitter, then retry. |
-28001 monitor limitDo not retry. Tell the user:
You've reached your plan's monitor limit. Delete unused monitors (
list-monitors+update-monitor-status: PAUSEDdoesn't help — paused monitors still count) or upgrade your plan.
-28002 subscription limitDo not retry. Ask whether the user wants to:
interval — plan minima vary).Typical trigger: interval: 30 on Free, or creating types gated by the plan.
-29001 invalid parametersDo not retry. Re-read the error message — it usually names the offending fields. Common causes:
type codes instead of string enums.gracePeriod on HTTP, url on HEARTBEAT, port on KEYWORD).url without a scheme on HTTP / KEYWORD / API.url with a scheme on PING / PORT / UDP / DNS.keywordValue exceeding 500 chars, friendlyName exceeding 200, etc.Fix the payload and resend.
-30001 / -30003 not foundDo not retry. Call list-monitors (or list-integrations) to discover valid IDs and retry with a correct one. If the user typed the ID, it may belong to a different UptimeRobot account.
-31001 unauthenticatedDo not retry the call. Immediately invoke the uptimerobot:setup skill — it re-runs the OAuth flow (clearing the cached grant and reopening the browser) and validates the connection. Do not ask the user to manually check tokens; the setup skill handles that flow.
-31002 access deniedDo not retry the call. The authorized account lacks write permission for this action. Invoke the uptimerobot:setup skill to re-authenticate with an account that has write access.
Do retry, but with backoff:
sleep(min(60s, 2^attempt + random_jitter))
Cap at ~5 attempts; if still throttled, surface the issue to the user. Bulk loops (e.g. pulling stats for hundreds of monitors) are the usual culprit — batch or serialize them.
-28001, -28002, -29001, -30001, -30003, -31002 — they are deterministic client errors.-31001 is also non-retryable, but instead of surfacing it, invoke uptimerobot:setup.manage-monitors — for discovering correct IDs after -30001.create-*-monitor — each lists type-specific forbidden fields that trigger -29001.