Assay: settlement verification

Verify crypto payments really settled and how much arrived.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only

What it can do

    What data it sees

    Do you need an account

    No: the server works without sign-in

    Verify crypto payments really settled and how much arrived. 20 chains. Read only, no API key.

    How to connect

    How to connect Assay: settlement verification to Claude

    The server address to paste into Claude settings:

    https://fomox.io/api/assay/mcp

    1. Open Claude (claude.ai or the desktop app).
    2. Go to Settings → Connectors.
    3. Click Add custom connector.
    4. Paste the server address copied below into Remote MCP server URL and click Add.
    5. In a chat, click + → Connectors and switch the new connector on.

    Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

    Authorization

    After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

    How to connect Assay: settlement verification to ChatGPT

    The server address to paste into ChatGPT settings:

    https://fomox.io/api/assay/mcp

    1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
    2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
    3. Open Settings → Connectors and click Create.
    4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
    5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
    6. In a new chat open + → Apps/Connectors and enable the connector.

    OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

    Authorization

    On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

    How to connect Assay: settlement verification to Cursor

    The server address to paste into Cursor settings:

    https://fomox.io/api/assay/mcp

    Fastest: click Open in Cursor below and confirm the prompt.

    Manually:

    1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
    2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
    3. Save the file. The server appears in the MCP list; authorize it there if asked.

    Authorization

    If the service needs sign-in, an authorize button appears next to the server in the MCP list.

    Server tool list (6)

    Raw names from tools/list. Only developers need these.

    verify_paymentCheck whether a crypto payment really settled and how much was ACTUALLY delivered, which is often not the amount the transaction claims. Use this before crediting anyone for an incoming payment. Returns `delivered` (what truly moved), `claimed` (what the transaction says), `mismatch` (true when they disagree), and `warnings` naming the specific trap with a remedy. `ok` is true ONLY when the payment is final and meets everything you asserted in `expect`; anything uncertain returns ok:false, so it is safe to gate a credit on `ok`. Chains: xrp, hedera, algorand, solana, ethereum, base, arbitrum, optimism, polygon, bnb, avalanche, linea, scroll, zksync, blast, mantle, celo, gnosis, bitcoin, litecoin. Pass `expect` whenever you can. Without it this reports what happened; with it, it tells you whether to pay. Read only: this never moves funds and never holds keys.
    list_chainsList every chain this service can verify, with the confirmation depth each needs before a payment is treated as final, and how deeply it can be verified. Call this if you are unsure whether a chain is supported or what to pass as `chain`.
    list_failure_modesList every known way a blockchain payment can appear successful while being worth less than it claims, or nothing at all. Each entry explains what the chain does, what it costs you when you get it wrong, and the one-line fix. Useful when writing or reviewing code that credits users for incoming crypto payments. Every chain has its own dialect but they are all the same few lies, and the mitigation is always the same: never trust the stated amount, reconstruct what actually moved.
    evaluate_spend_policyCheck a proposed payment against spending limits that live OUTSIDE your context, where no instruction in a prompt, a message or a web page can change them. Returns a signed allow or deny with reasons. Use this before executing any transfer on behalf of a user. It enforces velocity caps, per-action ceilings, recipient allowlists and asset allowlists. Because the rules are held server side and signed, an attacker who takes over your reasoning still cannot raise your limits. IMPORTANT: this is ADVISORY. Assay holds no keys and cannot stop a transaction. Verify the signature and enforce the decision wherever you sign. Create a policy first with the /v1/policy endpoint.
    run_sandbox_casePractise on a payment designed to deceive you, with no money at risk. Returns a verification result shaped exactly like a real one for one of 19 adversarial cases. Decide whether you would credit it, then call check_sandbox_answer to find out whether you were right and what the mistake would have cost. Use this to test any agent or integration that handles incoming crypto payments BEFORE it handles real money.
    check_sandbox_answerScore your decision on a sandbox case. Tell it whether you would have credited the payment and for how much, and it replies with whether that was correct and, if not, exactly what the error would have cost you in real units. This is the fastest way to find out whether your payment handling is actually safe.