Verified directory for machine payments (x402 & MPP): check services and wallets before agents pay.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Check a recipient wallet BEFORE your agent pays it — a pre-payment guard. Pass the pay-to address a service asked you to pay; returns whether Verantis knows the wallet, its EARNED reputation tier, and human-readable reasons. A wallet IS a settlement rail, so the reply names the rail it settles on ('rail': chain + protocols), its host, on-chain buyer retention (distinct buyers, repeat rate, distribution), and the host's OTHER rails ('also_settles_on'). If 'shared_wallet' is true the address fronts many services (a relay/treasury) so the reputation reflects the pool, not one service — treat with care. An unknown or low-reputation recipient is a reason to pause.
recipient wallet address (0x… for Base/EVM, base58 for Solana)
Check a recipient wallet BEFORE your agent pays it — a pre-payment guard. Pass the pay-to address a service asked you to pay; returns whether Verantis knows the wallet, its EARNED reputation tier, and human-readable reasons. A wallet IS a settlement rail, so the reply names the rail it settles on ('rail': chain + protocols), its host, on-chain buyer retention (distinct buyers, repeat rate, distribution), and the host's OTHER rails ('also_settles_on'). If 'shared_wallet' is true the address fronts many services (a relay/treasury) so the reputation reflects the pool, not one service — treat with care. An unknown or low-reputation recipient is a reason to pause.
| Argument | Type | Description |
|---|---|---|
| pay_to* | string | recipient wallet address (0x… for Base/EVM, base58 for Solana) |
{
"type": "object",
"required": [
"pay_to"
],
"properties": {
"pay_to": {
"type": "string",
"description": "recipient wallet address (0x… for Base/EVM, base58 for Solana)"
}
}
}Index-level statistics: services, verification breakdown, data freshness.
No arguments.
{
"type": "object",
"properties": {}
}Search Verantis's verified directory of machine-payable services (x402, MPP). Results are UNIFIED per service (host): each carries its settlement rails ('rails': base / solana / tempo), and every rail has its OWN reputation, price, and buyer retention — never blended. Pass 'chain' and 'matched_rail' marks that chain's rail so you see the reputation for the rail you'll actually pay on. 'coming_soon' lists advertised chains not yet measured. Each rail's 'wallet_scope' says if its pay-to wallet is 'dedicated' (the buyers/payments/volume are this service's own) or 'shared' (a relay/treasury fronting 'wallet_services' services, so those figures are the pool's inbound, not this service alone). Prefer verified=true before paying anyone.
| Argument | Type | Description |
|---|---|---|
| chain | string | settlement network, e.g. base, solana, polygon, tempo |
| limit | integer | maximum number of results to return (default 10) |
| query* | string | what you need, e.g. 'twitter data', 'web search', 'rpc ethereum' |
| protocol | string | restrict to one payment protocol: x402 or mpp |
| min_score | integer | minimum trust score 0-100 — set high (e.g. 85) for money-moving tasks |
| proven_only | boolean | only services that have EARNED reputation over time (excludes 'new' services and 'watch' services whose on-chain payments are concentrated / not yet broadly distributed). Reputation is earned via consistent history + on-chain buyer retention; a brand-new well-behaved service is verified but new, not top-trust. |
Full unified record for one service host: every settlement rail it accepts on, each with its own reputation, price, buyers, volume and history, plus coming-soon chains. Each rail's 'wallet_scope' marks a 'shared' pay-to wallet (buyers/volume are pooled inbound across 'wallet_services' services, not this one alone) vs 'dedicated' (this service's own). Pass the host (domain).
| Argument | Type | Description |
|---|---|---|
| domain* | string | the service host / domain to look up, e.g. api.nansen.ai |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "the service host / domain to look up, e.g. api.nansen.ai"
}
}
}| max_price_usd | number | max price per call in USD |
| require_fresh | boolean | live re-probe stale results before returning — use before paying real money; adds ~1s per stale service |
| verified_only | boolean | only services that passed the latest live probe |
| max_latency_ms | integer | reject services slower than this (ms) |
| exclude_concentrated | boolean | exclude services from operators with many listings under one registrable owner (a neutral concentration signal, not a fraud claim) |
{
"type": "object",
"required": [
"query"
],
"properties": {
"chain": {
"type": "string",
"description": "settlement network, e.g. base, solana, polygon, tempo"
},
"limit": {
"type": "integer",
"default": 10,
"description": "maximum number of results to return (default 10)"
},
"query": {
"type": "string",
"description": "what you need, e.g. 'twitter data', 'web search', 'rpc ethereum'"
},
"protocol": {
"enum": [
"x402",
"mpp"
],
"type": "string",
"description": "restrict to one payment protocol: x402 or mpp"
},
"min_score": {
"type": "integer",
"description": "minimum trust score 0-100 — set high (e.g. 85) for money-moving tasks"
},
"proven_only": {
"type": "boolean",
"default": false,
"description": "only services that have EARNED reputation over time (excludes 'new' services and 'watch' services whose on-chain payments are concentrated / not yet broadly distributed). Reputation is earned via consistent history + on-chain buyer retention; a brand-new well-behaved service is verified but new, not top-trust."
},
"max_price_usd": {
"type": "number",
"description": "max price per call in USD"
},
"require_fresh": {
"type": "boolean",
"default": false,
"description": "live re-probe stale results before returning — use before paying real money; adds ~1s per stale service"
},
"verified_only": {
"type": "boolean",
"default": true,
"description": "only services that passed the latest live probe"
},
"max_latency_ms": {
"type": "integer",
"description": "reject services slower than this (ms)"
},
"exclude_concentrated": {
"type": "boolean",
"default": false,
"description": "exclude services from operators with many listings under one registrable owner (a neutral concentration signal, not a fraud claim)"
}
}
}