What is redphonr? Human approvals for AI agents over MCP

redphonr pauses an AI agent before a risky action, asks a person on Slack, SMS, WhatsApp or a phone call, and resumes with the answer. How it works.

Written by
Published
Reading time
4 min

An AI agent that can send emails, move money or change production is useful right up to the moment it does one of those things wrongly. The fix most teams reach for is a human checkpoint: let the agent do the work, but make it stop and ask before anything that is expensive or hard to undo.

redphonr is that checkpoint, delivered as a service. The agent calls one tool. It pauses. You get the question wherever you are, answer it with one tap or one keypress, and the agent continues with your answer.

The problem it solves

Agents are now trusted with real permissions: database access, payment APIs, outbound email, cloud consoles. Most of the time they make good calls. The failures that hurt are rare, specific and expensive:

  • deleting the wrong 3,200 rows because a filter was off
  • sending 200 cold emails from the founder’s domain
  • wiring money to a vendor that has never been paid before
  • scaling a production cluster down two hours before peak traffic

You do not want to approve every step an agent takes. You want it to stop at a handful of gates and wait for a yes. Building that yourself means a notification system, a way to wait without losing state, a way to collect the answer, timeouts, retries and an audit trail. That is what redphonr does.

How it works

The loop has four steps.

  1. The agent calls a tool. For example request_approval with a message like “Delete 3,200 user records inactive since 2023?” and a default of deny.
  2. redphonr reaches a person. It sends a card to the first channel in your escalation ladder: a Slack message with approve and deny buttons, an SMS you can reply to, a WhatsApp message, or a phone call.
  3. The person decides. One tap in Slack, a reply of 1 or 2 by text, or a keypress on the call: 1 to approve, 2 to deny, 3 to hear the full details, 9 to record a voice note.
  4. The agent resumes. The decision comes back as structured data, for example { "decision": "approved", "note": "only the inactive ones", "responded_via": "sms" }, and execution continues where it paused. Every step is logged.

If nobody answers, redphonr moves down the ladder: Slack, then SMS five minutes later, then a phone call. If the request times out, the agent gets your default, which should always be deny.

The tools an agent gets

redphonr exposes these MCP tools:

ToolWhat it is forAgent waits?
request_approvalApprove or deny before an irreversible actionYes
ask_humanPick one option when the agent cannot decideYes
collect_inputFill in missing data, such as a config valueYes
verify_outputCheck a generated email, report or migration before it shipsYes
handoffPass the task to a person for goodNo
alert_humanFire-and-forget notificationNo
escalateStart an escalation flow with a severity and contextNo

There are also helpers to check the status of a request or alert and to list your escalation flows.

Channels and escalation

A person can be reached on seven channels: Slack, SMS, WhatsApp, Telegram, Discord, email and voice call. You choose the order and the wait between steps.

For teams, escalation flows add roles. A step can target whoever is on call this week, their backup, or everyone. On-call rotates on a weekly schedule with overrides for holidays and swaps. Flows can be chosen automatically by request type, severity or tag, so a critical production change can go straight to a phone call while a content review waits in Slack.

When a short message is not enough, redphonr can send the request as a voice note on WhatsApp or Telegram, where the agent explains what it is about to do, and you can answer by voice.

Setup in two minutes

With Claude Code:

claude mcp add --transport http redphonr https://mcp.redphonr.com/mcp

With Claude Desktop, Cursor or any MCP client, add the server to your MCP config with your API key:

{
  "mcpServers": {
    "redphonr": {
      "url": "https://mcp.redphonr.com/mcp",
      "headers": { "Authorization": "Bearer rp_live_YOUR_KEY" }
    }
  }
}

Then tell the agent when to use it. The step-by-step tutorial has a system prompt you can paste.

When redphonr is the right tool

Use it when an agent acts on its own, outside a chat window, and the person who should approve is not watching a screen: a background agent processing invoices, an ops agent with cloud access, a sales agent sending email. That is where getting the question to a phone, and escalating when nobody answers, matters.

If your agent only runs inside a chat app where the user is already present, the framework’s built-in approval prompt may be enough. Our human-in-the-loop guide covers how to choose, and our comparison of the 10 best human-in-the-loop tools lists the alternatives.

Frequently asked questions

What is redphonr?

redphonr is a human-in-the-loop service for AI agents. It runs as an MCP server. When an agent calls one of its tools, such as request_approval, the agent pauses, redphonr contacts a person over Slack, SMS, WhatsApp, Telegram, Discord, email or a phone call, and the agent resumes with the person's decision as structured data.

Which agents and frameworks work with redphonr?

Any agent that can use an MCP server, including Claude Desktop, Claude Code, Cursor, Windsurf, the OpenAI Agents SDK, LangChain, CrewAI, Mastra and AutoGen. Agents that do not speak MCP can use the plain HTTP API.

What happens if nobody answers?

The request times out and returns the default you set, which should be deny. Before that, redphonr escalates through your channels in order, for example Slack first, then SMS, then a phone call, then the next person on call.

Is redphonr free?

redphonr is free to start and does not need a credit card. Paid plans add more requests, channels and team members.

How is redphonr different from PagerDuty?

PagerDuty is built to page engineers about incidents. redphonr is built for an agent to ask a question and get an answer back: approve or deny, a choice from a list, or a form. The answer is returned to the agent as data so it can continue.