---
title: "ilert MCP server for AI agents - actionlake"
description: "Give Claude 263 ilert actions through one MCP server: alerts, services, telemetry sources. Your agent never holds the credential. 100,000 calls a month free."
canonical: https://actionlake.com/connectors/ilert
updated: 2026-10-23
---

Connectors · Service desk & support

# ilert MCP server for AI agents.

actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to ilert and the rest of your systems. It gives your agent 263 ilert actions (127 reads, 98 writes and 38 that wait for a confirmation) and holds the ilert credential itself, so the agent never does. It paces ilert's limits and records every call.

[Connect ilert free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.

`claude mcp add --transport http actionlake https://connect.actionlake.com/mcp`

the first call

```
do {
  action: "ilert.account.get",
  intent: "check which ilert account is connected"
}
# Get the account of the currently authenticated caller · read · 1 upstream call
```

- 263 actions in one signed file
- 127 read look, never change
- 98 write create and update
- 38 wait for a yes destructive, confirmed first

Set up

## Connect ilert in three steps.

1. 01
   ### Add actionlake to Claude.
   Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
   `https://connect.actionlake.com/mcp`
2. 02
   ### Connect ilert.
   Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead. actionlake stores what you paste write-only, sealed under your tenant's key.
   - `access_token` ilert API key: ilert web app > your profile > API Keys > Create API key
   ```
   account { op: "connections.requirements", service: "ilert" }
   # free: exactly what to paste, and what is found for you
   ```
3. 03
   ### Make the first call. Check before a write.
   Ask in plain words; Claude picks the action. Before anything changes, `check` validates the call and prices it, for free.
   ```
   do    { action: "ilert.account.get" }
   # get the account of the currently authenticated caller · read · 1 upstream call
   check { action: "ilert.heartbeat_monitors.create", input: { … } }
   # free: inputs, permissions, cost and confirmations, nothing sent
   ```

ilert at a glance

**Sign-in**

Bearer token. No consent screen: your agent can connect it for you, but the key then passes through your chat. To keep it out of the model's context, paste it in the console instead.

**You provide**

`access_token`

**Limits we pace to**

300 calls a minute, per connection

**API covered**

Ilert REST API (OpenAPI 3.0.1)`api.ilert.com/api`

**Built from**

ilert's documentation, read 23 October 2026[api.ilert.com](https://api.ilert.com/api-docs/openapi.json) [api.ilert.com](https://api.ilert.com/api-docs/)

**Service file**

Version 1.0.0, signed (Ed25519)

**Cached reads**

120 of 127 reads, for up to 5 minutes; a write clears what it affects

**Shared entities**

7, so ask can line ilert up with your other systems

**Data**

Processed and stored in Sydney, Australia. No US region yet

Capabilities

## What an AI agent can do in ilert.

263 actions in 72 areas. Every one carries its effect, so a key can allow the reads and hold the rest.

- **127** read look, never change
- **98** write create and update
- **38** destructive wait for a confirmation

1. ### Alerts
   14
   3 read · 11 write · 0 destructive
   List alerts (optionally matching certain criteria that are specified by query parameters) · Get the alert with the specified id · Create alerts with customised parameters without requiring events from monitoring tools that use our Events API · Get the number of alerts matching the given filters
2. ### Services
   8
   4 read · 3 write · 1 destructive
   Get services · Get a specific service · Create a new service · Update the specific service
3. ### Telemetry sources
   8
   4 read · 2 write · 2 destructive
   List the telemetry sources of the account · Get the telemetry source with the specified id · Get the telemetry source with the specified name · Get ingestion statistics of a telemetry source
4. ### Users
   8
   4 read · 3 write · 1 destructive
   List existing users · Get the currently authenticated user · Get the specified user · Create a new user. Requires ADMIN privileges
5. ### Escalation policies
   7
   4 read · 2 write · 1 destructive
   List escalation policies · Get escalation policy with the specified id · Create a new escalation policy · Update an existing escalation policy
6. ### Schedules
   7
   4 read · 2 write · 1 destructive
   List on-call schedules · Get the on-call schedule with the specified id · Create a new on-call schedule · Update an on-call schedule
7. ### Alert actions
   6
   3 read · 2 write · 1 destructive
   Get alert actions · Get a specific alert action · Get the alert action with the specified name · Create a new alert action
8. ### Alert sources
   6
   3 read · 2 write · 1 destructive
   List alert sources · Get the alert source with specified id or alternatively integration key · Get the alert source with the specified name · Create a new alert source

**64 more areas · 199 actions**

- Call flows **6**
- Connectors **6**
- Deployment pipelines **6**
- Event flows **6**
- Heartbeat monitors **6**
- Incident templates **6**
- Metric data sources **6**
- Metrics **6**
- Status pages **6**
- Support hours **6**
- Teams **6**
- Chat messages **5**
- Chat thread replies **5**
- Event flow integrations **5**
- Incidents **5**
- Incidents postmortems **5**
- Maintenance windows **5**
- Service outages overrides **5**
- Services dependencies **5**
- Status pages groups **5**
- Status updates **5**
- Users contacts emails **5**
- Users contacts phone numbers **5**
- Users notification prefs alerts **5**
- Users notification prefs duties **5**
- Users notification prefs subscriptions **5**
- Users notification prefs updates **5**
- Status pages private subscribers **4**
- Call flow numbers **3**
- Call flow sessions **3**
- Alerts actions **2**
- Alerts responders **2**
- Chat messages reactions **2**
- Chat thread replies reactions **2**
- Incidents private subscribers **2**
- Schedules overrides **2**
- Services private subscribers **2**
- Status updates private subscribers **2**
- Teams members **2**
- Account **1**
- Alerts labels **1**
- Alerts labels values **1**
- Alerts log entries **1**
- Alerts merged children **1**
- Alerts notifications **1**
- Alerts suggested responders **1**
- Deployment events **1**
- Escalation policies levels **1**
- Events **1**
- Incidents postmortem links **1**
- Incidents status updates **1**
- Integrations **1**
- Numbers **1**
- On calls **1**
- Reports alerts **1**
- Reports alerts summary **1**
- Reports API keys usage **1**
- Schedules shifts **1**
- Series **1**
- Service outages **1**
- Services labels **1**
- Services labels values **1**
- Telemetry sources labels **1**
- Telemetry sources labels values **1**

Top actions

## The ilert API, shaped for agents.

The ids your agent types, what each does, and the one name it shares with other systems. 81 of ilert's 84 action names are shared with at least one other connector, so an agent learns them once.

| Action | What it does | Effect | Same name in |
| --- | --- | --- | --- |
| `ilert.alerts.list` List alerts (optionally matching certain criteria that are specified by query parameters) | **Sample URLs** * List only alerts that are either in state `PENDING` or `ACCEPTED`: https://api.ilert.com/api/alerts?states=PENDING&states=ACCEPTED * List… | read | `monitoring.alert.list` 51 connectors |
| `ilert.heartbeat_monitors.list` List heartbeat monitors | This resource uses a 'cursor' to paginate. | read | `monitoring.monitor.list` 32 connectors |
| `ilert.users.list` List existing users | List existing users. | read | `identity.user.list` 474 connectors |
| `ilert.incidents.list` Get incidents | Get incidents. | read | `monitoring.incident.list` 19 connectors |
| `ilert.teams.list` Get teams | Get teams. | read | `identity.group.list` 262 connectors |
| `ilert.services.list` Get services | Get services. | read | `monitoring.service.list` 12 connectors |
| `ilert.users.get_current` Get the currently authenticated user | Get the currently authenticated user. | read | `identity.current_user.get` 307 connectors |
| `ilert.alerts.get` Get the alert with the specified id | Get the alert with the specified id. | read | `monitoring.alert.get` 33 connectors |
| `ilert.heartbeat_monitors.create` Create a new heartbeat monitor | The 'integrationKey' field cannot be set as it is generated automatically. | write | `monitoring.monitor.create` 27 connectors |
| `ilert.users.create` Create a new user. Requires ADMIN privileges | **Sample request** ```json Request URL: https://api.ilert.com/api/users { "firstName": "John", "lastName": "Doe", "email": "john@acme.com", "position":… | write | `identity.user.create` 262 connectors |
| `ilert.alerts.create` Create alerts with customised parameters without requiring events from monitoring tools that use our Events API | ATTENTION: do not use this endpoint to create monitoring related (or high volumes of) alerts, use '/api/events' instead, you have been warned! Escalation of… | write | `monitoring.alert.create` 14 connectors |
| `ilert.heartbeat_monitors.delete` Delete the specified heartbeat monitor | Delete the specified heartbeat monitor. | destructive | `monitoring.monitor.delete` 31 connectors |

Try it

## Prompts to paste into Claude.

Each one names the ilert actions it will call, so you know what it reads and what it changes before you send it.

1. Read read
   Which ilert incidents are open, and how long has each been open?
   calls `ilert.incidents.list`
2. Write write
   Create a new heartbeat monitor in ilert. Show me exactly what you will send before you save it.
   calls `ilert.heartbeat_monitors.create`

Governance for ilert

## Destructive actions wait for a yes.

38 ilert actions are destructive. The first 10:

- Delete the specified heartbeat monitor `ilert.heartbeat_monitors.delete`
- Delete the specified user `ilert.users.delete`
- Remove a specific team `ilert.teams.delete`
- Remove a specific service `ilert.services.delete`
- Delete the message with the specified id. Messages are deleted softly: the message remains in the list with `deleted` set to true and its content replaced by a placeholder. Only the author of a messag `ilert.chat_messages.delete`
- Delete a postmortem of an incident `ilert.incidents_postmortems.delete`
- Remove a specific member of a specific team `ilert.teams_members.remove`
- Delete a dependency of a service `ilert.services_dependencies.delete`
- Remove the reaction of the authenticated user from the message with the specified id `ilert.chat_messages_reactions.remove`
- Delete the thread reply with the specified id. Thread replies are deleted softly: the reply remains in the list with `deleted` set to true and its content replaced by a placeholder. Only the author of `ilert.chat_thread_replies.delete`

A destructive action runs only with `confirm: true`. Under the `human` policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.

do ilert.heartbeat_monitors.delete confirm_policy: **human**

Delete the specified heartbeat monitor?

**intent:** the user asked me to delete the specified heartbeat monitor

run suspended · waiting for a named person · key _ilert-agent_ cannot confirm itself

In the console, or from an emailed signed link.

a key for this connector

```
account {
  op: "keys.create", name: "ilert-agent",
  allowed_actions: ["ilert.*"], cap_calls: 2000,
  confirm_policy: "human_for_writes",
  approval_rules: [
    { match: "ilert.heartbeat_monitors.delete", approver: "lead@example.com" },
    { match: "ilert.users.delete", approver: "lead@example.com" },
    { match: "ilert.teams.delete", approver: "lead@example.com" }
  ]
}
```

Illustrative. Scoped to ilert only, capped at 2,000 upstream calls, every write confirmed, and the destructive ones approved by a named person.

Cost

## What ilert costs on actionlake.

Every ilert action is one upstream call, the only thing actionlake bills. Searching, `check`, `cost`, `account` and any call ilert refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

- 1 upstream call per action all 263 ilert actions
- 263 actions page each page of a long list is one call
- 120 reads can be cached a cache hit costs nothing
- 100,000 calls a month, free paid plans from US$49 a month for 250,000

[See pricing](https://actionlake.com/pricing)

Action index

## Every ilert action.

263 actions by area: the id your agent calls, what it does, and its effect.

**Alerts 14**

- `ilert.alerts.count` Get the number of alerts matching the given filters read
- `ilert.alerts.create` Create alerts with customised parameters without requiring events from monitoring tools that use our Events API write
- `ilert.alerts.get` Get the alert with the specified id read
- `ilert.alerts.list` List alerts (optionally matching certain criteria that are specified by query parameters) read
- `ilert.alerts.accept` Accept the Alert write
- `ilert.alerts.accept_bulk` Accept multiple alerts write
- and 8 more in this area

**Services 8**

- `ilert.services.create` Create a new service write
- `ilert.services.get` Get a specific service read
- `ilert.services.list` Get services read
- `ilert.services.update` Update the specific service write
- `ilert.services.delete` Remove a specific service destructive
- `ilert.services.get_by_name` Get the service with the specified name read
- and 2 more in this area

**Telemetry sources 8**

- `ilert.telemetry_sources.get` Get the telemetry source with the specified id read
- `ilert.telemetry_sources.get_by_name` Get the telemetry source with the specified name read
- `ilert.telemetry_sources.list` List the telemetry sources of the account read
- `ilert.telemetry_sources.stats` Get ingestion statistics of a telemetry source read
- `ilert.telemetry_sources.create` Create a new telemetry source write
- `ilert.telemetry_sources.delete` Delete the telemetry source with the specified id destructive
- and 2 more in this area

**Users 8**

- `ilert.users.create` Create a new user. Requires ADMIN privileges write
- `ilert.users.get` Get the specified user read
- `ilert.users.get_current` Get the currently authenticated user read
- `ilert.users.list` List existing users read
- `ilert.users.delete` Delete the specified user destructive
- `ilert.users.search_email` Find a user by email address read
- and 2 more in this area

**Escalation policies 7**

- `ilert.escalation_policies.create` Create a new escalation policy write
- `ilert.escalation_policies.get` Get escalation policy with the specified id read
- `ilert.escalation_policies.list` List escalation policies read
- `ilert.escalation_policies.update` Update an existing escalation policy write
- `ilert.escalation_policies.delete` Delete the specified escalation policy destructive
- `ilert.escalation_policies.get_by_name` Get the escalation policy with the specified name read
- and 1 more in this area

**Schedules 7**

- `ilert.schedules.create` Create a new on-call schedule write
- `ilert.schedules.get` Get the on-call schedule with the specified id read
- `ilert.schedules.list` List on-call schedules read
- `ilert.schedules.update` Update an on-call schedule write
- `ilert.schedules.delete` Delete the on-call schedule with the specified id destructive
- `ilert.schedules.get_by_name` Get the schedule with the specified name read
- and 1 more in this area

**Alert actions 6**

- `ilert.alert_actions.create` Create a new alert action write
- `ilert.alert_actions.get` Get a specific alert action read
- `ilert.alert_actions.get_by_name` Get the alert action with the specified name read
- `ilert.alert_actions.list` Get alert actions read
- `ilert.alert_actions.delete` Remove a specific alert action destructive
- `ilert.alert_actions.update` Update the specific alert action. (note: type cannot be changed) write

**Alert sources 6**

- `ilert.alert_sources.create` Create a new alert source write
- `ilert.alert_sources.get` Get the alert source with specified id or alternatively integration key read
- `ilert.alert_sources.get_by_name` Get the alert source with the specified name read
- `ilert.alert_sources.list` List alert sources read
- `ilert.alert_sources.delete` Delete the specified alert source destructive
- `ilert.alert_sources.update` Update an existing alert source write

**Call flows 6**

- `ilert.call_flows.create` Create a new call flow write
- `ilert.call_flows.get` Get a specific call flow read
- `ilert.call_flows.get_by_name` Get the call flow with the specified name read
- `ilert.call_flows.list` List existing call flows read
- `ilert.call_flows.delete` Delete a specific call flow destructive
- `ilert.call_flows.update` Update a specific call flow write

**Connectors 6**

- `ilert.connectors.create` Create a new connector write
- `ilert.connectors.get` Get a specific connector read
- `ilert.connectors.get_by_name` Get the connector with the specified name read
- `ilert.connectors.list` Get connectors read
- `ilert.connectors.delete` Remove a specific connector destructive
- `ilert.connectors.update` Update the specific connector. (note: type cannot be changed) write

**Deployment pipelines 6**

- `ilert.deployment_pipelines.create` Create a new deployment pipeline write
- `ilert.deployment_pipelines.get` Get a specific deployment pipeline read
- `ilert.deployment_pipelines.get_by_name` Get the deployment pipeline with the specified name read
- `ilert.deployment_pipelines.list` Get deployment pipelines read
- `ilert.deployment_pipelines.delete` Delete a specific deployment pipeline destructive
- `ilert.deployment_pipelines.update` Update the specific deployment pipeline write

**Event flows 6**

- `ilert.event_flows.create` Create a new event flow write
- `ilert.event_flows.get` Get a specific event flow read
- `ilert.event_flows.get_by_name` Get the event flow with the specified name read
- `ilert.event_flows.list` List existing event flows read
- `ilert.event_flows.delete` Delete a specific event flow destructive
- `ilert.event_flows.update` Update a specific event flow write

**Heartbeat monitors 6**

- `ilert.heartbeat_monitors.create` Create a new heartbeat monitor write
- `ilert.heartbeat_monitors.get` Get the heartbeat monitor with specified id read
- `ilert.heartbeat_monitors.list` List heartbeat monitors read
- `ilert.heartbeat_monitors.update` Update an existing heartbeat monitor write
- `ilert.heartbeat_monitors.delete` Delete the specified heartbeat monitor destructive
- `ilert.heartbeat_monitors.get_by_name` Get the heartbeat monitor with the specified name read

**Incident templates 6**

- `ilert.incident_templates.create` Create a new incident template write
- `ilert.incident_templates.get` Get a specific incident template read
- `ilert.incident_templates.get_by_name` Get the incident template with the specified name read
- `ilert.incident_templates.list` Get incident templates read
- `ilert.incident_templates.delete` Remove a specific incident template destructive
- `ilert.incident_templates.update` Update the specific incident template write

**Metric data sources 6**

- `ilert.metric_data_sources.create` Create a new Metric Data Source write
- `ilert.metric_data_sources.get` Get a specific Metric Data Source read
- `ilert.metric_data_sources.get_by_name` Get the metric data source with the specified name read
- `ilert.metric_data_sources.list` Get Metric Data Sources read
- `ilert.metric_data_sources.delete` Delete a specific Metric Data Source destructive
- `ilert.metric_data_sources.update` Update the specific Metric Data Source write

**Metrics 6**

- `ilert.metrics.create` Create a new metric write
- `ilert.metrics.get` Get a specific Metric read
- `ilert.metrics.get_by_name` Get the metric with the specified name read
- `ilert.metrics.list` Get metrics read
- `ilert.metrics.delete` Delete the specific Metric destructive
- `ilert.metrics.update` Update the specific Metric write

**Status pages 6**

- `ilert.status_pages.create` Create a new status page write
- `ilert.status_pages.get` Get a specific status page read
- `ilert.status_pages.get_by_name` Get the status page with the specified name read
- `ilert.status_pages.list` Get status pages read
- `ilert.status_pages.delete` Remove a specific status page destructive
- `ilert.status_pages.update` Update the specific status page write

**Support hours 6**

- `ilert.support_hours.create` Create a new support hour write
- `ilert.support_hours.get` Get the support hour with specified id read
- `ilert.support_hours.get_by_name` Get the support hour with the specified name read
- `ilert.support_hours.list` List support hours read
- `ilert.support_hours.delete` Delete the specified support hour destructive
- `ilert.support_hours.update` Update an existing support hour write

**Teams 6**

- `ilert.teams.create` Create a new team write
- `ilert.teams.get` Get a specific team read
- `ilert.teams.list` Get teams read
- `ilert.teams.update` Update the specific team write
- `ilert.teams.delete` Remove a specific team destructive
- `ilert.teams.get_by_name` Get the team with the specified name read

**Chat messages 5**

- `ilert.chat_messages.create` Create a new message in the specified channel. The author of the message is the user the API key or access token belongs to write
- `ilert.chat_messages.get` Get the message with the specified id read
- `ilert.chat_messages.list` List the messages of the specified channel read
- `ilert.chat_messages.update` Update the message with the specified id. Only the author of a message may update it write
- `ilert.chat_messages.delete` Delete the message with the specified id. Messages are deleted softly: the message remains in the list with `deleted` set to true and its content replaced by a placeholder. Only the author of a messag destructive

**Chat thread replies 5**

- `ilert.chat_thread_replies.create` Reply to the specified message. The first reply turns the message into a thread. The author of the reply is the user the API key or access token belongs to write
- `ilert.chat_thread_replies.get` Get the thread reply with the specified id read
- `ilert.chat_thread_replies.list` List the replies of the specified thread, newest first read
- `ilert.chat_thread_replies.update` Update the thread reply with the specified id. Only the author of a thread reply may update it write
- `ilert.chat_thread_replies.delete` Delete the thread reply with the specified id. Thread replies are deleted softly: the reply remains in the list with `deleted` set to true and its content replaced by a placeholder. Only the author of destructive

**Event flow integrations 5**

- `ilert.event_flow_integrations.create` Create a new event flow integration write
- `ilert.event_flow_integrations.get` Get an event flow integration read
- `ilert.event_flow_integrations.list` Get a list of event flow integrations read
- `ilert.event_flow_integrations.update` Update an event flow integration write
- `ilert.event_flow_integrations.delete` Delete an event flow integration destructive

**Incidents 5**

- `ilert.incidents.create` Create a new incident write
- `ilert.incidents.get` Get a specific incident read
- `ilert.incidents.list` Get incidents read
- `ilert.incidents.update` Update the specific incident write
- `ilert.incidents.forecast_publish` Forecast the affected subscribers and status pages read

**Incidents postmortems 5**

- `ilert.incidents_postmortems.delete` Delete a postmortem of an incident destructive
- `ilert.incidents_postmortems.get` Get a postmortem of an incident read
- `ilert.incidents_postmortems.list` Get the postmortems of an incident read
- `ilert.incidents_postmortems.update` Update a postmortem of an incident write
- `ilert.incidents_postmortems.generate` Request the generation of a postmortem for an incident write

**Maintenance windows 5**

- `ilert.maintenance_windows.create` Create a new maintenance window write
- `ilert.maintenance_windows.delete` Delete the specified maintenance window destructive
- `ilert.maintenance_windows.get` Get the maintenance window with specified id read
- `ilert.maintenance_windows.list` List maintenance windows read
- `ilert.maintenance_windows.update` Update an existing maintenance window write

**Service outages overrides 5**

- `ilert.service_outages_overrides.create` Override a part of a service's outage history write
- `ilert.service_outages_overrides.get` Get the specific service outage override read
- `ilert.service_outages_overrides.list` Get the overrides of a specific service read
- `ilert.service_outages_overrides.update` Update an existing service outage override write
- `ilert.service_outages_overrides.delete` Remove a service outage override destructive

**Services dependencies 5**

- `ilert.services_dependencies.create` Create a dependency on a service write
- `ilert.services_dependencies.delete` Delete a dependency of a service destructive
- `ilert.services_dependencies.get` Get a single dependency of a service read
- `ilert.services_dependencies.list` List the dependencies of a service read
- `ilert.services_dependencies.replace` Replace all dependencies of a service write

**Status pages groups 5**

- `ilert.status_pages_groups.create` Add a group to a status page write
- `ilert.status_pages_groups.get` Get a specific group of a status page read
- `ilert.status_pages_groups.list` Get the groups of a status page read
- `ilert.status_pages_groups.update` Update a group of a status page write
- `ilert.status_pages_groups.delete` Remove group from a status page destructive

**Status updates 5**

- `ilert.status_updates.create` Create a new status update write
- `ilert.status_updates.forecast_publish` Forecast the affected subscribers and status pages read
- `ilert.status_updates.get` Get a specific status update read
- `ilert.status_updates.list` Get status updates read
- `ilert.status_updates.update` Update the specific status update write

**Users contacts emails 5**

- `ilert.users_contacts_emails.create` Create a new email write
- `ilert.users_contacts_emails.get` Get a specific email read
- `ilert.users_contacts_emails.list` Get a user's emails read
- `ilert.users_contacts_emails.update` Update a user's email write
- `ilert.users_contacts_emails.delete` Delete the user's specified email destructive

**Users contacts phone numbers 5**

- `ilert.users_contacts_phone_numbers.create` Create a phone number write
- `ilert.users_contacts_phone_numbers.get` Get specific phone number read
- `ilert.users_contacts_phone_numbers.list` Get a user's phone numbers read
- `ilert.users_contacts_phone_numbers.update` Update a user's phone number write
- `ilert.users_contacts_phone_numbers.delete` Delete the user's specified phone number destructive

**Users notification prefs alerts 5**

- `ilert.users_notification_prefs_alerts.create` Create an alert notification preference write
- `ilert.users_notification_prefs_alerts.get` Get specific notification preferences alert read
- `ilert.users_notification_prefs_alerts.list` Get alert notification preferences of a user read
- `ilert.users_notification_prefs_alerts.update` Update a user's alert notification preference write
- `ilert.users_notification_prefs_alerts.delete` Delete the user's specified notification preferences alert destructive

**Users notification prefs duties 5**

- `ilert.users_notification_prefs_duties.create` Create a duty notification preference write
- `ilert.users_notification_prefs_duties.get` Get specific notification preferences duty read
- `ilert.users_notification_prefs_duties.list` Get duty notification preferences of a user read
- `ilert.users_notification_prefs_duties.update` Update a user's duty notification preference write
- `ilert.users_notification_prefs_duties.delete` Delete the user's specified notification preferences duty destructive

**Users notification prefs subscriptions 5**

- `ilert.users_notification_prefs_subscriptions.create` Create a subscription notification preference write
- `ilert.users_notification_prefs_subscriptions.get` Get specific notification preferences subscription read
- `ilert.users_notification_prefs_subscriptions.list` Get subscription notification preferences of a user read
- `ilert.users_notification_prefs_subscriptions.update` Update a user's subscription notification preference write
- `ilert.users_notification_prefs_subscriptions.delete` Delete the user's specified notification preferences subscription destructive

**Users notification prefs updates 5**

- `ilert.users_notification_prefs_updates.create` Create an update notification preference write
- `ilert.users_notification_prefs_updates.get` Get specific notification preferences update read
- `ilert.users_notification_prefs_updates.list` Get update notification preferences of a user read
- `ilert.users_notification_prefs_updates.update` Update a user's update notification preference write
- `ilert.users_notification_prefs_updates.delete` Delete the user's specified notification preferences update destructive

**Status pages private subscribers 4**

- `ilert.status_pages_private_subscribers.add` Add subscriber (user and team) to a status page write
- `ilert.status_pages_private_subscribers.list` Get the subscribers (users and teams) of a status page read
- `ilert.status_pages_private_subscribers.remove` Remove subscriber (user and team) from a status page destructive
- `ilert.status_pages_private_subscribers.set` Set subscribers (users and teams) of a status page write

**Call flow numbers 3**

- `ilert.call_flow_numbers.get` Get a specific call flow number read
- `ilert.call_flow_numbers.get_by_name` Get the call flow number with the specified name read
- `ilert.call_flow_numbers.list` List call flow numbers read

**Call flow sessions 3**

- `ilert.call_flow_sessions.data` Get the data that was collected during a call flow session read
- `ilert.call_flow_sessions.get` Get a call flow session read
- `ilert.call_flow_sessions.list` List call flow sessions read

**Alerts actions 2**

- `ilert.alerts_actions.invoke` Invoke a specific alert action write
- `ilert.alerts_actions.list` Get available actions for specified alert read

**Alerts responders 2**

- `ilert.alerts_responders.add` Add an additional responder to the alert write
- `ilert.alerts_responders.remove` Remove a responder from the alert destructive

**Chat messages reactions 2**

- `ilert.chat_messages_reactions.add` Add a reaction of the authenticated user to the message with the specified id. Reacting twice with the same code, or exceeding the limit of reaction codes per message, answers 400 write
- `ilert.chat_messages_reactions.remove` Remove the reaction of the authenticated user from the message with the specified id destructive

**Chat thread replies reactions 2**

- `ilert.chat_thread_replies_reactions.add` Add a reaction of the authenticated user to the thread reply with the specified id. Reacting twice with the same code, or exceeding the limit of reaction codes per thread reply, answers 400 write
- `ilert.chat_thread_replies_reactions.remove` Remove the reaction of the authenticated user from the thread reply with the specified id destructive

**Incidents private subscribers 2**

- `ilert.incidents_private_subscribers.add` Add subscribers (users and teams) to an incident write
- `ilert.incidents_private_subscribers.list` Get the subscribers (users and teams) of an incident read

**Schedules overrides 2**

- `ilert.schedules_overrides.add` Add an override shift to a schedule write
- `ilert.schedules_overrides.list` Get overrides for the specified schedule read

**Services private subscribers 2**

- `ilert.services_private_subscribers.list` Get the subscribers (users and teams) of a service read
- `ilert.services_private_subscribers.set` Set subscribers (users and teams) of a service write

**Status updates private subscribers 2**

- `ilert.status_updates_private_subscribers.add` Add subscribers (users and teams) to a status update write
- `ilert.status_updates_private_subscribers.list` Get the subscribers (users and teams) of a status update read

**Teams members 2**

- `ilert.teams_members.add` Add a new team member to specific team write
- `ilert.teams_members.remove` Remove a specific member of a specific team destructive

**Account 1**

- `ilert.account.get` Get the account of the currently authenticated caller read

**Alerts labels 1**

- `ilert.alerts_labels.list` List the distinct label keys used by the alerts of this account read

**Alerts labels values 1**

- `ilert.alerts_labels_values.list` List the distinct values used for a label key by the alerts of this account read

**Alerts log entries 1**

- `ilert.alerts_log_entries.list` Get log entries for the specified alert read

**Alerts merged children 1**

- `ilert.alerts_merged_children.list` Get the alerts that were merged into this alert read

**Alerts notifications 1**

- `ilert.alerts_notifications.list` Get notifications for the specified alert read

**Alerts suggested responders 1**

- `ilert.alerts_suggested_responders.list` Get available (assignable) responders for the alert with the specified id read

**Deployment events 1**

- `ilert.deployment_events.post` Post a deployment event to ilert write

**Escalation policies levels 1**

- `ilert.escalation_policies_levels.replace` Replace an escalation rule at the specified level write

**Events 1**

- `ilert.events.post` Post an event to ilert write

**Incidents postmortem links 1**

- `ilert.incidents_postmortem_links.create` Link an externally hosted postmortem document to an incident write

**Incidents status updates 1**

- `ilert.incidents_status_updates.publish` Publish a status update for an incident write

**Integrations 1**

- `ilert.integrations.list` List available inbound and outbound integrations. Note: this resource is paginated read

**Numbers 1**

- `ilert.numbers.list` List available phone numbers that ilert uses to send voice and SMS notifications read

**On calls 1**

- `ilert.on_calls.list` List on-calls with flexible filters read

**Reports alerts 1**

- `ilert.reports_alerts.list` List alert metrics for the requested resources read

**Reports alerts summary 1**

- `ilert.reports_alerts_summary.list` Summarize a list of alert metrics read

**Reports API keys usage 1**

- `ilert.reports_api_keys_usage.list` List API key usage metrics for the requested resources read

**Schedules shifts 1**

- `ilert.schedules_shifts.list` Get shifts for the specified schedule and date range read

**Series 1**

- `ilert.series.ingest` Ingest a series for a metric write

**Service outages 1**

- `ilert.service_outages.list` Get the outages (including applied overrides) of a specific service read

**Services labels 1**

- `ilert.services_labels.list` List the distinct label keys used by the services of this account read

**Services labels values 1**

- `ilert.services_labels_values.list` List the distinct values used for a label key by the services of this account read

**Telemetry sources labels 1**

- `ilert.telemetry_sources_labels.list` List the distinct label keys used by the telemetry sources of this account read

**Telemetry sources labels values 1**

- `ilert.telemetry_sources_labels_values.list` List the distinct values used for a label key by the telemetry sources of this account read

This index shows a sample of each area. All 263 actions, with their inputs and prices, are in the [catalogue](https://actionlake.com/console/catalogue), which a free sandbox key can search.

Questions

## The ilert MCP server, answered.

**Is there an ilert MCP server for Claude?**

Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 263 ilert actions across alerts, services, telemetry sources and users, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by ilert.

**What do I need to connect ilert?**

Ilert API key: ilert web app > your profile > API Keys > Create API key. The free call account { op: "connections.requirements", service: "ilert" } lists exactly what to paste.

**Can an AI agent delete or change things in ilert?**

Only if its key allows it, and only with an explicit confirmation. 38 ilert actions are destructive, including delete the specified heartbeat monitor, delete the specified user and remove a specific team. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.

**Will an AI agent use up my ilert API limit?**

actionlake paces every call to the limits in the ilert service file: 300 calls a minute per connection. Repeated reads are answered from cache (120 ilert actions can be), which never reaches ilert.

**What does an ilert action cost?**

One upstream call, the only unit actionlake bills. A list that pages bills one call per page (263 ilert actions page). Cache hits, searches, dry runs and calls ilert refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.

**Which ilert API does it cover?**

The ilert REST API (OpenAPI 3.0.1) at api.ilert.com/api. It is built from ilert's documentation as read on 23 October 2026. 263 actions in 72 areas, each one in the signed service file (version 1.0.0).

**Does actionlake keep my ilert data, and where?**

actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to 5 minutes, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your ilert credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.

**Which AI clients can use it?**

Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.

## More connectors like ilert

Shares the most action names with

- [Opsgenie 41](https://actionlake.com/connectors/opsgenie)
- [FireHydrant 38](https://actionlake.com/connectors/firehydrant)
- [Better Stack Uptime 28](https://actionlake.com/connectors/better-stack-uptime)
- [incident.io 27](https://actionlake.com/connectors/incident-io)
- [Rootly 26](https://actionlake.com/connectors/rootly)
- [Zenduty 22](https://actionlake.com/connectors/zenduty)

Joins with, on shared entities

- [Dynatrace 4](https://actionlake.com/connectors/dynatrace)
- [Sentry 4](https://actionlake.com/connectors/sentry)
- [Zabbix 4](https://actionlake.com/connectors/zabbix)
- [IBM NS1 Connect 4](https://actionlake.com/connectors/ibm-ns1-connect)
- [Palo Alto Networks Cortex XDR 4](https://actionlake.com/connectors/palo-alto-networks-cortex-xdr)
- [Rubrik Security Cloud 3](https://actionlake.com/connectors/rubrik-security-cloud)

Browse

- [All Service desk & support connectors](https://actionlake.com/connectors/category/service-desk-and-support)
- [All connectors](https://actionlake.com/connectors)
- [How actionlake compares](https://actionlake.com/compare)

actionlake is independent. It is not made or endorsed by ilert; the name is the vendor's own. Counts are from the ilert service file, version 1.0.0.

## Give your agent ilert today.

[Connect ilert free](https://actionlake.com/console?start=sandbox) [See pricing](https://actionlake.com/pricing)

Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.

---

Source: https://actionlake.com/connectors/ilert
More: https://actionlake.com/llms.txt
