mcpbeat Sign in

Aml MCP Server

answering

Aml is answering right now. Last checked moments ago. 134 installs a week from npm. It exposes 10 tools. Last commit 20 Aug 2026.

Screen a payee address before an AI agent pays: sanctions, mixers, scam lists, on-chain risk.

Installs per day peak 113 · avg 4
a month agotoday
Uptime history 45 hours of history
45 hours agonow
100.0%
Uptime 24h
92 of 92 checks
10
Tools
read from the server
1176 ms
Response time
average over 24h
134
Installs / week
npm and PyPI

What changed 3

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 16 September 2026. No other catalogue keeps this.

18 Sep the owner changed
17 Sep the owner changed
16 Sep the owner changed

Nothing serious here today

Today is the operative word: we check Aml every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 0 min ago.

run in your terminal
claude mcp add aml --transport http https://oceanalt.com/api/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "aml": {
      "url": "https://oceanalt.com/api/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.aml]
url = "https://oceanalt.com/api/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "aml": {
      "url": "https://oceanalt.com/api/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "aml": {
      "url": "https://oceanalt.com/api/mcp"
    }
  }
}

Available tools 10

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

screen
screen_address
Run an AML compliance screen on a single blockchain address BEFORE paying or receiving from it — the pre-payment check on a counterparty. Checks OFAC sanctions, known mixers, community scam/phishing lists, stablecoin issuer freezes, and on-chain heuristics. Returns a verdict (clear | caution | risky), a 0–100 risk score, a blocked flag, and the matching signals — receipts, not a black-box score. A clear verdict means nothing was found in the data OceanAlt holds; it is not a statement that the address is safe. Depth varies by chain (see coverage.chains at /.well-known/agent-capabilities). Supports EVM (0x…), Tron (T…), Solana (base58). Free, no API key.
screen_endpoint
Screen a payment ENDPOINT (URL or domain) before calling it — the half that address screening cannot answer. In x402 the agent discovers a URL first, receives a 402, and only then learns where to pay: if that endpoint is spoofed, the payee address it hands back is freshly generated and appears on no sanctions list. Checks the hostname and its parent domains against public phishing databases (MetaMask eth-phishing-detect, ScamSniffer) plus hostname shape signals (bare IP, punycode homograph, deep subdomain nesting, free hosting). Returns clear | caution | risky | unknown with language-independent signal_keys. A clear verdict means no match was found, NOT that the endpoint is safe — freshly registered phishing hosts always precede any list. Use together with screen_address. Free, no API key.
attest
attest_control_baseline
File your operator's control-baseline attestation — the counterpart to counterparty_control_baseline. That tool asks what controls the OTHER side runs; this one publishes what YOUR side runs, so payers can see it before settling with you. No account, no key, one call. Gaps are allowed and expected: answer false where a control is not in place and describe how you plan to close it in gapPlan. A filing with declared gaps is worth far more than no filing — it lets a payer decide against a known shape instead of a blank. Get the control ids from the baseline list first. Only file for a party you are actually authorised to speak for.
baseline
baseline_controls
Fetch the OceanAlt Agent Control Baseline: the list of controls an agent operator is expected to run before it is allowed to move money, each answerable yes or no. Call this before attest_control_baseline so you file against real control ids. Each control carries which gate enforces it and why it exists.
calldata
check_calldata_intent
Anti blind-signing. EVM: decodes what a transaction's calldata will actually do (ERC-20 transfer/approve/permit, setApprovalForAll, ownership transfer, native transfer). Solana: decodes a whole base64 transaction (SPL Token / Token-2022 Transfer, TransferChecked, Approve, SetAuthority, CloseAccount, Burn; System Transfer / Assign; ATA creation). Compares it with what you believe you are doing. EVM: pass intent:{action:'pay', to, amount} plus contract (the transaction's to) and data (hex calldata). Solana: pass network:'solana' and transaction (base64) instead of data. decision match = does what you declared; mismatch = different recipient/amount/asset, or an approval / authority change instead of a payment — do not sign; unknown = could not decode (including address-lookup-table accounts), which is not the same as safe.
counterparty
counterparty_control_baseline
Answers a different question from address screening. Screening asks whether an address is risky; this asks how much damage the agent on the other side could do if it were talked into something. Returns that party's self-attestation against the OceanAlt Agent Control Baseline, split into two sets that must NOT be conflated: verified_by_oceanalt (enforced by the gateway on every payment — provable) and self_claimed (what they state about their own side — NOT verified by OceanAlt). Most parties have not attested: found:false means no information, not a bad signal.
payment
payment_decision
"Before your agent pays, call OceanAlt once." Pass the payee address the agent is about to pay; get a machine-executable decision: allow | review | decline, plus verifiable evidence and retry semantics — use it as a gate: if the decision is not "allow", do not pay. On allow/review it also returns a verifiable compliance attestation you can attach to the settlement so the payment carries proof it passed OceanAlt's decision. Free, no API key.
recent
recent_flagged
Return a representative sample of addresses on OceanAlt's reviewed risk list — OFAC-sanctioned, known mixers, and community-reported scam/phishing — each with its source category and reason. Takes no arguments. Free, no API key.
resolve
resolve_agent_identity
Resolves who stands behind a paying agent: agent -> principal -> mandate -> credential -> wallet. Each link reports whether it holds; completeness counts how many do (a factual count, not a score). Wherever the chain breaks is where accountability stops. Publication is opt-in and only posture is exposed (that a ceiling exists, never its value), so found:false means the agent has not published — absence of information, not a bad signal.
verify
verify_payment_requirements
Before paying an x402 402 response, check that its payment requirements (payTo, amount, asset, network, resource) were signed by the seller and not altered in transit by a proxy, CDN, SDK or another tool. x402 v2 carries the requirements in the PAYMENT-REQUIRED response header (base64 JSON): pass either the decoded JSON or the raw base64 value as body. Optionally pass expect:{payTo, amount} — the address and amount you are about to pay — and the tool also checks they match what was signed. verified:false with reason_code no_signature means the seller does not sign (unprotected, not necessarily malicious); digest_mismatch or signature_invalid means the response was tampered with — do not pay.

Endpoints

URLTransportStateLatencyChecked
https://oceanalt.com/api/mcp streamable-http answering 1043 ms 0 min ago

Alternatives to Aml

same job, measured the same way
Payment Guard MCP
by mlawsonking

Pre-send risk check for AI agents that move money — screen an address or payment URL before sending.

49 installs/wk local only
Pulsefeed X402
by nikolife2016

Verify x402 payment endpoints before an AI agent pays: scam scan, on-chain checks, trust scores.

76 installs/wk 11 tools answering
Ibanforge
by cammac-creator

Pre-payout IBAN screening for AI agents: validation, sanctions, Swiss clearing, risk scoring

1 194 installs/wk 11 tools answering
O
Sentinel
by 448c

Pay-per-call safety checks for AI agents: screen a crypto address or URL before you transact.

2 tools answering
Pathguard
by cieltech-pathguard

Crypto transaction safety tool — screens addresses and transactions for scam risk.

5 tools answering
Mizan
by higgsfield-mizan-bazar

Check an x402 endpoint before your agent pays it: avoid / caution / ok, proven on-chain.

3 tools answering
Opensanctions MCP
by scka-de

Sanctions screening and PEP checks via OpenSanctions API for AI agents

27 installs/wk local only
CYRE Guardian
by milesdev888

Solana address risk grades and token scans for AI agents. Pay-per-call via x402 (USDC on Base).

3 tools answering

Aml — questions

Answers built from our own checks of this server.

What can Aml do?
It exposes 10 tools, read directly from the server on our last check. Among them: attest_control_baseline, baseline_controls, check_calldata_intent, counterparty_control_baseline, payment_decision, recent_flagged and 4 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is Aml working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 92 of 92 checks got a reply (100.0%), average response time 1176 ms. The bar chart above shows every period we have measured.
How do I connect Aml?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Aml need an API key?
No. Aml completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 10 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Aml?
It answers our handshake in 1176 ms on average, which is faster than 5% of all working MCP servers we measure. That is on the slow side — worth knowing if the tool sits inside an interactive loop. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Aml?
The npm package oceanalt-aml-mcp was installed 134 times in the last week. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Aml open source?
Yes — it is published under the MIT licence, written in JavaScript and 0 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.