One bad instruction can move real money.
Understand Singapore SAFR for AI agents: runtime identity, policies, approvals and decision records. Compare Durin’s controls with your institution’s responsibilities.
Without runtime controls
Transfer funds
- Amount
- S$25,000
Payment system
- Transferred
- S$25,000
Durin checks before execution
Transfer funds
- Amount
- S$25,000
- Identity
- Person, client, connection
- Policy
- Transfers require review
- Approval
- Awaiting a reviewer
Payment system
- Transferred
- S$0
Without runtime controls
Change Stripe product
- Product
- Pro plan
Stripe
- Price
- S$0
Durin checks before execution
Change Stripe product
- Product
- Pro plan
- Identity
- Person, client, connection
- Policy
- Price changes require review
- Approval
- Awaiting a reviewer
Stripe
- Price
- S$199
Without runtime controls
Delete Git branch
- Branch
- release/v2
Git repository
- Branch
- Deleted
Durin checks before execution
Delete Git branch
- Branch
- release/v2
- Identity
- Person, client, connection
- Policy
- Deletes require review
- Approval
- Awaiting a reviewer
Git repository
- Branch
- Preserved
Without runtime controls
Refund a payment
- Amount
- S$8,400
Payment system
- Refunded
- S$8,400
Durin checks before execution
Refund a payment
- Amount
- S$8,400
- Identity
- Person, client, connection
- Policy
- Refunds require review
- Approval
- Awaiting a reviewer
Payment system
- Refunded
- S$0
Without runtime controls
Share a Drive file
- Document
- Client records
Google Drive
- Access
- Public
Durin checks before execution
Share a Drive file
- Document
- Client records
- Identity
- Person, client, connection
- Policy
- Sharing requires review
- Approval
- Awaiting a reviewer
Google Drive
- Access
- Private
Without runtime controls
Send a customer email
- Attachment
- Payroll.csv
Email system
- Delivery
- Sent
Durin checks before execution
Send a customer email
- Attachment
- Payroll.csv
- Identity
- Person, client, connection
- Policy
- External email requires review
- Approval
- Awaiting a reviewer
Email system
- Delivery
- Not sent
Without runtime controls
Archive a Slack channel
- Channel
- #incident-room
Slack
- Channel
- Archived
Durin checks before execution
Archive a Slack channel
- Channel
- #incident-room
- Identity
- Person, client, connection
- Policy
- Archiving requires review
- Approval
- Awaiting a reviewer
Slack
- Channel
- Preserved
Without runtime controls
Cancel a subscription
- Customer
- Acme Ltd
Billing system
- Subscription
- Cancelled
Durin checks before execution
Cancel a subscription
- Customer
- Acme Ltd
- Identity
- Person, client, connection
- Policy
- Cancellations require review
- Approval
- Awaiting a reviewer
Billing system
- Subscription
- Active
What is Singapore SAFR?
SAFR stands for Safeguards for Agentic Finance at Runtime. Developed by the financial industry under the Monetary Authority of Singapore’s BuildFin.ai initiative, it is a reference framework for checking an AI agent’s authority, deciding when people intervene and recording decisions before actions reach financial systems.
Durin is an MCP governance gateway. It checks identity, access policies and required approvals for requests routed through it. The mapping below explains which SAFR concepts those controls support and which responsibilities stay with your institution.
What SAFR calls for. What you get with Durin.
SAFR (Safeguards for Agentic Finance at Runtime) addresses the gap between model testing and later audit. Put controls in place before agents gain production authority.
Why runtime controls matter · SAFR white paper v1.0Know who’s acting.
- SAFR calls for
- Agent Identity: a verified agent and clear authority to act.
- You get from Durin
- The person, client, membership and connection checked on every request.
You supply the agent registry and financial mandates.
Explore access checksOne request. Every identity check.
- PersonCurrent membership
- ClientAuthenticated session
- ConnectionScoped access
Make your rules executable.
- SAFR calls for
- Controls Repository: the rules and limits each action must meet.
- You get from Durin
- Published policies for teams, connections and tools. Block actions or require review.
Your systems enforce transaction limits, exposure and sanctions checks.
See access policies- Read a record
- Allow
- Change a record
- Require review
- Delete a resource
- Deny
New version → earlier approvals invalidated
Decide before the action.
- SAFR calls for
- Disposition Engine: a binding decision, with human oversight when needed.
- You get from Durin
- Allow, deny or hold for independent review. Approvals are exact and expire.
Your team chooses the reviewers and escalation times.
See exact approvalsUseful work goes through.
Identity, access and policy checks pass. The upstream system still checks its own permissions.
Try this requestA different person reviews it.
The exact action waits for an authorized reviewer. Approval applies to that request, within its expiry.
Try this requestRevoked access stays blocked.
Current membership fails the check. The governed tool action is not dispatched.
Try this requestHave the record ready.
- SAFR calls for
- Audit Log: a tamper-evident history of decisions and their basis.
- You get from Durin
- Request, policy, reviewer and outcome metadata, ready to inspect and export.
Your team sets retention and verifies integrity requirements.
Explore request activity- Request
- Change a record
- Identity
- Person + client + connection
- Policy
- Published version
- Reviewer
- Independent approver
- Decision
- Approved once
- Execution
- Recorded separately
How does SAFR differ from the MAS AI guidelines?
SAFR describes a runtime governance approach for agent actions. The MAS AI risk management guidelines set supervisory expectations for financial institutions’ wider use of AI. Use the official publications to establish their different scopes; this page maps Durin’s implementation to selected SAFR concepts.
| Reference | Focus | Useful evidence |
|---|---|---|
| SAFR | Authority and oversight at the point an agent acts. | The request, applicable controls, decision and action trace. |
| MAS AI guidelines | AI risk management across a financial institution. | Institution-wide governance, assessments and lifecycle controls. |
| ISO/IEC 42001 | An organization’s AI management system. | Policies, risk treatment, operational records, audits and improvement. |
What does a governed agent decision record show?
When a policy requires approval, Durin holds the requested change for independent review. An authorized reviewer approves the exact request, then the agent retries it before the approval expires. Request activity links the decision and execution outcome through the same execution identifier.
- Inspect the approval: requester, reviewer, proposed action, argument digest, policy and schema versions, and expiry.
- Match the approval and timeline events using their execution identifier. Approval required means the action has not run.
- After the exact retry, inspect the outcome separately from the decision. An allowed decision means checks passed; use the execution status to establish what happened.
Use the execution identifier to connect a request’s approval decision with its final execution status. In Admin → Audit, filter the activity and choose Export a file to download JSON. Review the records alongside the approval details; metadata-only retention does not include every argument or response.
[
{
"id": "event:demo-held-request",
"executionId": "00000000-0000-4000-8000-000000000001",
"decision": "approval",
"status": "approval_required"
},
{
"id": "event:demo-exact-retry",
"executionId": "00000000-0000-4000-8000-000000000001",
"decision": "allow",
"status": "completed"
}
]Scope and SAFR sources
SAFR means Safeguards for Agentic Finance at Runtime. It is an industry reference developed under MAS’ BuildFin.ai initiative, not regulatory guidance or supervisory expectations. This mapping claims neither MAS endorsement nor full SAFR implementation.
- Governance Envelope: Durin records governed request metadata. Add the complete action trace and verify its origin in your own workflow.
- Observe: Durin does not expose a separate SAFR Observe disposition. Add the monitoring workflow your institution needs.
- Coverage: requests outside Durin, financial controls and settlement remain with your systems.
Plan your SAFR governance rollout
Discuss agent access, approval controls, and the records your team needs for its SAFR work.
Tell us about your team
We’ll follow up by email to discuss your requirements.
Put controls in place before production access.
Start with one agent workflow. Define its access, review rules and evidence.
Create an account