mcpField
O
oceanalt-aml-mcp

oceanalt-aml-mcp

VerifiedFeaturedRemote
oceanalt.comFinance0Updated 1w ago

About oceanalt-aml-mcp

oceanalt-aml-mcp is an MCP server for agents and clients that screen blockchain addresses and assess payment requests before funds move. Its tools return verdicts with evidence across EVM chains, Tron, and Solana, alongside identity, transaction-intent, and payment-requirement checks.

Key features

  1. 01Address screening with verdicts and evidence
  2. 02Pre-payment allow, review, or decline decisions
  3. 03Calldata and transaction-intent checks
  4. 04Payment request and endpoint screening
  5. 05Agent identity and control-baseline checks
  6. 06Evidence bundles and payment verification

Use cases

  1. 01Screen a recipient before transferring funds
  2. 02Check a payment request for spoofing or phishing
  3. 03Compare declared payment intent with transaction data
  4. 04Verify signed payment requirements

MCP support

The MCP server lets Claude, Cursor, and other compatible clients call OceanAlt's screening and compliance tools. Many tools are free and require no key; paid tools use x402, with a payer wallet key or credit token.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://oceanalt.com/api/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Packages
npmoceanalt-aml-mcp0.7.6

Tools

15
ParameterTypeRequiredDescription
addressstringYesAddress to screen. EVM: 0x + 40 hex (e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045). Tron: T + 33 base58 (e.g. TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t). Solana: base58 public key.
networkenumNoEVM chain to screen on. Omit to auto-default to ethereum; ignored for Tron/Solana (auto-detected). One of: ethereum, base, bsc, polygon, arbitrum, optimism, avalanche.ethereum | base | bsc | polygon | arbitrum | optimism | avalanche | arc
langenumNoLanguage for human-readable fields (signals, note). Defaults to English.en | zh

Details

From the project README

oceanalt-aml-mcp

Native AML compliance for AI agents. An MCP server that lets Claude / Cursor / any MCP client call OceanAlt's on-chain address screening and compliance gateway. Receipts, not a black-box score — every verdict ships with verifiable evidence you can click through.

Built for agentic payments: ask "should this payment proceed?" before money moves, across 8 EVM chains + Tron + Solana.

For AI agents: call screen_address before any transfer — it returns a clear / caution / risky verdict plus a 0–100 risk score and clickable evidence, so you can enforce a payment mandate with a receipt instead of a guess. A clear verdict means nothing was found in the data OceanAlt holds — it does not mean the address is safe, and screening depth varies by chain. Free, no key.

Tools

ToolInputWhat it doesPrice
payment_decisionto, amountUsdc?, purpose?, network?Before your agent pays, call once → allow / review / decline + evidence + retry + a verifiable settlement attestationFree
screen_addressaddress (0x… / T… / Solana), network?AML verdict + risk score + verifiable evidenceFree
counterparty_control_baselineentity? / agentId?The other question: not "is this address risky" but "how much damage could the agent on the other side do if it were talked into something". Returns their control-baseline attestation, splitting what OceanAlt enforces from what they merely claimFree
resolve_agent_identityagentIdChain of accountability: agent → principal → mandate → credential → wallet. Wherever it breaks is where accountability stopsFree
recent_flagged—Recently flagged high-risk addressesFree
check_calldata_intentintent, EVM: contract, data · Solana: network:"solana", transaction (base64)Anti blind-signing: decode what the transaction really does (ERC-20 approve dressed as a payment; SPL Approve / SetAuthority / CloseAccount) and compare with the declared payment → match / mismatch / unknown (unknown ≠ safe)Free
verify_payment_requirementspayment_required (decoded 402 JSON or raw base64), expect?Was this x402 402 response tampered with in transit? Ed25519 check of the seller's signed requirements → ok / digest_mismatch / …Free
evidence_bundleaddress, network?One signed bundle of everything public OceanAlt can say about an address (screening + evidence + freshness, profile signals, one-hop relations, receipt stats); witness, not plaintiffFree
screen_endpointurlIs this payment URL or domain on a phishing list, or shaped like one? The half address screening cannot answerFree
check_payment_requestfrom, headers, body, pay_to …An email, invoice or message asks you to pay: is the sender spoofed, are the links phishing, is the payee listed or changed, is there pressure or an instruction aimed at an AI?Free
baseline_controls—The Agent Control Baseline: controls an operator should run before its agent moves moneyFree
attest_control_baselineentity, answers, gapPlan?File your own side's control-baseline attestation so payers can look it upFree
payee_decidepayee (registry id), payer?, amountUsdc?, purpose?The receiving side's check before settlement: accept / decline / hold_request_info / not_ready, with reason codes, the fields to request, evidence and a signatureFree
compliance_decisionto, amountUsdc?, purpose?, network?Full gateway verdict (allow / review / decline) + evidence$0.002, or 1 credit
deep_traceaddress (T…)Tron multi-hop USDT taint trace (depth ≤3)$0.01
batch_screenaddresses[] (≤25)Batch screening (up to 25 addresses)$0.01

network (for 0x addresses): ethereum · base · bsc · polygon · arbitrum · optimism · avalanche (auto-detected if omitted). Tron & Solana are auto-detected.

Output language

Human-readable fields (signals, note, advice) come back in English by default; pass lang: "zh" for Chinese. Every response also carries signal_keys — language-independent keys such as list.mixer or taint.onehop. Branch on those, not on the prose: wording changes, keys do not.

Two of these tools answer "found: false" a lot

counterparty_control_baseline and resolve_agent_identity return found: false for most parties, because publishing is voluntary. That means no information — it is not a negative signal, and an agent should never decline a payment on that basis alone. Fall back to payment_decision.

Quick start (free tools)

Add to your MCP client config (Claude Desktop, Claude Code, Cursor, …):

{
  "mcpServers": {
    "oceanalt-aml": { "command": "npx", "args": ["-y", "oceanalt-aml-mcp"] }
  }
}

The free tools need no API key and no signup.

Enabling the paid (x402) tools

The paid tools pay per call over x402 — HTTP 402 → sign one USDC authorization → 200. Add a payer wallet key to env and install the x402 peer deps:

{
  "mcpServers": {
    "oceanalt-aml": {
      "command": "npx", "args": ["-y", "oceanalt-aml-mcp"],
      "env": { "OCEANALT_PAYER_KEY": "0x<your payer wallet private key>" }
    }
  }
}
npm i @x402/core @x402/evm viem   # in the MCP's environment

⚠️ Real money — Base mainnet. The paid endpoints settle real USDC on Base mainnet (eip155:8453); the $ prices above are charged in real USDC. Always confirm the live network/pricing manifest at https://oceanalt.com/api/x402 before paying, and use a dedicated low-balance payer wallet.

🔐 Wallet safety. OCEANALT_PAYER_KEY is used only in your local process to sign one EIP-3009 authorization. It is never bundled in this package, never uploaded, never logged. The facilitator pays gas and never custodies your funds. Use a dedicated low-balance payer wallet, not your main funds.

Environment variables

VarPurposeDefault
OCEANALT_BASEBackend base URLhttps://oceanalt.com (production)
OCEANALT_PAYER_KEYPayer wallet key — enables the paid toolsunset (free tools only)
OCEANALT_CREDIT_TOKENCredit pack token from POST https://oceanalt.com/api/x402/credits ($0.10 = 100 decisions, valid 365 days). compliance_decision then uses one credit per call and signs nothingunset

What it is (and isn't)

This package is a thin (~9KB) client that calls OceanAlt's public API. It contains no proprietary logic and no data — the AML engine, scoring, and address-intelligence all run server-side at oceanalt.com. Every query still enriches OceanAlt's own address-intelligence DB (it grows with use).

MIT © OceanAlt


中文

让 Claude / Cursor / 任意 MCP 客户端原生调用 OceanAlt 的链上地址合规筛查 + 合规网关。给收据,不给黑箱分:每条判决都带可点开核验的证据。覆盖 8 条 EVM 链 + 波场 TRON + Solana,付款前先问一句「这个收款方安不安全」。

  • 免费工具:payment_decision(付款前调一次 → allow/review/decline + 证据 + 可核验结算凭证)、screen_address(单查 + 证据)、payee_decide(收款方三态决策)、counterparty_control_baseline / resolve_agent_identity(对方的控制基线与责任链)、recent_flagged(近期被标记)、check_calldata_intent(盲签检查,EVM calldata 或整笔 Solana 交易)、screen_endpoint(付款网址是否钓鱼)、check_payment_request(收到让你付钱的邮件、发票或消息时,查发件人真假、钓鱼链接、收款地址、催付话术和写给 AI 的指令)、baseline_controls / attest_control_baseline(控制基线清单与自证)、verify_payment_requirements(402 应答验签)、evidence_bundle(签名证据包)。无需 key、无需注册。
  • 付费三工具(x402):compliance_decision(网关判决)、deep_trace(波场深度追踪)、batch_screen(批量)。按需加载 @x402+viem,设置 OCEANALT_PAYER_KEY 才启用。价格:判决 $0.002、追踪 $0.01、批量 $0.01。也可以设置 OCEANALT_CREDIT_TOKEN(充值包 $0.10 = 100 次判决,在 POST https://oceanalt.com/api/x402/credits 购买),compliance_decision 每次扣 1 次,不再逐笔签名。
  • ⚠️ 真钱:付费端点当前在 Base 主网结算,USDC 为真实资金(eip155:8453),上表 $ 价按真实 USDC 收取。付款前务必以实时清单 https://oceanalt.com/api/x402 为准,并使用小额专用付款钱包。
  • 🔐 钱包安全:OCEANALT_PAYER_KEY 只在本地签一次 EIP-3009 授权,绝不随包发布/上传/打日志;facilitator 代付 gas、不托管资金。建议用小额专用钱包,别用主资金钱包私钥。
  • 编程 SDK:oceanalt-aml;在线文档:https://oceanalt.com/en/api-docs;合规标准:https://oceanalt.com/en/rap。

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.