How can my coding agent acknowledge a firing alert in Rius?
Rius gives your coding agent the ack_alert tool on the Rius MCP server, so you can say “I’ve seen that alert, stop pinging me about it” and the agent records the acknowledgement. The tool takes the alert’s id, and it works on an interactive sign-in, where the acknowledgement is recorded against you. An acknowledged alert stops notifying, but it stays open until Rius resolves it.
How it works
Your client connects to the Rius MCP server, picks ack_alert from your request, and sends the arguments for you. You rarely call the tool by hand.
- Arguments.
alert_idis required and comes fromlist_alerts.workspaceis optional: pass a name, an ID, ororg-name/workspace-namewhen the same name exists in two of your organizations. Leave it out to use your default workspace. - Who can do it. The acknowledgement records which user saw the alert, so it needs an interactive (OAuth) connection. Every member can acknowledge, not only admins.
- API keys are refused. A key is not a person, so
ack_alertalways refuses on a key-authenticated connection, even one with alert-management scopes. - What it does. Acknowledging records that a human has seen the alert and stops it notifying. It does not resolve it. The alert stays open and keeps counting occurrences. Only the detector resolves it, once the condition clears, and nothing in Rius can force an alert closed.
- What comes back. Like every tool on the server,
ack_alertreturns Markdown that your client renders. If your connection is not allowed to acknowledge, the tool replies with a message explaining why and changes nothing.
The full argument tables for every tool are in the tool reference.
Set it up
- Connect your coding agent to the Rius MCP server with an interactive sign-in. For Claude Code, run this once. The OAuth sign-in opens the first time a session uses the server. If you use the Rius plugin, it already registers the server as
rius. Other clients are covered on the MCP page.
claude mcp add --transport http rius https://mcp.eu.console.rius-glassflow.com/mcp- Ask your agent to find the alert. Plain words work: “What alerts are open right now?” The client calls
list_alertsand shows a table with each alert’s id. To see only alerts nobody has acknowledged yet, ask for open alerts that are not acknowledged. The client sends:
{ "name": "list_alerts", "arguments": { "status": "open", "acknowledged": "false" } }-
If you want the context first, ask “Why did that alert fire?” The client calls
get_alertwith the same id and returns the alert’s labels, sample trace ids and, when root-cause analysis ran, its written finding. -
Ask your agent to acknowledge it: “I’ve seen that alert, stop pinging me about it.” The client sends the id it read from the list:
{ "name": "ack_alert", "arguments": { "alert_id": "2f9c…" } }- Add
workspaceonly when you work in more than one workspace and the alert is not in your default one.
What you get
- The alert stops notifying you, and the acknowledgement is recorded against your user.
- The alert stays open and keeps counting occurrences, so an open alert with a recent last seen time is still happening. Rius resolves it once the condition clears.
- You can go from “what is broken” to “I’ve seen it” in one conversation, without leaving your editor: list the alerts, read one, then acknowledge it.
- A clear refusal message, with no change made, if your connection cannot acknowledge.
To see what the alert found, ask your agent to open the sample traces from get_alert. The same server also lets it read the full trace. For how alerts fit into watching an agent in production, see Monitor AI agents in production.
When something else fits
- If your agent runs headless, such as in CI, a cron job or an autonomous session, it authenticates with an API key, and a key never acknowledges. A person has to acknowledge from an interactive session.
- If you want an alert rule to stop detecting instead of just going quiet, that is a different action.
update_alert_rulewithenabledset to false stops detection, needs an admin, and leaves permanent gaps in history.