merona — x402 settlement index

See what actually settles on x402: wash-adjusted volume, payTo checks. Free, no key, no signup.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
65%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,342Tokens (tool definitions)
~2.7 KBTypical response size
Moderate attention impact (1.05% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "settlement-index": {
      "url": "https://api.merona.io/mcp"
    }
  }
}

Remote endpoints

https://api.merona.io/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢payto_check(query)

Check whether an x402 endpoint or wallet pays out where it claims to, before your agent sends funds. Takes one wallet address or endpoint URL. Returns any catalog-vs-live payout mismatch, dated payout-rotation history, and whether the address has settled on chain. Free, no key. Use mismatch_feed instead to list every known mismatch. Records are dated facts, not accusations, and no record found is not a clearance.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 256,
      "description": "Wallet address (0x… or base58) or endpoint URL/hostname to look up."
    }
  },
  "required": [
    "query"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "The query as interpreted."
    },
    "matches": {
      "type": "array",
      "description": "Mismatch/rotation records touching the query; empty when none known."
    },
    "note": {
      "type": "string",
      "description": "Interpretation guidance — dated facts, not accusations."
    },
    "error": {
      "type": "string",
      "description": "Present only on backend failure."
    }
  },
  "additionalProperties": true,
  "description": "Match results for the queried wallet/endpoint."
}
🟢mismatch_feed

List x402 endpoints currently advertising one payout address while asking payers for another, from merona's nightly probe of the public catalog — the top 10 entries with advertised vs live addresses, full counts and as-of dates (complete feed, uncapped: merona.io/mismatches.json). Takes no arguments. Free, no key. Use payto_check instead when you already have a specific address or endpoint to check.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "description": "This tool takes no arguments."
}

Output Schema

{
  "type": "object",
  "properties": {
    "meta": {
      "type": "object",
      "description": "Feed provenance: generated-at, counts, method pointer."
    },
    "catalog_vs_live": {
      "type": "array",
      "description": "Endpoints advertising one payout address while asking payers for another (top 10)."
    },
    "payto_rotation_count": {
      "type": "integer",
      "description": "Endpoints with dated payout-address rotation history."
    },
    "error": {
      "type": "string",
      "description": "Present only on backend failure."
    }
  },
  "additionalProperties": true,
  "description": "The current public mismatch feed."
}
🟢clean_stats

Get wash-adjusted x402 settlement volume per chain — spend that survives removal of funded loops and self-dealing cycles, which can differ from raw transfer totals by orders of magnitude. Returns clean settlement count, clean volume in USD and an as-of date per chain. Takes no arguments. Free, no key. These are the figures published on merona.io.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false,
  "description": "This tool takes no arguments."
}

Output Schema

{
  "type": "object",
  "properties": {
    "clean": {
      "type": "array",
      "description": "One entry per chain.",
      "items": {
        "type": "object",
        "properties": {
          "chain": {
            "type": "string"
          },
          "clean_settlements": {
            "type": "integer"
          },
          "clean_volume_usd": {
            "type": "number"
          },
          "as_of": {
            "type": "string",
            "description": "Measurement date (UTC)."
          }
        }
      }
    },
    "note": {
      "type": "string",
      "description": "Scope and method pointer."
    },
    "error": {
      "type": "string",
      "description": "Present only on backend failure."
    }
  },
  "additionalProperties": true,
  "description": "Wash-adjusted settlement figures per chain."
}
🟢trust_score(chain, address, api_key, payment)

Score a specific seller wallet before paying it: wash-aware m.Score with an A–F grade, component breakdown, wash flags including multi-hop cycle detection, and the snapshot SHA so the result can be re-derived independently. Requires chain and address. Free — no key or payment needed. Optional: pass payment=<base64 X-PAYMENT payload> to pay $0.001 via x402 and receive a settlement-receipted response.

Input Schema

{
  "type": "object",
  "properties": {
    "chain": {
      "type": "string",
      "description": "Chain the seller settles on, e.g. base, polygon, solana."
    },
    "address": {
      "type": "string",
      "description": "Seller wallet address to score."
    },
    "api_key": {
      "type": "string",
      "description": "merona API key. Alternative to per-call x402 payment."
    },
    "payment": {
      "type": "string",
      "description": "Base64 X-PAYMENT payload for a single x402 payment."
    }
  },
  "required": [
    "chain",
    "address"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "grade": {
      "type": [
        "string",
        "null"
      ],
      "description": "A–F letter; null means unrated (evidence gate, not an adverse signal)."
    },
    "score": {
      "type": [
        "number",
        "null"
      ],
      "description": "Numeric m.Score behind the letter."
    },
    "tier": {
      "type": "string",
      "description": "unrated | provisional | verified."
    },
    "suggested_action": {
      "type": "object",
      "description": "Deterministic action hint (PROCEED/CAUTION/INVESTIGATE/DECLINE/INSUFFICIENT_EVIDENCE) with reasons and rule version."
    },
    "components": {
      "type": "object",
      "description": "Score component breakdown."
    },
    "snapshot_sha256": {
      "type": "string",
      "description": "Snapshot hash for independent re-derivation."
    },
    "delivery": {
      "type": "object",
      "description": "Paid-probe delivery evidence, when merona has bought from this seller: status delivery_verified (dated) or charged_unserved (payment settled, request refused; settlement tx included). This score covers base/polygon/solana, but delivery evidence is base-only today (see PROBE_COVERAGE_CHAINS) — null here on polygon/solana means no probe was possible, not a clean record."
    },
    "payment_required": {
      "type": "object",
      "description": "x402 payment instructions; present only when the call is unpaid."
    },
    "error": {
      "type": "string",
      "description": "Present only on failure."
    }
  },
  "additionalProperties": true,
  "description": "The seller's score, or x402 payment instructions when called without api_key/payment."
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools