x402-list-mcp
MCP serverMonitoring & opsx402-list is a directory of services that use the x402 payment standard, where machines pay each other for API calls. Once added, your AI can browse that directory to find paid services, see which payment facilitators handle the most volume, and check ranked picks and paid assessments before spending money.
Use x402-list-mcp in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add x402-list-mcp and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the x402 search services tool from x402-list-mcp
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Details
Available today. Use it from your connected AI after setup.
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Add it, then ask your AI to search the directory for a service you need or to show the top-ranked picks.
What your AI can do with it
- Look up services listed in the x402 directory
- Compare facilitators by transaction volume
- Review ranked picks of notable services
- Read paid assessments before choosing a service
Install x402-list-mcp
The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user x402-list-mcp 'https://mcp.x402-list.com/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://mcp.x402-list.com/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=x402-list-mcp&config=eyJ1cmwiOiJodHRwczovL21jcC54NDAyLWxpc3QuY29tL21jcCJ9Open the link and Cursor adds the server at that address.
ChatGPT
https://mcp.x402-list.com/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add x402-list-mcp --url 'https://mcp.x402-list.com/mcp'Run it once, then sign in with codex mcp login x402-list-mcp if the server asks for an account.
From the project's README
As published by mcccsm/x402-list-mcp in README.md.
Discover x402 payment APIs, check uptime and pricing, and inspect on-chain-verified settlement volume per facilitator through MCP.
What is x402-list
x402-list is a directory of services that accept x402 (HTTP 402 stablecoin) payments. It monitors listed services for uptime, response time and status, and measures facilitator settlement volume on-chain.
This package is a thin wrapper over the public x402-list HTTP JSON API. It holds no keys, touches no database, and makes no writes to the directory. It exposes the directory to AI agents through the Model Context Protocol as seven tools: six are free and read-only, and the seventh, x402_assess_services, is the only paid one, a pass-through that relays an x402 payment challenge you sign yourself client-side (the package never holds keys, never signs, and never settles).
Install and quick start
Connect to the hosted server at https://mcp.x402-list.com/mcp using Streamable HTTP, or run the npm package locally over stdio. Local use requires Node.js 20 or newer and npm; the hosted connection needs no local Node.js installation.
Claude Code
Connect to the hosted server:
claude mcp add --transport http x402-list https://mcp.x402-list.com/mcp
Or use the local package instead:
claude mcp add --transport stdio x402-list -- npx -y x402-list-mcp
Choose one transport. See the Claude Code MCP documentation for configuration scopes.
Cursor
Add the hosted server to Cursor, then confirm the installation in Cursor.
The install link encodes the same configuration as this manual entry in .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):
{
"mcpServers": {
"x402-list": {
"url": "https://mcp.x402-list.com/mcp"
}
}
}
See the Cursor MCP documentation and install-link format.
VS Code
Add this entry to .vscode/mcp.json in your project, then start the server from the editor and use it in Copilot agent mode:
{
"servers": {
"x402-list": {
"type": "http",
"url": "https://mcp.x402-list.com/mcp"
}
}
}
See the VS Code MCP documentation for other configuration locations.
Codex
Add the hosted server with the Codex CLI:
codex mcp add x402-list --url https://mcp.x402-list.com/mcp
Or add this entry to ~/.codex/config.toml; the CLI and IDE extension share this configuration:
[mcp_servers.x402-list]
url = "https://mcp.x402-list.com/mcp"
See the Codex MCP documentation.
Claude Desktop and other local stdio clients
Add this entry to claude_desktop_config.json, or the equivalent configuration for your stdio client, and restart the client:
{
"mcpServers": {
"x402-list": {
"command": "npx",
"args": ["-y", "x402-list-mcp"]
}
}
}
See the local MCP connection guide for the Claude Desktop configuration file location.
The client launches the same command you can run in a terminal:
npx -y x402-list-mcp
Self-host Streamable HTTP
To run your own HTTP instance in a POSIX shell:
MCP_HTTP_PORT=3000 npx -y x402-list-mcp --http
Connect your client to http://localhost:3000/mcp. The health probe at http://localhost:3000/healthz returns {"status":"ok"}.
Environment variables
| Variable | Default | Purpose |
|---|---|---|
X402_LIST_BASE_URL | https://x402-list.com | API base URL. The /api/v1 prefix is appended automatically. |
X402_LIST_TIMEOUT_MS | 15000 | Per-request timeout in milliseconds. |
MCP_HTTP_PORT / PORT | 3000 | HTTP port. Setting MCP_HTTP_PORT selects HTTP transport. |
MCP_ALLOWED_ORIGINS | (empty, permissive) | Comma list of allowed CORS origins for HTTP mode. |
MCP_ALLOWED_HOSTS | (empty, off) | Comma list that enables DNS-rebinding protection in HTTP mode. |
Tools
| Tool | What it does |
|---|---|
x402_search_services | Search and filter the directory by query, category, network, status, and signable (whether the last observed 402 envelope carries the EIP-712 domain parameters a standard x402 client needs in order to sign); sort by newest/uptime/cheapest/endpoints. |
x402_get_service | Full detail for one service by slug: endpoints, per-endpoint USD pricing, uptime windows, networks, settlement asset. |
x402_find_best_service | Ranked recommendation for a need, computed server-side (GET /api/v1/best). Ranks mostly by reliability, x402 compliance and price (status, verified, uptime, response time, USD price), with a small (~10%) weight on per-service on-chain traction that can never dominate those three. Read the answer's ranking_version to identify its scoring generation (see below), and its units map for scoring caveats. |
x402_check_health | Live status, directory-wide or per service (uptime snapshots, consecutive failures). |
x402_facilitator_volumes | Per-facilitator on-chain-verified settlement volume (today UTC/7d/30d/all) in USD, tx counts, and an on-chain vs listed flag. The *_24h fields cover today (UTC) so far, not a trailing 24-hour window. |
x402_change_events | Free, read-only feed of what the monitor observed changing on listed services, most recent first, in exactly three event types (payto_changed, price_changed, schema_changed). Filter by service (the listing slug: the parameter is named service, not slug), by type, and by days (1 to 365, default 90); page with page / per_page (up to 100 per page). Each event carries the observation timestamp, a diff summary, and the before/after 402 snapshots. Prices inside an event are atomic token amounts, never dollars, and every payout address is returned masked by the API: the feed reports THAT the payTo changed, never the address. |
x402_assess_services | Paid ($0.25 USDC on Base, x402). Fresh on-demand AI comparison of a shortlist of listed services for a stated need. Pass-through: it never holds keys, never signs, and never settles. Call without payment_signature_b64 to get the x402 challenge verbatim, sign it client-side, then retry with the signature to get the report. Optionally add a probe target { slug, endpoint_path? } to also test one listed service live: the price becomes $0.25 plus that endpoint price X (non-refundable), and the report gains a probe_report block with a verdict and truncated extracts, never the verbatim third-party body. |
Ranking generations
x402_find_best_service returns its scoring generation in ranking_version. Compare scores only
within the same generation. The changes below explain why scores across generations differ:
- Generation 2 capped the compliance term at 0.6, the floor of the C band, when at least one of a
service's EVM routes was observed missing the EIP-712 domain parameters (
extra.name,extra.version) a standard x402 client needs in order to sign a payment. A fact about the envelope on the wire, not a judgement on the merit of the service. - Generation 3 added the anti-wash rules on the traction term: an absolute floor of $10 on 30d settlement volume, below which the term scores 0 because sub-floor volume is indistinguishable from dust and must not move rank; a discount on a payout concentrated in one buyer, up to half the traction term when a single buyer accounts for all of it, since one buyer is one relationship and not the broad demand the term is meant to reward; and a service that publishes no mappable payTo now scores 0 on that term instead of having the weight renormalized away, so hiding the payout address no longer beats having a measured one.
Units note
All monetary values are decimal US dollars and are passed through verbatim. There is no cents conversion anywhere. The per-endpoint pricing[].price field is a raw atomic on-chain token amount (a uint256 string), not dollars; only price_usd is the dollar figure.
Honesty note
Two different on-chain volume signals; do not conflate them. Facilitator volume (x402_facilitator_volumes) is the ecosystem headline, aggregated per facilitator. Per-service traction (the traction block on each service, weighed at ~10% inside x402_find_best_service) is settlement measured over a service's own payTo via recognized settlers - a deliberate conservative undercount, not an estimate: unattributed settlements are left out, never scaled up. When a payTo is shared across services (shared_payout: true), only settlement VOLUME is attributed pro-quota, the operator-level volume over that address divided across the services sharing it, which is a declared convention and not an individually observed measure, while transaction count and unique buyers stay whole operator-level integers; a service on a network not yet measured, or a shared-payout member whose probe has been failing, carries no traction term at all and the remaining weights are renormalized over it. Never read shared, pro-quota or unmeasured volume as one service's revenue. To ask "which facilitators have real on-chain volume", use x402_facilitator_volumes and read the verification flag.
Source
Source code: mcccsm/x402-list-mcp. This repository mirrors the MCP package when it is published. The public REST API is documented at x402-list.com/api.
License
MIT
Tools it offers (7)
What this server listed when Ahel dialed its public endpoint in Oct 2026, with no key and no account of yours. The names are the server’s own.
x402_search_servicesx402_get_servicex402_find_best_servicex402_check_healthx402_facilitator_volumesx402_assess_servicesx402_change_events
Signals
- GitHub stars
- 26
- Last commit
- Oct 2026
- Weekly downloads
- 74
- Weekly_downloads
- 74 weekly_downloads
Advanced
- Delivery
- x402-list-mcp MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
com-x402-list-x402-list-mcp- Source
- github.com/mcccsm/x402-list-mcp
- Hosted endpoint
https://mcp.x402-list.com/mcp
github.com/mcccsm/x402-list-mcp
More in Monitoring & ops
MCP server
More in Monitoring & opsWorld Monitor
MCP server · koala73
More in Monitoring & opsNetdata
MCP server · netdata
More in Monitoring & opsotakit
MCP server · otakit
More in Monitoring & opsStatuser
MCP server · statuser-cloud
More in Monitoring & opsaltmetric-mcp
MCP server · altmetric
More in Monitoring & ops