GuidesStart here

What Murusai does

Your agent answers anyone who dials it. We decide whether it should, and we tell you the moment a flood starts.

The problem

A voice agent costs money per minute of conversation: the model, the speech, the carrier, the platform's own fee. That is fine when the calls are real. It stops being fine when somebody points a dialler at your number at two in the morning and you find out at nine.

Nothing in the usual stack stops this. A budget cap with your vendor does not decline the call, it declines your service, which means the attack ends with your agent switched off for everyone, including the customers who were going to buy something.

The shape of it

There are two things we do, and it is worth being clear which is which.

We watch

Every call is scored the moment it arrives, before your agent speaks. The score comes from what that caller has done to you, what the numbers around it have done to you, and what the same caller has done to everybody else we protect. When it crosses a line, you hear about it: webhook, email, text, or a phone call.

We end the call

On Guard, a call that scores badly enough is ended through your platform rather than merely reported. On a carrier number with the gate on, it is never connected at all, which means it never costs you a cent.

Watch is free for three numbers and stops nothing. Guard is what actually saves money. The difference is deliberate: we would rather you see us be right for a week before you pay us.

Three ways in

Connect a platform. If your agent runs on Vapi, Retell, ElevenLabs or Synthflow, you give us a key, we find your numbers, and calls start arriving. Nothing to deploy and no code; the dashboard walks you through each one under Connections.

Your platform
Vapi, Retell, …
Murusai
reads calls, scores, alerts
You
webhook · email · text

Ask us before you connect a caller. One HTTP call to GET /v1/score with who is calling and what they are calling, and you get back a score from 0 to 1, with where we would draw the line on it. You decide. This is the one that saves the most money, because a call you never answer is a call you never pay for.

Your server
a call is ringing
Murusai
GET /v1/score
Your server
connect · verify · refuse

Put the gate on the number. On a Twilio, Telnyx, SignalWire or Vonage number, the carrier asks us first. A caller who looks wrong is asked to press a digit; one who cannot is never connected. Your agent hears from nobody it should not.

Carrier
voice webhook
Murusai
score · challenge
Your agent
only real callers

Most people do the second and the third together, and tell us what happened afterwards. The own-stack guide lays out which to pick; the quickstart gets a first call scored.

What we never see

We do not receive call audio and we do not store what anybody said. For the live monitor we take the shape of a conversation (who spoke, when, for how long, whether they talked over each other) and never its words. What is stored is lengths, counts and hashes.

This is a product constraint, not a setting. It means some things are impossible for us on purpose, and we would rather say so here than have you discover it later.