Aval

GuidesAI agents and human approval

Claude and ChatGPT notifications vs Aval: what's the difference?

A notification tells you to go back to the app. Aval asks the question with buttons and brings your answer back to the agent. When to use which.

· by Antoine

Claude and ChatGPT can already make your phone buzz. So why add another tool for an agent to reach you? People ask me, and I asked myself too. The answer fits in one sentence: a notification tells you something happened, Aval asks you a question and brings your answer back to the agent. This guide covers what notifications actually do today, and where each one fits.

What ChatGPT notifications do

ChatGPT sends a push notification, an email, or both, when a scheduled task has run: a morning summary, a reminder, a watch. You set it in Settings, then Notifications. The email tells you the task is done; to read the result or follow up, you open ChatGPT.

ChatGPT's agent mode, the one that browses and fills in forms, asks for confirmation before sensitive steps such as a purchase, and lets you take over to sign in or type a card number. But that confirmation happens in the conversation: you have to be in ChatGPT to give it.

What Claude notifications do

In the Claude app, notifications are mostly about Claude Code. When a session runs in the cloud, or on your computer with Remote Control, Claude can send a notification to your phone when a long task finishes or when it needs a decision. You open the app, see the session, and can answer from there.

On a computer, Claude Code can also run a command at certain moments through hooks, for example when it is waiting for a permission. With one line of curl to a notification service, your phone buzzes. The guide Claude Code on your phone shows both approaches.

All of this works well, on one condition: you are in Claude, with a claude.ai account, and the session in question is a Claude Code session.

The real difference: notifying or asking

A notification is an alarm clock. It says “come and look”, and you go get the rest in the app. Aval is a question. Your agent calls the ask_human tool with a question and its possible answers; you get the question on Telegram or by email, with one button per answer; you tap, and the answer goes back into the agent's tool, and it carries on.

Claude or ChatGPT notificationsAval
What arrives“Your task is done”, “Claude needs you”The question itself, with context: amount, recipient, text to send
To answerOpen the app and find the conversationOne button in Telegram or in the email
Who can send itThat app onlyAny agent that speaks MCP or HTTP: Claude, ChatGPT, Le Chat, Cursor, Claude Code, n8n, a script
What the agent getsNothing: it waits for you to come back and writeYour exact answer, plus a comment if you add one
No answerThe conversation stays on holdThe question expires at the chosen time, and the agent knows that means no

Four reasons to prefer a question

One place, whatever the agent

If you use Claude to write, Cursor to code and n8n for automations, you have three places to watch, and two of them can't notify your phone. With Aval connected everywhere, every question lands in the same Telegram chat, or in your inbox, with the name of the agent asking.

Answer without opening the session

A decision like “Pay the OVH invoice of €42.90?” takes a second when the amount is right there. An Aval question carries everything you need to decide, and the answer is a button. No need to reopen the app, find the right session and type “yes, go ahead”.

An answer the agent can read

This is the difference that matters most when the agent runs alone, at night, in a loop. A notification brings nothing back to it: until you return, it stays stuck, or worse, it decides alone. With Aval, the answer comes back into its tool. It can also ask, note that the question is pending, move on to something else, and read the answer on the next round. That is how the agent that builds taraxe.com works, as described in running an AI agent in a loop over a task graph.

A record of your decisions

Every question stays in your Aval account, with the answer given and the time. In Telegram, the message also shows “Read by the agent” once the agent has picked up your answer. When you wonder three days later “did I say yes to that?”, the answer is there.

When a notification is enough

Aval doesn't replace everything. If you only want to know a long job is done so you can review the result, the app's notification does the job well, and it's free. Same if you're already in the Claude app following the session closely.

Aval is for when a decision has to reach you: paying, sending, deleting, publishing, choosing between two options. For which ones, see what an AI agent shouldn't do on its own. The two work well together: the notification for “it's done”, Aval for “may I?”.

Try it in two minutes

In Claude or ChatGPT, add a connector with this address:

https://www.taraxe.com/aval/mcp

For Claude Code, one command is enough: claude mcp add --transport http aval https://www.taraxe.com/aval/mcp, then /mcp. Either way, you sign in with your email, the account is created with 40 free credits, and you can link Telegram from your account. Then tell your agent: “before sending this email, ask me with Aval”.

Frequently asked questions

Aren't Claude or ChatGPT notifications enough?

To know a task is done, yes. To give your approval remotely, no: the notification brings you back to the app, while Aval asks you the question with its buttons and brings the answer back to the agent.

Does Aval work in ChatGPT?

Yes. Aval is an MCP server: it connects as a connector in ChatGPT, Claude, Le Chat and Grok, and in Claude Code, Cursor or VS Code. The Aval page shows the steps for each.

What happens if I don't answer?

The question expires after one hour by default, or at the time the agent chose, up to seven days. An expired question never counts as approval: the agent doesn't take the action.

Do I need another app?

No. If you have Telegram, questions arrive in your chat with Aval. Otherwise they arrive by email, with one button per answer.