fineprint

Scan terms of service for risky clauses before your agent accepts them. Risk scores, pass/flag/block verdicts, quote-grounded clause extraction, change monitoring with webhook alerts, plus a public ToS risk leaderboard. 12 tools, stdio + streamable HTTP.

Documentation

Your agents accept contractsthey never read.

Every time your agent signs up for a service, it agrees to terms no one reviewed — arbitration waivers, data-training licenses, unilateral price changes. Fineprint reads them first: a 0–100 risk score, a pass / flag / block verdict, every clause quote-grounded in the vendor's own text. Gate the vendor before the agent commits.

# gate every vendor before the agent commits
POST /v1/scans { "url": "https://vendor.com/terms" }
→ { "risk_score": 62, "verdict": "flag", "agent_friendliness": "hostile", … }

API ● operational Taxonomy 21 categories Scoring deterministic MCP tools 12

1 · Get a key

One email, free, 25 scans/month. The key shows once — get it here.

2 · Scan a URL

POST /v1/scans with any terms URL. Verdict back in about a minute.

3 · Stay watched

Set a POST /v1/monitors on vendors you depend on. We alert you when terms change.

01

Pipeline

One job: turn legal prose into auditable risk data. The model extracts. It never judges.

01 / INGEST

Fetch & normalize

Pulls the document, strips navigation and chrome, hashes content. Unchanged documents are never re-scanned — and unchanged monitors never bill.

02 / EXTRACT

Grounded extraction

Chunked extraction against a 21-category taxonomy. Every clause must be quote-grounded in the source, or it is dropped.

03 / ADJUDICATE

Deterministic scoring

Risk math and pass/flag/block verdicts execute with zero model involvement. Same document, same score, every run.

02

Leaderboard

Every major vendor, scored on the same taxonomy. Compare terms before your agent accepts them — or before spending a scan. Free to read, no key required.

A high score isn't always a reason to walk away — sometimes it's a reason to negotiate harder and watch closer.

Every vendor also gets an agent-friendliness verdict: does their ToS even allow your agent to use the service? Plenty of terms ban bots and "automated access" outright — and the violation lands on you, not your agent.

ServiceScoreLevelAgentTop flags
Loading live scores…

Risk score: 0 = cleanest terms, 100 = most rights reserved against you.

Each vendor's public terms are extracted against a fixed 21-category taxonomy — arbitration, data training, termination, bot bans, agent delegation, and the like. Every finding must be quote-grounded in the source; no quote, no clause. Scoring is deterministic severity-weighted math critical ×25 · high ×12 · medium ×5 · low ×2 — no language model touches the score, so the same document always scores the same. 0–24 low · 25–49 medium · 50–74 high · 75–100 critical

Full methodology, dispute process, and score badges →

Pick a vendor. Full report, worst clauses first, every claim anchored to a manually verified quote. Served from the public leaderboard — no key, no quota.

// LIVE VENDOR REPORTS POPULATE AT LAUNCH — THIS DEMO READS THEM IN REAL TIME

All reports (no JS needed): GitHub · Zoom · Stripe · X · OpenAI · Anthropic · Dropbox · Google · Basecamp · DuckDuckGo · Signal

03

Monitoring

Terms change — usually quietly, sometimes against you. Set a monitor on any vendor's terms and we re-check on your schedule.

Unchanged = free

Content-hash comparison first. If nothing moved, the check costs nothing — no quota, no LLM call.

Changed = re-scan

New text triggers a full re-scan: clause-level diff, score delta, and what got worse.

Material = alert

Webhook when it matters — score up 10+, a new high/critical clause, or a worsened verdict.

04

Agent interface

Built for machines, not browsers. Two calls to first verdict. Full reference: interactive API docs · ReDoc · OpenAPI JSON

MCP

Native tool calls

Twelve tools — scan URL, scan text, batch scan, compare scans, report, leaderboard, quota, watch terms, list monitors, custom policies, negotiation playbooks. Drops into Claude, Cursor, ChatGPT.

REST

Two calls to value

POST /v1/customers issues a key. POST /v1/scans returns a verdict. That is the integration.

SPEC

Machine-readable

/llms.txt and /.well-known/fineprint.json describe the full service surface for agents.

# the enforcement pattern
user: "sign us up for Acme"
agent → scan_terms_of_service(acme_tos_url)
→ verdict: "block" (binding_arbitration + data_sharing_resale)
agent: "Terms rejected. Acme waives your right to sue and reserves
data resale. Route to legal?"

05

Taxonomy

If it is not in the taxonomy, it does not ship. Off-taxonomy output is dropped, not passed through.

binding_arbitration Forced arbitration, no court

class_action_waiver No collective lawsuits

unilateral_modification Terms changeable at will

unilateral_price_change Prices rise without notice

auto_renewal Renews unless cancelled

data_collection_scope What is collected on you

data_sharing_resale Your data, sold onward

data_training_use Your data trains models

data_retention_deletion Can you delete? Ever?

liability_cap How little they owe you

indemnification You cover their legal costs

termination_at_will Cut off without cause

account_suspension Suspended without notice

ip_assignment Who owns what you make

jurisdiction_venue Where you would have to sue

sla_absence No uptime commitment

usage_caps Throttling and limits

bot_automation_ban Bots banned outright

account_delegation Can an agent act for you?

ai_agent_terms Explicit AI-agent rules

automation_permitted Automation allowed

— Closed set. Additions versioned.

06

Pricing

Monitoring is the retention layer: free tier watches 3 vendors, Pro watches 50, Team watches 200. Unchanged checks never consume quota.

Free

$0

Evaluate the pipeline.

  • 25 scans / month
  • 3 change monitors
  • Full taxonomy + verdicts
  • Branded PDF reports
  • Public leaderboard
  • MCP server

Deploy

Pro

$19.99 /mo

Continuous vendor oversight.

  • 500 scans / month
  • 50 change monitors
  • Batch scanning + vendor compare
  • Branded PDF reports
  • See a sample report
  • Policy profiles
  • Email support

Team

$79.99 /mo

Vendor vetting at scale.

  • 2,500 scans / month
  • 200 change monitors
  • Everything in Pro
  • Branded PDF reports
  • $0.15/scan overage
  • Priority support

No key? Agents will be able to pay per scan: x402 pay-per-scan in USDC ($0.25/scan) — rolling out; contact us to enable. POST /v1/scans/x402

07

API access

One email, one key. 25 scans/month free, no card. The key is shown exactly once — store it somewhere safe.

Agents: no email? POST /v1/customers/anonymous mints a 5-scan trial key — or x402 pay-per-scan at POST /v1/scans/x402 (USDC, rolling out soon), no key at all.

// KEYS ARE FREE — ABUSE IS RATE-LIMITED BY THE SAME QUOTAS THAT GOVERN THE API

08

FAQ

Can I trust a model to read legal documents?

You should not trust it blindly — that is why every clause must be quote-grounded in the source document, and why scoring is deterministic. The model extracts; it never judges. Verify any claim in seconds by reading the quote in context.

What happens when terms change?

Documents are content-hashed. Changed text re-extracts automatically — or set a monitor (POST /v1/monitors) and receive a webhook alert when the change is material: score up 10+, new high/critical clause, or worsened verdict. Stale leaderboard entries are flagged after 30 days.

Do you store the documents I scan?

Reports are cached by content hash so repeat scans are free. API keys are hashed at rest and shown once.

Can I get a report I can forward to legal?

Yes. GET /v1/scans/{id}/report.pdf renders a branded audit PDF — verdict, score, every finding with its quote-grounded evidence, methodology, and evidence provenance (content hash, scan id, timestamp). Multi-vendor packs via POST /v1/reports/audit-pack.pdf add a ranking and a category-by-category comparison matrix. Download a sample report.

Is the leaderboard really public?

Yes. GET /v1/leaderboard needs no key and consumes no quota. The board is curated by the Fineprint team — your scans stay private by default.