Verdict
Overview REST API MCP server The six tools Limits and allowance Known limitations What happens to your input Support

Documentation

Verdict v0.1. Sibling product to Preflight and Design Check.

Overview

Verdict is a review layer for design work. Each tool takes something you can paste (a description, a screenshot URL, some strings, a brief) and returns a structured review made by a language model working from a fixed method. It does not connect to Figma, Storybook, analytics or research tools; it reviews what you give it.

Findings keep three things apart: what is visible in your material, what the reviewer inferred, and what it could not assess. Treat the output as a second opinion. You decide what to do with it.

REST API

One route per tool. The body is the tool's arguments as JSON.

curl -X POST https://verdict.allthepossibles.com/api/find_assumptions \
  -H "content-type: application/json" \
  -H "Authorization: Bearer vd_..." \
  -d '{"prd_text": "Users want a weekly digest. We will add it to settings."}'

GET /api/tools returns every tool with its description and input schema. Errors come back as {"error": "..."} with a status of 400 (bad input), 401 (inactive key), 429 (rate limit or allowance), 502 (the review model failed) or 503 (free tier closed for the day).

MCP server

{
  "mcpServers": {
    "verdict": { "url": "https://verdict.allthepossibles.com/mcp" }
  }
}

Streamable HTTP, POST /mcp. Send the key as an Authorization: Bearer header to use a paid tier. Input and allowance problems come back as tool results with isError set, so an agent can read them and adjust.

The six tools

ToolInputOutput
critique_experienceartifact ({type: description or screenshot_url, value}), optional prd, contextfindings (category ux, visual or product; severity critical, warning or note; finding, evidence, suggested_resolution) and a summary
generate_state_matrixfeature_description, optional known_dimensionsdimensions (name, states) and up to five likely_gaps, each marked stated or inferred
map_journeyobjective, optional user_maturity (first_use, occasional, habitual, expert)stages, entry_points_missing, exit_paths_missing, interruption_handling
audit_copystrings: up to 60 of {text, context: button, error, empty_state, confirmation or notification}findings (text, issue, fix); strings that work get no entry
find_assumptionsprd_textassumptions (assumption, risk low, medium or high, research_question), highest risk first
check_terminologysources: two to twelve of {label, text}concept_clusters (concept, terms_used by source, drift), drifting clusters first

Text inputs are limited to 30,000 characters per field. Screenshot URLs must be public and use https; the service passes the URL to the model and never fetches it itself.

Limits and allowance

Every call runs a real model request, so every tier has a ceiling on total use as well as on speed.

TierRate limitAllowance
Free, no key20 calls a minute2 calls a day per caller, plus a small shared daily limit across all free callers that resets at 00:00 UTC. A demo allowance, not a plan.
Your own Anthropic key20 calls a minuteUnlimited. Send the key in an x-anthropic-key header and the call runs on your account. We never store or log it.
Basic, $5 a month150 a minuteA monthly allowance that resets on the 1st (UTC)
Pro, $19 a month500 a minuteFive times Basic's monthly allowance

The allowance is measured in real model cost, not call count, so a long brief uses more of it than a short string. /usage shows how much of yours is used.

Known limitations

A review is only as good as the material. A description cannot show motion, hover states or real data, and a screenshot cannot show behavior over time; the reviewer is told to say so and not to pretend otherwise. Contrast and size figures read from an image are estimates.

The reviewer is a language model. It can be wrong, and it can miss a problem. Use it to widen what you look at, then verify what matters. find_assumptions never simulates user answers, because imagined participants are not evidence.

Output is validated into the documented shape, but wording varies between calls on the same input.

What happens to your input

Your input is sent to Anthropic's API to produce the review and is not written to Verdict's database. Usage is logged as event counts (which tool, which tier, time, rough cost) with no input text and no tracking cookies. Do not send material you are not allowed to share with a third-party model provider.

Support

Billing, invoices, cancelling: /billing (a form that takes your key). Anything else: support@allthepossibles.com.