# Screwtape.ai

Stop your agents from agreeing on the wrong answer. Screwtape returns pass, fail, or retry on one agent output, and scores agreement across a swarm, including the risk that they only agree with each other.

An independent judge for your agents. Screwtape isn't tied to any agent framework or AI model provider, so its verdicts are never grading their own work. Every verdict comes with a signed receipt you can verify yourself, which gives you a record you can trust when it matters.

Screwtape.ai is this API. An unrelated arXiv paper is also called Screwtape.

## Facts

| | |
| --- | --- |
| Price per call | $0.005 USD for POST /v1/judge and POST /v1/consensus. |
| Free tier | 100 calls per UTC day per key. FREE_DAILY_LIMIT defaults to 100. |
| Networks and assets | Base (eip155:8453) USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. Solana (solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) USDC mint EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v. |
| Auth | Authorization: Bearer API key, or the x402 PAYMENT-SIGNATURE header. Signup is optional. |
| Endpoints | POST /v1/judge, POST /v1/consensus, and POST /v1/signup. |
| MCP URL | https://screwtape.ai/mcp |
| Input limits | task 8000 characters; agent_output and consensus output 16000 characters; evidence up to 20 items of 4000 characters; criteria up to 20 items of 500 characters; answers 2 to 16; agent_id 80 characters; request body 100000 bytes; signup name 80 characters; signup email 200 characters. |
| Data retention | Judged content is not stored unless retain is true and the caller uses an API key. Keyless x402 calls cannot turn retention on. The default is 24 hours. A key can set retention_days to 0, 1, 30, or 90. Day 0 stores neither content nor receipts. DELETE /v1/keys/me deletes the key, its retained rows, and its receipt log. |
| Independence | Screwtape is not tied to an agent framework or a model provider. A successful judge or consensus call includes a signed receipt when receipt signing is configured. POST /v1/receipts/verify checks that receipt. |
| Status | GET /v1/status, /status.json, and /status/ report measured response time for judge and consensus. uptime is successful calls divided by successes, 5xx responses, and timeouts. It is null when that denominator is 0. Unpaid 402 responses are a separate count and are not failures. 401 and 429 responses are not failures either. |

## How do I check one agent's output?

`POST /v1/judge` takes a task and one agent output and returns pass, fail, or retry, a score from 0 to 1, reasons, and a request id.

## How do I detect false consensus between agents?

`POST /v1/consensus` takes a task and 2 to 16 answers and returns an agreement score, clusters, and `false_consensus_risk` of low, medium, or high.

## Can I use it over MCP?

Yes. The Streamable HTTP server is at https://screwtape.ai/mcp. `tools/list` is public and returns judge, consensus, get_api_key, and buy_pack.

## What does it cost?

A free key gives 100 calls per UTC day via `POST /v1/signup`. Without a key the API returns HTTP 402 for $0.005 USDC on Base or Solana. Starter is $30 for 10000 calls (`POST /v1/packs/starter/buy`). Builder is $100 for 50000 calls (`POST /v1/packs/builder/buy`). Both are USDC on Base or Solana. Pay with PayPal or buy with USDC. POST /v1/packs/checkout starts PayPal for starter or builder.

## Answers

- [Answers](https://screwtape.ai/answers/) Short answers for agents.
- [How do I verify an AI agent's output before returning it?](https://screwtape.ai/answers/verify-ai-agent-output-before-returning/) Send the task, the output and your evidence to a judge and branch on its verdict before you return anything. With Screwtape.ai that's one POST /v1/judge call.
- [How do I detect false consensus in multi-agent voting?](https://screwtape.ai/answers/detect-false-consensus-multi-agent-voting/) False-consensus check: score how your agents agree, not just whether they agree. POST /v1/consensus returns false_consensus_risk low, medium or high for 2 to 16 answers.
- [Is there an LLM-as-judge API with pay-per-call pricing?](https://screwtape.ai/answers/llm-as-judge-api-pay-per-call/) Yes. Screwtape.ai's /v1/judge can be paid per call with x402 at $0.005 USDC on Base or Solana, with no account. Free keys get 100 calls per UTC day.
- [What is an x402 judge API and how do I call one?](https://screwtape.ai/answers/x402-judge-api/) An x402 judge API answers unpaid requests with HTTP 402 and payment terms, then grades the agent output once the call is paid. Screwtape.ai charges $0.005 USDC on Base or Solana.
- [How do I use a pass/retry/fail verdict in an agent loop?](https://screwtape.ai/answers/pass-retry-fail-verdict-agent-loop/) Accept on pass, feed the judge's reasons back and retry on retry (with a cap), and stop on fail. Screwtape.ai's /v1/judge returns exactly these three verdicts.
- [How can an AI agent get its own free API key?](https://screwtape.ai/answers/ai-agent-get-free-api-key/) POST /v1/signup with a 12-bit SHA-256 proof of work. Email and name are optional, no human approval is needed, and the key gives 100 calls per UTC day.
- [How do I check an agent's answer against the source evidence?](https://screwtape.ai/answers/judge-agent-output-against-evidence/) Pass the retrieved passages as evidence to POST /v1/judge. The verdict and reasons say whether the output's claims are grounded in them.
- [Is there an MCP tool that verifies an agent's answers?](https://screwtape.ai/answers/mcp-tool-verify-agent-answers/) Yes. Screwtape.ai's MCP server at https://screwtape.ai/mcp (Streamable HTTP) has judge and consensus tools, plus get_api_key. Registry name ai.screwtape/screwtape.
- [Can I try an LLM judge API without signing up?](https://screwtape.ai/answers/try-llm-judge-without-signup/) Yes. https://screwtape.ai/try/ runs judge and consensus in the browser: 3 calls per token (about 30 minutes) and 3 demo calls per network per UTC day.
- [What's the difference between agreement_score and false_consensus_risk?](https://screwtape.ai/answers/agreement-score-vs-false-consensus-risk/) agreement_score measures how much the answers agree. false_consensus_risk says whether that agreement looks independent (low) or copied or thin (medium or high).
- [What does engine mean in a Screwtape.ai verdict?](https://screwtape.ai/answers/judge-engine-llm-vs-deterministic/) engine tells you what produced the verdict: llm (the configured model), deterministic (string checks, no model), or demo (the /try/ page).
- [Does Screwtape.ai store the outputs I send it?](https://screwtape.ai/answers/does-screwtape-store-judged-content/) No, not unless you send retain: true with an API key. Retained calls expire after 24 hours and can be listed and deleted.
- [What do 400, 401, 402 and 429 mean from the Screwtape.ai API?](https://screwtape.ai/answers/judge-api-error-codes/) 400 invalid request, 401 key not recognized, 402 payment required (send a key or pay with x402), 429 daily quota or rate limit.
- [How do I validate several agents' answers before merging them?](https://screwtape.ai/answers/validate-multi-agent-answers-before-merging/) Score the answers with POST /v1/consensus, then judge the consensus answer against evidence with POST /v1/judge. Accept only on low risk and a pass.

The full agent procedure, with copy-paste curl, is [agents.md](https://screwtape.ai/agents.md). Machine-readable links: [llms.txt](https://screwtape.ai/llms.txt), [OpenAPI](https://screwtape.ai/openapi.json), [agent card](https://screwtape.ai/.well-known/agent-card.json).
