Manage Cronitor monitors and send telemetry pings — list, inspect, create, update, delete.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Creates a monitor in Cronitor (additive). Cronitor API: POST /monitors. Sends only the fields you provide.
Unique monitor id/key.
Monitor type: job | check | heartbeat | site.
Human-readable monitor name.
Free-form note stored on the monitor.
Tags to group/filter monitors.
Notification list names to alert.
For type=check: {url, method?, headers?, body?, ...}.
Cron expression (job) or interval string, e.g. '0 9 * * *' or 'every 5 minutes'.
Assertions, e.g. "response.code = 200".
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
Creates a monitor in Cronitor (additive). Cronitor API: POST /monitors. Sends only the fields you provide.
| Argument | Type | Description |
|---|---|---|
| key* | string | Unique monitor id/key. |
| name | string | Human-readable monitor name. |
| note | string | Free-form note stored on the monitor. |
| tags | array | Tags to group/filter monitors. |
| type* | string | Monitor type: job | check | heartbeat | site. |
| notify | array | Notification list names to alert. |
| request | object | For type=check: {url, method?, headers?, body?, ...}. |
| schedule | string | Cron expression (job) or interval string, e.g. '0 9 * * *' or 'every 5 minutes'. |
| assertions | array | Assertions, e.g. "response.code = 200". |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key",
"type"
],
"properties": {
"key": {
"type": "string",
"minLength": 1,
"description": "Unique monitor id/key."
},
"name": {
"type": "string",
"description": "Human-readable monitor name."
},
"note": {
"type": "string",
"description": "Free-form note stored on the monitor."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags to group/filter monitors."
},
"type": {
"enum": [
"job",
"check",
"heartbeat",
"site"
],
"type": "string",
"description": "Monitor type: job | check | heartbeat | site."
},
"notify": {
"type": "array",
"items": {
"type": "string"
},
"description": "Notification list names to alert."
},
"request": {
"type": "object",
"description": "For type=check: {url, method?, headers?, body?, ...}.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"schedule": {
"type": "string",
"description": "Cron expression (job) or interval string, e.g. '0 9 * * *' or 'every 5 minutes'."
},
"assertions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Assertions, e.g. \"response.code = 200\"."
}
}
}PERMANENTLY deletes a monitor from Cronitor. Destructive and irreversible. Cronitor API: DELETE /monitors/{key}.
| Argument | Type | Description |
|---|---|---|
| key* | string | Monitor key/id to delete. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"minLength": 1,
"description": "Monitor key/id to delete."
}
}
}Get full detail for one monitor (latest_event, latest_invocations, passing status) — the 'is X healthy right now?' tool. Cronitor API: GET /monitors/{key}.
| Argument | Type | Description |
|---|---|---|
| key* | string | Monitor key/id (unique identifier). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"minLength": 1,
"description": "Monitor key/id (unique identifier)."
}
}
}List monitors and their current passing/failing status. Cronitor API: GET /monitors (paginated via page + pageSize).
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number (1-based). Default 1. |
| pageSize | integer | Monitors per page. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Page number (1-based). Default 1.",
"exclusiveMinimum": 0
},
"pageSize": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Monitors per page.",
"exclusiveMinimum": 0
}
}
}Reports a telemetry event (run/complete/fail/ok/pause) for a monitor — records job/heartbeat activity and can clear or trigger alerts. Cronitor telemetry: GET {telemetryUrl}/p/{apiKey}/{monitorKey}?state=...
| Argument | Type | Description |
|---|---|---|
| key* | string | Monitor key/id to ping. |
| host | string | Optional host identifier. |
| state* | string | Telemetry state: run | complete | fail | ok | pause. |
| metric | string | Optional metric, e.g. "count:1" or "duration:30". |
| series | string | Optional series id to correlate run/complete pings. |
| message | string | Optional message attached to the event. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key",
"state"
],
"properties": {
"key": {
"type": "string",
"minLength": 1,
"description": "Monitor key/id to ping."
},
"host": {
"type": "string",
"description": "Optional host identifier."
},
"state": {
"enum": [
"run",
"complete",
"fail",
"ok",
"pause"
],
"type": "string",
"description": "Telemetry state: run | complete | fail | ok | pause."
},
"metric": {
"type": "string",
"description": "Optional metric, e.g. \"count:1\" or \"duration:30\"."
},
"series": {
"type": "string",
"description": "Optional series id to correlate run/complete pings."
},
"message": {
"type": "string",
"description": "Optional message attached to the event."
}
}
}Creates or updates a monitor by key (e.g. change schedule, pause via paused:true). Cronitor API: PUT /monitors with a single monitor object. Sends only the fields you provide.
| Argument | Type | Description |
|---|---|---|
| key* | string | Monitor key/id to create or update. |
| name | string | Human-readable monitor name. |
| note | string | Free-form note stored on the monitor. |
| tags | array | Tags to group/filter monitors. |
| type | string | Monitor type: job | check | heartbeat | site. |
| notify | array | Notification list names to alert. |
| paused | boolean | Set true to pause the monitor, false to resume. |
| request | object | For type=check: {url, method?, headers?, body?, ...}. |
| schedule | string | Cron expression (job) or interval string, e.g. '0 9 * * *' or 'every 5 minutes'. |
| assertions | array | Assertions, e.g. "response.code = 200". |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"key"
],
"properties": {
"key": {
"type": "string",
"minLength": 1,
"description": "Monitor key/id to create or update."
},
"name": {
"type": "string",
"description": "Human-readable monitor name."
},
"note": {
"type": "string",
"description": "Free-form note stored on the monitor."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags to group/filter monitors."
},
"type": {
"enum": [
"job",
"check",
"heartbeat",
"site"
],
"type": "string",
"description": "Monitor type: job | check | heartbeat | site."
},
"notify": {
"type": "array",
"items": {
"type": "string"
},
"description": "Notification list names to alert."
},
"paused": {
"type": "boolean",
"description": "Set true to pause the monitor, false to resume."
},
"request": {
"type": "object",
"description": "For type=check: {url, method?, headers?, body?, ...}.",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"schedule": {
"type": "string",
"description": "Cron expression (job) or interval string, e.g. '0 9 * * *' or 'every 5 minutes'."
},
"assertions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Assertions, e.g. \"response.code = 200\"."
}
}
}