AI agent guardrails for outbound calls: enforced on the server, not in the prompt.
Every safety rule that matters — confirmed headcount, separate approval, calling hours, scoped keys, instant revoke and full logging — is enforced server-side, whatever model or assistant is driving.
Why prompt-level guardrails are not enough
A prompt instruction like "always ask before calling" works most of the time, but it is not a safety mechanism. A model can misinterpret a prompt, a user can override it, and an automation script can skip it entirely. If the only thing between your AI agent and a live phone call is a line in a system prompt, you have no guardrail — you have a suggestion.
FoxEra Calls moves every critical safety rule to the server. The API refuses to start a campaign that has not been through the approval flow, regardless of what the client asked for. A prompt can encourage good behaviour; a server-side check enforces it.
Confirmed headcount before any call
Every campaign requires the exact number of leads to be confirmed before approval. When your AI assistant previews a campaign, FoxEra returns the headcount, the estimated duration and the estimated cost. Your assistant is told to show you this preview and wait for your yes.
This rule is enforced on the server. A request to approve a campaign without a valid preview is rejected. There is no way to skip it from the API, the MCP server or the dashboard. Read more about stopping an AI agent from acting without approval.
Separate approval step
Creating a campaign and approving a campaign are two distinct actions. Creating it sets up the leads, the script and the calling agent. Approving it starts the calls. They cannot be combined into one request.
This separation exists so that your assistant (or your own code) can prepare everything, show you the plan, and only dial after you have explicitly confirmed. If you change your mind between creation and approval, you can cancel the campaign and nobody is phoned.
You can also stop a campaign mid-way if something is wrong. Stopping takes effect immediately — no further calls are placed.
Calling hours and TPS screening
Calls are placed only within the hours you configure in your account settings. Outside those hours, an approved campaign simply waits. This prevents early-morning or late-night calls regardless of when your assistant or automation sends the approval.
FoxEra also provides guidance on screening your list against the Telephone Preference Service (TPS) and Corporate Telephone Preference Service (CTPS) registers before calling. Business-to-business cold calling is legal in the UK, but sole traders and individuals registered on the TPS should not be called. Read the full rules on UK cold calling legality.
Scoped keys and instant revoke
Every connection method is scoped to one workspace:
- MCP connector — uses OAuth. Changing your password disconnects every assistant immediately.
- API keys — each key (format
fxk_...) works inside one workspace only. Revoking a key stops all access from that key instantly.
No key or connector can reach another customer's data. If you suspect a key has been compromised, revoke it from your developer settings and generate a new one. The old key stops working the moment it is revoked.
Full logging of every action
Every action taken through the API, MCP server or dashboard is logged with a timestamp and the identity of who (or what) performed it. This includes:
- Lead creation, updates and deletions.
- Campaign creation, approval, cancellation and completion.
- Script edits and agent selection changes.
- Call outcomes, transcripts and recording access.
You can review the log from your account at any time. This audit trail exists regardless of whether the action was taken by you, your assistant or a piece of automation code. It means you can always answer the question "who did what and when" for any call your account has ever placed.
For a full comparison of connection methods, see MCP server vs API key.
Frequently asked questions
Can an AI agent start calls without my approval?
No. Every campaign needs a confirmed headcount and a separate approval step before anyone is phoned. This is enforced server-side and cannot be bypassed from any client.
What happens if I revoke an API key while a campaign is running?
Revoking a key stops all future API access from that key immediately. A campaign that is already running continues to completion because it was already approved, but no further actions can be taken with the revoked key.
Are the safety rules different for the MCP server and the API?
No. The same rules apply to both connection methods and to the dashboard. Confirmed headcount, separate approval, calling hours, scoped access and full logging are enforced on the server regardless of how you connect.
How much does it cost?
Calls cost from 12p per connected minute with no subscription. New accounts get £7 of free calling credit. The safety features are built in at no extra cost.