Comparison

MCP Guard vs saroku-guard

saroku-guard is an open guard model for agent actions that you can run locally for free. MCP Guard is built on the same kind of model, is hosted, and answers nine questions instead of one. On a public benchmark we measured the two as on par, with MCP Guard slightly ahead but not significantly so.

4 min readLast updated

Checks run on our GPUs in Switzerland. Request payloads are not stored.Security

In 30 seconds

  • Both are 184M-parameter DeBERTa models that judge an agent action before it runs.
  • saroku-guard is open, runs locally, costs nothing and answers one question: safe or unsafe.
  • MCP Guard is a hosted API that answers nine questions in one pass (violation type, severity, blast radius, injection, grounded arguments and more).
  • On the R-Judge test half we measured AUROC 0.855 vs 0.824. The difference is not statistically significant.

Code and dense tables are folded away. Open any of them on demand.

At a glance: MCP Guard vs saroku-guard

MCP Guard compared with saroku-guard, feature by feature
 MCP GuardSaroku-guard
ModelDeBERTa-v3-base, 184MDeBERTa, 184M (tie)
Where it runsHosted API and MCP serverLocally, on your own hardware
Price$0.20 per 1,000 checksFree (you pay for your own compute)
Questions per checkNineOne (safe or unsafe)
Latency, same GPU, batch 1~15 ms for all nine questions~13 ms p50 for one question (our measurement)
Network hopYes, ~100 ms typical from EuropeNo
Data leaves your machineYes (processed in memory in Switzerland, not stored)No
R-Judge test AUROC (our measurement)0.8550.824 (difference not significant)
Approval policy and blast radius scoresYesNo

The verdict

If a single safe/unsafe score run locally covers your needs, saroku-guard is a good free choice; choose MCP Guard when you want the nine-question breakdown without running a model yourself.

Two models of the same family

saroku-guard is an open guard model, distributed through the saroku package on PyPI. It is a 184M-parameter DeBERTa model that scores a proposed agent action as safe or unsafe. It is small enough to run on a laptop CPU or a modest GPU, and it costs nothing to use.

MCP Guard's model is also DeBERTa-v3-base with 184M parameters. We fine-tuned it on about 31,000 labelled agent actions: public agent-safety data plus our own labelled benign and adversarial tool calls. Instead of one output, it has nine heads that answer, in the same forward pass:

  • safe: probability the action is safe to run now
  • violation: none, policy violation, scope violation, injection, goal drift or corrigibility
  • severity, destructive, exfiltration, injected
  • approval_policy: auto-approve, require a human, or reject
  • blast_radius: read-only, local or reversible write, or production-mutating / external side effect
  • args_grounded: whether the arguments are supported by what the user asked

What we measured on R-Judge

R-Judge (Yuan et al., 2024) is a public benchmark of agent interaction records labelled for safety risk. We split it in half by trajectory, used one half only for model selection, and report the other half, 304 trajectories that were never used for any choice. Neither model was trained on R-Judge.

AUROC, R-Judge test half
MCP Guard0.855
saroku-guard0.824

A paired bootstrap on those 304 trajectories gives an interval for the difference that includes zero. In plain terms: MCP Guard is on par with or better than saroku-guard on this benchmark, and 304 trajectories are too few to say more. We are building a larger hand-labelled test set to settle it, and we would rather you test both on your own traffic than rely on our numbers.

AUROC measures ranking, not calibration. Both models need thresholds fitted to your own traffic; see calibrated scores and thresholds.

Where saroku-guard has the edge

  • It runs locally. No network round trip, no account, and no data leaves your machine. For air-gapped environments, or when your policy forbids sending tool arguments to any third party, that settles it.
  • It is free. You pay only for your own compute.
  • It is slightly faster for its one question. In our measurement on the same RTX 4090, about 13 ms p50 at batch 1, against about 15 ms for MCP Guard's full nine-question check. Over the internet, MCP Guard also carries the network hop.
  • It is open. You can inspect it, fine-tune it and pin a version indefinitely.

Where MCP Guard has the edge

  • Nine answers instead of one. A safe/unsafe score tells you whether to worry; the other heads tell you what to do. blast_radius and approval_policy map directly onto approval rules, args_grounded catches hallucinated arguments, and injected flags actions driven by a tool result rather than the user.
  • A verdict out of the box. The API applies a default rule (block if P(unsafe) ≥ 0.8 or the policy head says reject; ask if P(unsafe) ≥ 0.3, it says require_human, or args_grounded < 0.5) and returns the raw scores so you can apply your own.
  • Nothing to operate. No GPU to provision, no model to update. It is also an MCP server, so MCP clients can call it as a tool.
  • Training data aimed at tool calls. Besides public agent-safety data, it includes our own labelled benign tool calls and adversarial ones with tampered arguments, so it sees ordinary work as well as attacks.

Which one to choose

Choose saroku-guard if you must keep all data local, want zero cost, or only need a single safety score to gate a small set of tools.

Choose MCP Guard if you want the breakdown (blast radius, approval policy, grounded arguments, injection) to drive different handling per call, and you are comfortable with a hosted API that processes payloads in memory in Switzerland without storing them.

Either way, a guard model reduces risk; it does not guarantee safety. Keep least privilege and deterministic rules for known-bad patterns.

Frequently asked questions

Is MCP Guard better than saroku-guard?
On the R-Judge test half we measured AUROC 0.855 vs 0.824, but the difference is not statistically significant. Treat them as comparable on that benchmark; the practical differences are the nine heads and hosted vs local.
Can I self-host MCP Guard?
Not today. MCP Guard is offered as a hosted API and MCP server only.
Could I run both?
Yes. Some teams run a local model as a first filter and send only the calls it flags for a more detailed check. Measure whether the extra step pays for itself on your traffic.

Sources

Last updated . MCP Guard reduces the risk of harmful agent actions; it does not guarantee safety. Keep deterministic controls in place alongside it. Third-party names are used only to describe their products; we are not affiliated with them.