Watchtower — Compliance & Data-Integrity MCP Server for AI Agents
Live hosted MCP endpoint: https://watchtower-api.com/mcp · Docs: https://watchtower-api.com/docs · OpenAPI: https://watchtower-api.com/openapi.json
Watchtower is a deterministic compliance & data-integrity API for AI agents. Point any MCP client at the hosted endpoint and your agent gets tools for sanctions screening, KYB, identifier validation, jurisdiction risk, PII/secret detection, and LEI resolution — pay per call with x402 (USDC on Base, no signup) or a prepaid API key.
This repo is the public home for the hosted Watchtower MCP server. There's nothing to install — connect to the remote endpoint below.
Connect
{
"mcpServers": {
"watchtower": { "url": "https://watchtower-api.com/mcp" }
}
}
Streamable-HTTP MCP, stateless — no auth handshake. Paid tools take an api_key argument (create one for free with the create_api_key tool, which includes trial credit) or you can pay per call via x402.
Tools
| Tool | What it does | Price |
|---|---|---|
screen_name | Screen a person/company/vessel against 10 sanctions & exclusion lists (OFAC SDN+Consolidated, UN, EU, UK OFSI, Canada, Australia, France, Switzerland, US export-control, US SAM exclusions — ~229k parties, refreshed daily). Deterministic, typo-tolerant, versioned. | $0.02 |
kyb_check | One-call KYB: company name → its official GLEIF legal identity and its sanctions/exclusions screening. | $0.02 |
screen_crypto_address | Check a crypto address against OFAC's sanctioned-address list. | $0.01 |
validate_identifier | Validate/normalize IBAN, LEI, ISIN, BIC, VAT, card (Luhn), Ethereum & Bitcoin addresses, email, and more — by checksum. | $0.005 |
check_jurisdiction | FATF (black + grey) and EU high-risk-country AML classification, dated & sourced. | $0.005 |
scan_text | Detect & redact PII and secrets (API keys, private keys, tokens, emails, cards, IBANs, SSNs) in text. | $0.005 |
resolve_lei / search_lei_by_name | Resolve or search a Legal Entity Identifier via GLEIF (legal name, status, jurisdiction). | $0.01 |
create_watch | Monitor a name; webhook fires when its sanctions match set changes. | $0.01/day |
get_screening_info | List versions, source freshness, entry counts, pricing. | Free |
Why Watchtower
- Deterministic & auditable — same query + same list snapshot ⇒ byte-identical result, stamped with a content-hash and algorithm version, plus point-in-time (
as_of) screening for "what did the list say when we onboarded them?" - Broad, authoritative coverage — 10 official government lists, ~229,000 parties, refreshed daily.
- Built for agents — pay-per-call via x402 (USDC on Base, no account) or MCP; no minimums, no seats.
Also available as REST + x402
Everything above is also a REST API. Pay per call in USDC via x402 with no signup:
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' }) });
Full reference: https://watchtower-api.com/docs · machine-readable: /llms.txt, /openapi.json, /.well-known/x402.json
Informational screening against public sanctions, export-control & exclusion lists; LEI/entity data via GLEIF. Not legal advice.