Sleeping Better at 2AM: Building an On-call Assistant Bot with n8n, Slack, and Observe MCP

Being on-call is tough. PagerDuty buzzes at 2AM, you fumble for your laptop, and… it’s just a flaky health check again. Noise like this wears engineers down, causes alert fatigue, and wastes precious sleep. This short clip shows the reality of being on-call: an engineer woken up at 2AM by yet another noisy alert.

I wanted to see if we could build an AI-powered assistant to handle these alerts before waking a human. Something that reads the alert, does an initial triage, and if it’s noise, takes care of muting it automatically. That’s how the On-call Assistant Bot was born.

The Idea

The On-call Assistant Bot helps on-call engineers by providing the first assessment of alerts directly inside Slack:

  • If an alert is a signal → it posts the verdict, context, and recommended next steps in-thread.
  • If it’s noise → it explains why and mutes the underlying monitor in Observe, so future duplicates don’t keep waking you up.

In other words: get more sleep, respond only to what matters.

Workflow Overview

Here’s how the workflow is structured:

  • Slack Trigger – Listens for alerts posted to a channel or direct @mentions
  • Normalizer – Parses the Slack payload into a clean alert object
  • AI Agent (Claude + Observe MCP) – Enriches the alert with logs, metrics, and traces; classifies as signal or noise
  • If noise – Builds a mute request and calls Observe’s monitor-mute-rules API
  • Slack Response – Posts verdict, reason, links, and next steps as a threaded reply

Real-world Examples

1. Signal Alert

The bot identifies a payment error alert as a true incident. It provides severity, reason, context, and actionable next steps.

▶️ Watch short demo (Signal)

2. Noise Alert

A frontend low traffic alert is flagged as noise. The bot explains why and automatically mutes the monitor.

▶️ Watch short demo (Noise)

Technologies Used

A team of AI agents

  • Observe’s AI SRE – Creates and manages monitors
  • ChatGPT (GPT-5) – Acts like the n8n developer, generating workflow logic
  • Claude Sonnet-4 + Observe MCP – Performs triage using logs, metrics, and traces
  • Gemini – Generates demo images and videos

Other tools

  • n8n – The workflow automation backbone connecting all the parts
  • Slack – The interface where engineers interact with alerts

Observing a Trend

While working with customers on the Observe MCP Server, I noticed a trend: many told us they were already building or planning to build their own AI agents. This hackathon project was my way of showing what’s possible when AI agents and observability workflows meet — and how much toil can be saved when you combine them.

Lessons Learned

  • Noise is costly. Even one or two false alarms per week can burn out engineers.
  • Context is everything. Alerts by themselves are cryptic; adding logs + metrics makes triage faster.
  • Keep it explainable. The bot doesn’t just say “Noise” — it explains why, so engineers trust it.

Try It Yourself

Workflow template: GitHub repo

Steps:

  1. Create a Slack App & Bot
  2. Connect Observe MCP & API token
  3. Import the workflow, replace placeholders (<SLACK_CHANNEL_ID>, <OBSERVE_CUSTOMERID>, etc)
  4. Create a monitor in Observe and publish its alerts to a Slack channel → watch the bot triage alerts

Closing Thoughts

This is just the beginning. Imagine extending the bot to:

  • Create Jira tickets for confirmed incidents
  • Run playbooks automatically
  • Suggest owners or services responsible

The goal is simple: reduce toil, protect engineers’ sleep, and let humans focus on real problems.

💡 I’d also love to learn about what you’re building with the Observe MCP Server. Feel free to reach out and share your ideas!

All Blogs
In this article