Skip to content

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.

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
  • 263actionsin one signed file
  • 127readlook, never change
  • 98writecreate and update
  • 38wait for a yesdestructive, 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_tokenilert 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 callcheck { 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 2026api.ilert.comapi.ilert.com
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.

  • 127readlook, never change
  • 98writecreate and update
  • 38destructivewait 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.

ActionWhat it doesEffectSame name in
ilert.alerts.listList 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…readmonitoring.alert.list51 connectors
ilert.heartbeat_monitors.listList heartbeat monitorsThis resource uses a 'cursor' to paginate.readmonitoring.monitor.list32 connectors
ilert.users.listList existing usersList existing users.readidentity.user.list474 connectors
ilert.incidents.listGet incidentsGet incidents.readmonitoring.incident.list19 connectors
ilert.teams.listGet teamsGet teams.readidentity.group.list262 connectors
ilert.services.listGet servicesGet services.readmonitoring.service.list12 connectors
ilert.users.get_currentGet the currently authenticated userGet the currently authenticated user.readidentity.current_user.get307 connectors
ilert.alerts.getGet the alert with the specified idGet the alert with the specified id.readmonitoring.alert.get33 connectors
ilert.heartbeat_monitors.createCreate a new heartbeat monitorThe 'integrationKey' field cannot be set as it is generated automatically.writemonitoring.monitor.create27 connectors
ilert.users.createCreate a new user. Requires ADMIN privileges**Sample request** ```json Request URL: https://api.ilert.com/api/users { "firstName": "John", "lastName": "Doe", "email": "[email protected]", "position":…writeidentity.user.create262 connectors
ilert.alerts.createCreate alerts with customised parameters without requiring events from monitoring tools that use our Events APIATTENTION: do not use this endpoint to create monitoring related (or high volumes of) alerts, use '/api/events' instead, you have been warned! Escalation of…writemonitoring.alert.create14 connectors
ilert.heartbeat_monitors.deleteDelete the specified heartbeat monitorDelete the specified heartbeat monitor.destructivemonitoring.monitor.delete31 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. Readread

    Which ilert incidents are open, and how long has each been open?

    callsilert.incidents.list

  2. Writewrite

    Create a new heartbeat monitor in ilert. Show me exactly what you will send before you save it.

    callsilert.heartbeat_monitors.create

Governance for ilert

Destructive actions wait for a yes.

38 ilert actions are destructive. The first 10:

  • Delete the specified heartbeat monitorilert.heartbeat_monitors.delete
  • Delete the specified userilert.users.delete
  • Remove a specific teamilert.teams.delete
  • Remove a specific serviceilert.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 messagilert.chat_messages.delete
  • Delete a postmortem of an incidentilert.incidents_postmortems.delete
  • Remove a specific member of a specific teamilert.teams_members.remove
  • Delete a dependency of a serviceilert.services_dependencies.delete
  • Remove the reaction of the authenticated user from the message with the specified idilert.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 ofilert.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.

doilert.heartbeat_monitors.deleteconfirm_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: "[email protected]" },    { match: "ilert.users.delete", approver: "[email protected]" },    { match: "ilert.teams.delete", approver: "[email protected]" }  ]}
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.

  • 1upstream call per actionall 263 ilert actions
  • 263actions pageeach page of a long list is one call
  • 120reads can be cacheda cache hit costs nothing
  • 100,000calls a month, freepaid plans from US$49 a month for 250,000

See pricing

Action index

Every ilert action.

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

Alerts14
  • ilert.alerts.countGet the number of alerts matching the given filtersread
  • ilert.alerts.createCreate alerts with customised parameters without requiring events from monitoring tools that use our Events APIwrite
  • ilert.alerts.getGet the alert with the specified idread
  • ilert.alerts.listList alerts (optionally matching certain criteria that are specified by query parameters)read
  • ilert.alerts.acceptAccept the Alertwrite
  • ilert.alerts.accept_bulkAccept multiple alertswrite
  • and 8 more in this area
Services8
  • ilert.services.createCreate a new servicewrite
  • ilert.services.getGet a specific serviceread
  • ilert.services.listGet servicesread
  • ilert.services.updateUpdate the specific servicewrite
  • ilert.services.deleteRemove a specific servicedestructive
  • ilert.services.get_by_nameGet the service with the specified nameread
  • and 2 more in this area
Telemetry sources8
  • ilert.telemetry_sources.getGet the telemetry source with the specified idread
  • ilert.telemetry_sources.get_by_nameGet the telemetry source with the specified nameread
  • ilert.telemetry_sources.listList the telemetry sources of the accountread
  • ilert.telemetry_sources.statsGet ingestion statistics of a telemetry sourceread
  • ilert.telemetry_sources.createCreate a new telemetry sourcewrite
  • ilert.telemetry_sources.deleteDelete the telemetry source with the specified iddestructive
  • and 2 more in this area
Users8
  • ilert.users.createCreate a new user. Requires ADMIN privilegeswrite
  • ilert.users.getGet the specified userread
  • ilert.users.get_currentGet the currently authenticated userread
  • ilert.users.listList existing usersread
  • ilert.users.deleteDelete the specified userdestructive
  • ilert.users.search_emailFind a user by email addressread
  • and 2 more in this area
Escalation policies7
  • ilert.escalation_policies.createCreate a new escalation policywrite
  • ilert.escalation_policies.getGet escalation policy with the specified idread
  • ilert.escalation_policies.listList escalation policiesread
  • ilert.escalation_policies.updateUpdate an existing escalation policywrite
  • ilert.escalation_policies.deleteDelete the specified escalation policydestructive
  • ilert.escalation_policies.get_by_nameGet the escalation policy with the specified nameread
  • and 1 more in this area
Schedules7
  • ilert.schedules.createCreate a new on-call schedulewrite
  • ilert.schedules.getGet the on-call schedule with the specified idread
  • ilert.schedules.listList on-call schedulesread
  • ilert.schedules.updateUpdate an on-call schedulewrite
  • ilert.schedules.deleteDelete the on-call schedule with the specified iddestructive
  • ilert.schedules.get_by_nameGet the schedule with the specified nameread
  • and 1 more in this area
Alert actions6
  • ilert.alert_actions.createCreate a new alert actionwrite
  • ilert.alert_actions.getGet a specific alert actionread
  • ilert.alert_actions.get_by_nameGet the alert action with the specified nameread
  • ilert.alert_actions.listGet alert actionsread
  • ilert.alert_actions.deleteRemove a specific alert actiondestructive
  • ilert.alert_actions.updateUpdate the specific alert action. (note: type cannot be changed)write
Alert sources6
  • ilert.alert_sources.createCreate a new alert sourcewrite
  • ilert.alert_sources.getGet the alert source with specified id or alternatively integration keyread
  • ilert.alert_sources.get_by_nameGet the alert source with the specified nameread
  • ilert.alert_sources.listList alert sourcesread
  • ilert.alert_sources.deleteDelete the specified alert sourcedestructive
  • ilert.alert_sources.updateUpdate an existing alert sourcewrite
Call flows6
  • ilert.call_flows.createCreate a new call flowwrite
  • ilert.call_flows.getGet a specific call flowread
  • ilert.call_flows.get_by_nameGet the call flow with the specified nameread
  • ilert.call_flows.listList existing call flowsread
  • ilert.call_flows.deleteDelete a specific call flowdestructive
  • ilert.call_flows.updateUpdate a specific call flowwrite
Connectors6
  • ilert.connectors.createCreate a new connectorwrite
  • ilert.connectors.getGet a specific connectorread
  • ilert.connectors.get_by_nameGet the connector with the specified nameread
  • ilert.connectors.listGet connectorsread
  • ilert.connectors.deleteRemove a specific connectordestructive
  • ilert.connectors.updateUpdate the specific connector. (note: type cannot be changed)write
Deployment pipelines6
  • ilert.deployment_pipelines.createCreate a new deployment pipelinewrite
  • ilert.deployment_pipelines.getGet a specific deployment pipelineread
  • ilert.deployment_pipelines.get_by_nameGet the deployment pipeline with the specified nameread
  • ilert.deployment_pipelines.listGet deployment pipelinesread
  • ilert.deployment_pipelines.deleteDelete a specific deployment pipelinedestructive
  • ilert.deployment_pipelines.updateUpdate the specific deployment pipelinewrite
Event flows6
  • ilert.event_flows.createCreate a new event flowwrite
  • ilert.event_flows.getGet a specific event flowread
  • ilert.event_flows.get_by_nameGet the event flow with the specified nameread
  • ilert.event_flows.listList existing event flowsread
  • ilert.event_flows.deleteDelete a specific event flowdestructive
  • ilert.event_flows.updateUpdate a specific event flowwrite
Heartbeat monitors6
  • ilert.heartbeat_monitors.createCreate a new heartbeat monitorwrite
  • ilert.heartbeat_monitors.getGet the heartbeat monitor with specified idread
  • ilert.heartbeat_monitors.listList heartbeat monitorsread
  • ilert.heartbeat_monitors.updateUpdate an existing heartbeat monitorwrite
  • ilert.heartbeat_monitors.deleteDelete the specified heartbeat monitordestructive
  • ilert.heartbeat_monitors.get_by_nameGet the heartbeat monitor with the specified nameread
Incident templates6
  • ilert.incident_templates.createCreate a new incident templatewrite
  • ilert.incident_templates.getGet a specific incident templateread
  • ilert.incident_templates.get_by_nameGet the incident template with the specified nameread
  • ilert.incident_templates.listGet incident templatesread
  • ilert.incident_templates.deleteRemove a specific incident templatedestructive
  • ilert.incident_templates.updateUpdate the specific incident templatewrite
Metric data sources6
  • ilert.metric_data_sources.createCreate a new Metric Data Sourcewrite
  • ilert.metric_data_sources.getGet a specific Metric Data Sourceread
  • ilert.metric_data_sources.get_by_nameGet the metric data source with the specified nameread
  • ilert.metric_data_sources.listGet Metric Data Sourcesread
  • ilert.metric_data_sources.deleteDelete a specific Metric Data Sourcedestructive
  • ilert.metric_data_sources.updateUpdate the specific Metric Data Sourcewrite
Metrics6
  • ilert.metrics.createCreate a new metricwrite
  • ilert.metrics.getGet a specific Metricread
  • ilert.metrics.get_by_nameGet the metric with the specified nameread
  • ilert.metrics.listGet metricsread
  • ilert.metrics.deleteDelete the specific Metricdestructive
  • ilert.metrics.updateUpdate the specific Metricwrite
Status pages6
  • ilert.status_pages.createCreate a new status pagewrite
  • ilert.status_pages.getGet a specific status pageread
  • ilert.status_pages.get_by_nameGet the status page with the specified nameread
  • ilert.status_pages.listGet status pagesread
  • ilert.status_pages.deleteRemove a specific status pagedestructive
  • ilert.status_pages.updateUpdate the specific status pagewrite
Support hours6
  • ilert.support_hours.createCreate a new support hourwrite
  • ilert.support_hours.getGet the support hour with specified idread
  • ilert.support_hours.get_by_nameGet the support hour with the specified nameread
  • ilert.support_hours.listList support hoursread
  • ilert.support_hours.deleteDelete the specified support hourdestructive
  • ilert.support_hours.updateUpdate an existing support hourwrite
Teams6
  • ilert.teams.createCreate a new teamwrite
  • ilert.teams.getGet a specific teamread
  • ilert.teams.listGet teamsread
  • ilert.teams.updateUpdate the specific teamwrite
  • ilert.teams.deleteRemove a specific teamdestructive
  • ilert.teams.get_by_nameGet the team with the specified nameread
Chat messages5
  • ilert.chat_messages.createCreate a new message in the specified channel. The author of the message is the user the API key or access token belongs towrite
  • ilert.chat_messages.getGet the message with the specified idread
  • ilert.chat_messages.listList the messages of the specified channelread
  • ilert.chat_messages.updateUpdate the message with the specified id. Only the author of a message may update itwrite
  • ilert.chat_messages.deleteDelete 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 messagdestructive
Chat thread replies5
  • ilert.chat_thread_replies.createReply 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 towrite
  • ilert.chat_thread_replies.getGet the thread reply with the specified idread
  • ilert.chat_thread_replies.listList the replies of the specified thread, newest firstread
  • ilert.chat_thread_replies.updateUpdate the thread reply with the specified id. Only the author of a thread reply may update itwrite
  • ilert.chat_thread_replies.deleteDelete 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 ofdestructive
Event flow integrations5
  • ilert.event_flow_integrations.createCreate a new event flow integrationwrite
  • ilert.event_flow_integrations.getGet an event flow integrationread
  • ilert.event_flow_integrations.listGet a list of event flow integrationsread
  • ilert.event_flow_integrations.updateUpdate an event flow integrationwrite
  • ilert.event_flow_integrations.deleteDelete an event flow integrationdestructive
Incidents5
  • ilert.incidents.createCreate a new incidentwrite
  • ilert.incidents.getGet a specific incidentread
  • ilert.incidents.listGet incidentsread
  • ilert.incidents.updateUpdate the specific incidentwrite
  • ilert.incidents.forecast_publishForecast the affected subscribers and status pagesread
Incidents postmortems5
  • ilert.incidents_postmortems.deleteDelete a postmortem of an incidentdestructive
  • ilert.incidents_postmortems.getGet a postmortem of an incidentread
  • ilert.incidents_postmortems.listGet the postmortems of an incidentread
  • ilert.incidents_postmortems.updateUpdate a postmortem of an incidentwrite
  • ilert.incidents_postmortems.generateRequest the generation of a postmortem for an incidentwrite
Maintenance windows5
  • ilert.maintenance_windows.createCreate a new maintenance windowwrite
  • ilert.maintenance_windows.deleteDelete the specified maintenance windowdestructive
  • ilert.maintenance_windows.getGet the maintenance window with specified idread
  • ilert.maintenance_windows.listList maintenance windowsread
  • ilert.maintenance_windows.updateUpdate an existing maintenance windowwrite
Service outages overrides5
  • ilert.service_outages_overrides.createOverride a part of a service's outage historywrite
  • ilert.service_outages_overrides.getGet the specific service outage overrideread
  • ilert.service_outages_overrides.listGet the overrides of a specific serviceread
  • ilert.service_outages_overrides.updateUpdate an existing service outage overridewrite
  • ilert.service_outages_overrides.deleteRemove a service outage overridedestructive
Services dependencies5
  • ilert.services_dependencies.createCreate a dependency on a servicewrite
  • ilert.services_dependencies.deleteDelete a dependency of a servicedestructive
  • ilert.services_dependencies.getGet a single dependency of a serviceread
  • ilert.services_dependencies.listList the dependencies of a serviceread
  • ilert.services_dependencies.replaceReplace all dependencies of a servicewrite
Status pages groups5
  • ilert.status_pages_groups.createAdd a group to a status pagewrite
  • ilert.status_pages_groups.getGet a specific group of a status pageread
  • ilert.status_pages_groups.listGet the groups of a status pageread
  • ilert.status_pages_groups.updateUpdate a group of a status pagewrite
  • ilert.status_pages_groups.deleteRemove group from a status pagedestructive
Status updates5
  • ilert.status_updates.createCreate a new status updatewrite
  • ilert.status_updates.forecast_publishForecast the affected subscribers and status pagesread
  • ilert.status_updates.getGet a specific status updateread
  • ilert.status_updates.listGet status updatesread
  • ilert.status_updates.updateUpdate the specific status updatewrite
Users contacts emails5
  • ilert.users_contacts_emails.createCreate a new emailwrite
  • ilert.users_contacts_emails.getGet a specific emailread
  • ilert.users_contacts_emails.listGet a user's emailsread
  • ilert.users_contacts_emails.updateUpdate a user's emailwrite
  • ilert.users_contacts_emails.deleteDelete the user's specified emaildestructive
Users contacts phone numbers5
  • ilert.users_contacts_phone_numbers.createCreate a phone numberwrite
  • ilert.users_contacts_phone_numbers.getGet specific phone numberread
  • ilert.users_contacts_phone_numbers.listGet a user's phone numbersread
  • ilert.users_contacts_phone_numbers.updateUpdate a user's phone numberwrite
  • ilert.users_contacts_phone_numbers.deleteDelete the user's specified phone numberdestructive
Users notification prefs alerts5
  • ilert.users_notification_prefs_alerts.createCreate an alert notification preferencewrite
  • ilert.users_notification_prefs_alerts.getGet specific notification preferences alertread
  • ilert.users_notification_prefs_alerts.listGet alert notification preferences of a userread
  • ilert.users_notification_prefs_alerts.updateUpdate a user's alert notification preferencewrite
  • ilert.users_notification_prefs_alerts.deleteDelete the user's specified notification preferences alertdestructive
Users notification prefs duties5
  • ilert.users_notification_prefs_duties.createCreate a duty notification preferencewrite
  • ilert.users_notification_prefs_duties.getGet specific notification preferences dutyread
  • ilert.users_notification_prefs_duties.listGet duty notification preferences of a userread
  • ilert.users_notification_prefs_duties.updateUpdate a user's duty notification preferencewrite
  • ilert.users_notification_prefs_duties.deleteDelete the user's specified notification preferences dutydestructive
Users notification prefs subscriptions5
  • ilert.users_notification_prefs_subscriptions.createCreate a subscription notification preferencewrite
  • ilert.users_notification_prefs_subscriptions.getGet specific notification preferences subscriptionread
  • ilert.users_notification_prefs_subscriptions.listGet subscription notification preferences of a userread
  • ilert.users_notification_prefs_subscriptions.updateUpdate a user's subscription notification preferencewrite
  • ilert.users_notification_prefs_subscriptions.deleteDelete the user's specified notification preferences subscriptiondestructive
Users notification prefs updates5
  • ilert.users_notification_prefs_updates.createCreate an update notification preferencewrite
  • ilert.users_notification_prefs_updates.getGet specific notification preferences updateread
  • ilert.users_notification_prefs_updates.listGet update notification preferences of a userread
  • ilert.users_notification_prefs_updates.updateUpdate a user's update notification preferencewrite
  • ilert.users_notification_prefs_updates.deleteDelete the user's specified notification preferences updatedestructive
Status pages private subscribers4
  • ilert.status_pages_private_subscribers.addAdd subscriber (user and team) to a status pagewrite
  • ilert.status_pages_private_subscribers.listGet the subscribers (users and teams) of a status pageread
  • ilert.status_pages_private_subscribers.removeRemove subscriber (user and team) from a status pagedestructive
  • ilert.status_pages_private_subscribers.setSet subscribers (users and teams) of a status pagewrite
Call flow numbers3
  • ilert.call_flow_numbers.getGet a specific call flow numberread
  • ilert.call_flow_numbers.get_by_nameGet the call flow number with the specified nameread
  • ilert.call_flow_numbers.listList call flow numbersread
Call flow sessions3
  • ilert.call_flow_sessions.dataGet the data that was collected during a call flow sessionread
  • ilert.call_flow_sessions.getGet a call flow sessionread
  • ilert.call_flow_sessions.listList call flow sessionsread
Alerts actions2
  • ilert.alerts_actions.invokeInvoke a specific alert actionwrite
  • ilert.alerts_actions.listGet available actions for specified alertread
Alerts responders2
  • ilert.alerts_responders.addAdd an additional responder to the alertwrite
  • ilert.alerts_responders.removeRemove a responder from the alertdestructive
Chat messages reactions2
  • ilert.chat_messages_reactions.addAdd 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 400write
  • ilert.chat_messages_reactions.removeRemove the reaction of the authenticated user from the message with the specified iddestructive
Chat thread replies reactions2
  • ilert.chat_thread_replies_reactions.addAdd 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 400write
  • ilert.chat_thread_replies_reactions.removeRemove the reaction of the authenticated user from the thread reply with the specified iddestructive
Incidents private subscribers2
  • ilert.incidents_private_subscribers.addAdd subscribers (users and teams) to an incidentwrite
  • ilert.incidents_private_subscribers.listGet the subscribers (users and teams) of an incidentread
Schedules overrides2
  • ilert.schedules_overrides.addAdd an override shift to a schedulewrite
  • ilert.schedules_overrides.listGet overrides for the specified scheduleread
Services private subscribers2
  • ilert.services_private_subscribers.listGet the subscribers (users and teams) of a serviceread
  • ilert.services_private_subscribers.setSet subscribers (users and teams) of a servicewrite
Status updates private subscribers2
  • ilert.status_updates_private_subscribers.addAdd subscribers (users and teams) to a status updatewrite
  • ilert.status_updates_private_subscribers.listGet the subscribers (users and teams) of a status updateread
Teams members2
  • ilert.teams_members.addAdd a new team member to specific teamwrite
  • ilert.teams_members.removeRemove a specific member of a specific teamdestructive
Account1
  • ilert.account.getGet the account of the currently authenticated callerread
Alerts labels1
  • ilert.alerts_labels.listList the distinct label keys used by the alerts of this accountread
Alerts labels values1
  • ilert.alerts_labels_values.listList the distinct values used for a label key by the alerts of this accountread
Alerts log entries1
  • ilert.alerts_log_entries.listGet log entries for the specified alertread
Alerts merged children1
  • ilert.alerts_merged_children.listGet the alerts that were merged into this alertread
Alerts notifications1
  • ilert.alerts_notifications.listGet notifications for the specified alertread
Alerts suggested responders1
  • ilert.alerts_suggested_responders.listGet available (assignable) responders for the alert with the specified idread
Deployment events1
  • ilert.deployment_events.postPost a deployment event to ilertwrite
Escalation policies levels1
  • ilert.escalation_policies_levels.replaceReplace an escalation rule at the specified levelwrite
Events1
  • ilert.events.postPost an event to ilertwrite
Incidents postmortem links1
  • ilert.incidents_postmortem_links.createLink an externally hosted postmortem document to an incidentwrite
Incidents status updates1
  • ilert.incidents_status_updates.publishPublish a status update for an incidentwrite
Integrations1
  • ilert.integrations.listList available inbound and outbound integrations. Note: this resource is paginatedread
Numbers1
  • ilert.numbers.listList available phone numbers that ilert uses to send voice and SMS notificationsread
On calls1
  • ilert.on_calls.listList on-calls with flexible filtersread
Reports alerts1
  • ilert.reports_alerts.listList alert metrics for the requested resourcesread
Reports alerts summary1
  • ilert.reports_alerts_summary.listSummarize a list of alert metricsread
Reports API keys usage1
  • ilert.reports_api_keys_usage.listList API key usage metrics for the requested resourcesread
Schedules shifts1
  • ilert.schedules_shifts.listGet shifts for the specified schedule and date rangeread
Series1
  • ilert.series.ingestIngest a series for a metricwrite
Service outages1
  • ilert.service_outages.listGet the outages (including applied overrides) of a specific serviceread
Services labels1
  • ilert.services_labels.listList the distinct label keys used by the services of this accountread
Services labels values1
  • ilert.services_labels_values.listList the distinct values used for a label key by the services of this accountread
Telemetry sources labels1
  • ilert.telemetry_sources_labels.listList the distinct label keys used by the telemetry sources of this accountread
Telemetry sources labels values1
  • ilert.telemetry_sources_labels_values.listList the distinct values used for a label key by the telemetry sources of this accountread

This index shows a sample of each area. All 263 actions, with their inputs and prices, are in the 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.

Give your agent ilert today.

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