How to add sanctions & export-control screening to an AI agent

A practical guide for agents (and the developers building them) that need to check a person, company, vessel, or crypto wallet against government watchlists before transacting.

If your agent moves money, onboards counterparties, or touches trade, it needs to screen names against sanctions and export-control lists — OFAC, UN, EU, UK, and the US BIS/State export lists. Doing this yourself means fetching a dozen government files, parsing inconsistent formats daily, and writing fuzzy-matching that handles typos, aliases, and non-Latin scripts. Watchtower is that, as one pay-per-call API built for agents.

Full API docs →

Three ways to integrate (pick one)

1. MCP — native agent tools

Point any MCP client at https://watchtower-api.com/mcp (streamable HTTP). Your agent gets tools: screen_name, screen_names_batch, screen_crypto_address, create_watch.

{ "mcpServers": { "watchtower": { "url": "https://watchtower-api.com/mcp" } } }

2. x402 — pay per call, no signup

Any x402-enabled agent with a USDC-on-Base wallet can call and pay automatically — no account, no API key.

import { wrapFetchWithPayment, x402Client } from '@x402/fetch';
import { ExactEvmScheme } from '@x402/evm';
const pay = wrapFetchWithPayment(fetch,
  new x402Client().register('eip155:8453', new ExactEvmScheme(signer)));
await pay('https://watchtower-api.com/v1/screen', { method:'POST',
  headers:{'Content-Type':'application/json'}, body: JSON.stringify({ name:'Vladimir Putin' }) });

3. REST + API key (free trial credit)

curl -X POST https://watchtower-api.com/v1/keys -d '{"note":"my-agent"}' -H 'Content-Type: application/json'
curl -X POST https://watchtower-api.com/v1/screen -H "Authorization: Bearer ak_KEY" \
  -H 'Content-Type: application/json' -d '{"name":"Wagner Group"}'

What you get back

Ranked matches with a score, the source list, programs, DOB/nationality where known — plus a snapshot_version, algorithm, and a reproducible result_hash you can store as an audit receipt. Same query + same snapshot ⇒ identical result, always.

Coverage

Pricing

$0.02 per name screen · $0.01 per crypto-address check · $0.015/name in batches · $0.01/day to monitor a name and get a webhook when its status changes. New keys include free trial credit.

FAQ

Which lists does an agent actually need?

OFAC at minimum; add UN/EU/UK for global reach and BIS/State for trade compliance. Watchtower covers all of them in one call.

Is it auditable?

Yes — every response carries the list snapshot hash, algorithm version, and a reproducible receipt hash, so a compliance decision can be re-verified later.

Do I need an account?

No — pay per call with x402 (USDC on Base), or grab a free-trial API key.

Start with the docs →