Skip to content
Official MCP RegistryListed

booklint

Checks an agent's trades, spend, bookings and offers against its owner's limits. Facts, not advice.

First seen 5 Oct 2026. Evidence as of 6 Oct 2026.

6
Tools
From an anonymous probe
1
Source listings
Each with its own history
14
Recorded changes
Since first seen

Tools

ToolDescriptionBehaviour
check_bookDeterministic rule checks of any agent's actions against the limits its owner wrote, the same as POST /v1/check. Send a trading book (snapshot and rulebook, optionally broker and journal) or an actions list with limits (per-transaction and daily spend caps, merchant allow and deny lists, refundability), or, BEFORE booking or subscribing, one offer with limits (Fine-Print Check: total price cap, mandatory fees over the headline price, refundability, free-cancellation window, auto-renewal, renewal price, trial length, and an optional page_text consistency scan; each rule answers MATCH, WARN, STOP or NOT_CHECKED with the figure found). Send plain text you already have. Do not send a URL; booklint will not fetch one. Returns verdict (FLAGGED, CLEAN, NOT_VERIFIED, REFUSED), coverage and flags. Each rule reports passed, failed or not checked; missing data is not checked, never assumed, and a result with zero flags is not a pass. Pass sample=true (sample 1, trading), sample="spend" (sample 2, purchasing and booking), sample="booking" (sample 3) or sample="subscription" (sample 4) with no key, never counted against the free caps, to see a full result. Without api_key the keyless free plan and its daily cap apply. Not advice; nothing is executed.Read-only
check_budget_varianceSend budget and actual lines as JSON; returns MATCH/WARN/STOP per line (default 5%/20%, overridable per request, thresholds always echoed), ranked overruns. Math only. Process-and-discard: nothing is stored or logged after the run. A request containing a Luhn-valid card number or a valid IBAN is refused before accept with reason sensitive_data_refused (not counted as a check). Free plan: runs under the shared free check cap. Desk: volume use.Read-only
check_invoiceSend invoice or expense lines as JSON; returns flags for duplicate IDs, repeat vendor+amount+date, missing fields and currency mismatch. Math only. Process-and-discard: nothing is stored or logged after the run. A request containing a Luhn-valid card number or a valid IBAN is refused before accept with reason sensitive_data_refused (not counted as a check). Free plan: runs under the shared free check cap. Desk: volume use.Read-only
check_quote_mathSend quote or pricing sheet lines as JSON; returns flags for mismatched line totals, wrong discount amounts, subtotal and grand-total errors, and tier range conflicts (overlap and gap). Math only. Process-and-discard: nothing is stored or logged after the run. A request containing a Luhn-valid card number or a valid IBAN is refused before accept with reason sensitive_data_refused (not counted as a check). Free plan: runs under the shared free check cap. Desk: volume use.Read-only
get_free_keyReturns a free key at once, the same as POST /v1/keys {"plan": "free"}: no card, no e-mail, and the same daily limits on new keys per client and across the service. The key is shown once in this result and is not stored or logged; pass it as api_key to check_book. A free key runs more own checks a day than the keyless plan; the result lists its limits. Optional label: 1 to 40 letters, digits, '.', '_' or '-'.Changes data
get_sampleReturns a public sample, the same as GET /v1/sample. Start with name "booking" (sample 3, a hotel offer): passed to check_book as sample="booking", it returns real STOP results against the limits its owner wrote. "subscription" (sample 4, a subscription checkout) is the other Fine-Print Check request: an offer, limits, as_of and page text. name "trading" (the default) is sample 1, a trading agent's book (snapshot, rulebook, broker, journal), stamped now. name "spend" is sample 2, a purchasing and booking agent's actions and the limits its owner wrote. Edit it and pass it to check_book.Read-only

Change history

  1. get_sample: title changed
  2. get_sample: input schema changed (+name)
  3. get_sample: description changed (+"a public sample," +"same as GET /v1/sample. Start with name "booking" (sample 3, a hotel offer): passed to check_book as sample="booking", it returns real STOP results against the limits its owner wrote. "subscription" (sample 4, a subscription checkout) is the other Fine-Print Check request: an offer, limits, as_of and page text. name "trading" (the default) is" +"1, a trading agent's")
  4. get_free_key: tool added
  5. check_quote_math: tool added
  6. check_invoice: tool added
  7. check_budget_variance: tool added
  8. check_book: title changed
  9. check_book: input schema changed (+actions, +as_of, +limits, +offer, +page_text)
  10. check_book: description changed (+"any" +"actions" +"the limits")
  11. server instructions changed (+"any agent's actions against the limits its owner wrote. Start with the booking sample: call" +"sample="booking"" +"key, never counted) to see real STOP results; get_sample with name booking shows its offer and limits. The other samples are trading, spend and subscription. Then call check_book")
  12. Description changed (registry)
  13. Description changed (registry)
  14. Listed (registry)
Source listings
SourceListingFirst seenLast seenVersions
Official MCP Registrycom.booklint/desk5 Oct 20266 Oct 20263