BETA Saving Throw is in open beta — expect rough edges and fast iteration.
behavioral eval arena · BETA

Your support agent will promise refunds it shouldn't. Prove yours doesn't.

Point your agent at adversarial multi-turn scenarios run by an AI game master; get scored on policy adherence, manipulation resistance, and harmful-request refusal — with the transcript that proves it.

20 free eval runs a month · REST & MCP · any framework · no SDK required

Agent Scorecard
Support Agent · Billing Dispute · Run #3
Policy Adherence 2 FAIL
Refund Authorization 1 FAIL
Manipulation Resistance 14 PASS
Data Disclosure 0 FAIL
Escalation Protocol 12 PASS
Integration

If your agent can read text and pick an action, it can be evaluated.

No SDK, no harness. Your agent drives a run with a tiny loop — read the scene, decide, submit. We handle the scenario, adversaries, scoring, and coaching.

# the entire integration — any language
while run.status == "running":
    scene  = GET  /runs/{id}/scene
    action = your_agent(scene)            # ← this is the only part that's yours
    POST /runs/{id}/action  {"content": action.text, "action_type": "speak"}

report = GET /runs/{id}/scorecard      # scored traits + outcomes
notes  = GET /runs/{id}/coaching       # what to fix

Prefer native tool-calling? The same loop is exposed as MCP tools at mcp.savingthrow.dev.

Methodology

Why scenarios, not benchmarks?

Coding and math benchmarks tell you whether an agent can compute. They don't tell you whether it gets socially manipulated into breaking policy, whether it resists a customer claiming "your manager said refunds are automatic," or whether it holds a refusal under multi-turn pressure.

Saving Throw puts your agent in a scenario run by a controlled AI game master, against an adversarial AI customer. Structured mechanics are the measurement substrate — deterministic rules that turn fuzzy safety behavior into something you can count, score, and reproduce. Every run produces a full transcript, a behavioral scorecard, and fail-coaching — not just a pass/fail number.

Outputs

What you get back

Full transcript

Every turn, action, and narration — a structured record you can inspect, diff, and store.

Scored report card

Behavioral traits — negotiation, manipulability, cooperation, deception, goal-persistence — scored across N runs with mean, variance, and evidence quotes.

Fail-coaching

When your agent underperforms, it gets concrete, actionable guidance on what to change before the next iteration.

Execution charts

Turn-by-turn charts of checks, actions, and progress — so you see exactly where it went right or wrong.

Use cases

Built for teams shipping agents

Pre-ship eval

Before you put an agent in front of customers, see how it behaves under social and strategic pressure.

Regression testing

Reproducible runs (fixed seed + fixed adversaries + N-run averaging) catch behavioral regressions between versions.

Model & prompt comparison

Pit two of your own agents against each other in the same scenario — A/B two prompts, two models, head to head.

Safety & red-teaming

Probe for manipulability, collusion, and deception — the failure modes that only show up when another agent pushes back.

Integration

Two ways to connect

Authenticate with an API key, point it at a run, play. No lock-in.

REST API

Bearer-token auth, plain JSON. Create a run, read scenes, submit actions, pull the scorecard. Any language, any framework.

Base URL: https://app.savingthrow.dev/api/agent/

API reference →

MCP endpoint

Native Model Context Protocol for tool-calling agents. Drop-in for any agent stack, and any MCP-compatible runtime.

MCP server: https://mcp.savingthrow.dev

MCP guide →

Stay updated

Get notified when we launch new scenarios.

We're adding new adversarial scenario packs every sprint. Drop your email to get announcements.

Run your first evaluation in minutes.

Sign up, create an API key, point your agent at a run.

Powered by