Delete Approvals
Approval gateway for destructive operations — delete records, module changes, and gated actions
Delete Approvals
Destructive operations are routed through the Approval Gateway before execution. This means the AI assistant cannot permanently delete data or install/remove modules without a human reviewer confirming each request.
Which Operations Require Approval
| Tool | Operation | Requires Approval |
|---|---|---|
odoo_unlink | Delete records | Always |
odoo_apps | queue_install | Yes |
odoo_apps | queue_upgrade | Yes |
odoo_apps | queue_uninstall | Yes |
odoo_files | delete attachment | Yes |
Approval State Machine
Approval States
| State | Description |
|---|---|
pending | Awaiting human review — operation is held, not yet executed |
approved | Reviewer approved — the operation was executed immediately after approval |
failed | Reviewer approved but execution encountered an error |
rejected | Reviewer rejected — no action taken, records unchanged |
expired | 24 hours passed without a decision — automatically marked expired |
How Approvals Surface
Systray Notification
When an AI client creates a new approval request, a notification badge appears in the Odoo systray (top-right corner of the Odoo UI):
[!NOTE] Screenshot — Systray Approval Badge
Place a screenshot of the Odoo systray showing the MCP approval notification badge here. Suggested filename:
approval-systray-badge.png
Clicking the badge opens the list of pending approvals.
Approvals List View
[!NOTE] Screenshot — MCP Approvals List View
Place a screenshot of the MCP Server → Approvals list showing pending requests with their model, operation, and action buttons. Suggested filename:
approval-list-view.png
Navigate to MCP Server → Approvals to see all pending requests. Each row shows:
- Operation type and model
- Records targeted (IDs)
- Requested by (user name and AI client name)
- Request timestamp and expiry time
- Approve and Reject buttons
Via odoo_approval Tool
The AI itself can list and manage approvals using the odoo_approval tool (admin only). See Admin Tools.
Via odoo_apps MCP Cards
For odoo_apps operations, an MCP Apps operator card is rendered in the AI chat client with Approve/Reject buttons.
Approval Flow Example
Approvals via odoo_approval Tool (Admin)
{
"name": "odoo_approval",
"arguments": {
"sub_action": "approve",
"approval_id": 7
}
}