{"name":"com.x402-list/x402-list-mcp","slug":"x402-list-mcp","title":null,"description":"Find and vet x402 payment APIs before your agent pays one: uptime, price, on-chain volume.","url":"https://mcp.market/server/x402-list-mcp","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"finance","tags":["finance","ai"],"presence":{"score":46,"stars":27,"forks":0,"downloads_week":75,"last_push_at":"2026-09-01T19:30:24.000Z","license":"MIT"},"uptime":{"percent":100,"checks":6,"ok":6,"last_checked_at":"2026-09-20T21:05:54.445Z","last_ok_at":"2026-09-20T21:05:54.445Z","latency_ms":614},"claimed":false,"transport":"mixed","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/mcccsm/x402-list-mcp","website":"https://x402-list.com","version":"0.5.1","remotes":[{"type":"streamable-http","url":"https://mcp.x402-list.com/mcp"}],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"x402-list-mcp","version":"0.5.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"API base URL. The /api/v1 prefix is appended automatically.","format":"string","default":"https://x402-list.com","name":"X402_LIST_BASE_URL"},{"description":"Per-request timeout in milliseconds.","format":"number","default":"15000","name":"X402_LIST_TIMEOUT_MS"}]}],"tools":[{"name":"x402_assess_services","description":"Call this when the free signals have run out: you hold 2 to 8 finalists from x402_search_services or x402_find_best_service, their stored fields do not separate them for YOUR stated need, and choosing wrong costs more than a quarter. It buys one fresh AI assessment reasoned against your question, not a cached grade; reading an already-computed assessment stays free via x402_get_service. Price: a one-time $0.25 USDC on Base, over two calls. Call once WITHOUT payment_signature_b64 to receive the x402 payment challenge verbatim (accepts[], amount, payTo, and a base64 PAYMENT-REQUIRED header); sign accepts[0] client-side with your own wallet; call again with the SAME question and services plus payment_signature_b64 to receive the report and a base64 PAYMENT-RESPONSE settlement receipt. This server holds no keys, never signs and never settles: it only relays the challenge. Optionally add probe { slug, endpoint_path? } to have one listed service paid and called for real and its answer analyzed: the challenge is then priced at $0.25 plus that endpoint price X, and the report gains a probe_report block with a verdict and truncated extracts, never the verbatim third-party body. When live probing is not armed the probe is ignored. Caveats: read the amount to sign from accepts[0].amount, never from a fixed figure, since a probe changes it; probe fees are non-refundable whatever the verdict; if the fresh run cannot be produced the server answers before settling, so you are never charged for nothing; there is no refund. Prices are US dollars.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"question":{"type":"string","minLength":1,"maxLength":1000,"description":"The need to assess the shortlist against (1 to 1000 characters)."},"services":{"type":"array","items":{"type":"string","minLength":1,"maxLength":200},"minItems":1,"maxItems":8,"description":"Service slugs to compare for the need (1 to 8; find them with x402_search_services or x402_find_best_service)."},"payment_signature_b64":{"type":"string","minLength":1,"description":"Base64 PAYMENT-SIGNATURE for the x402 payment, produced by signing the accepts[0] challenge client-side. Omit on the first call to receive the challenge; set it on the retry to run the paid assessment."},"probe":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":200,"description":"Slug of one listed service to probe live (must be one of the services above or another listed slug)."},"endpoint_path":{"type":"string","minLength":1,"maxLength":500,"description":"Optional URL path on that service to probe, beginning with '/'. Omit to let the server pick the cheapest priced USDC-on-Base endpoint."}},"required":["slug"],"additionalProperties":false,"description":"Optional live-probe request: pay one listed service for real and analyze what it returns. When the server has probing armed the price becomes $0.25 plus that endpoint price X (non-refundable); the report gains a probe_report block with a verdict and truncated extracts, never the verbatim third-party body. Ignored when probing is not armed."}},"required":["question","services"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_change_events","description":"Call this before you trust anything you cached about a service, and right after a payment failed for no obvious reason: the monitor's log of what moved under you. Returns payTo, price and 402-schema changes observed on listed services, most recent first, in exactly three event types (payto_changed, price_changed, schema_changed). Filter with service (the slug), type, and days (1 to 365, default 90). Caveats: prices here are atomic token amounts, never dollars, and every payTo is masked by design, so the feed reports THAT the payout address changed, never the address. Free and read-only.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"service":{"type":"string","minLength":1,"maxLength":200,"description":"Service slug to restrict the feed to, e.g. 'exa' (the same slug x402_get_service takes). Omit for changes across every listed service."},"type":{"type":"string","enum":["payto_changed","price_changed","schema_changed"],"description":"Restrict to one kind of change: 'payto_changed' (the payout address set changed), 'price_changed' (at least one endpoint's price changed), 'schema_changed' (the 402 envelope gained or lost accepts entries or priced endpoints). Omit for all three."},"days":{"type":"integer","minimum":1,"maximum":365,"default":90,"description":"Lookback window in days, 1 to 365 (default 90). Events older than the window are not in the feed."},"page":{"type":"integer","minimum":1,"default":1,"description":"1-based page index into the filtered event set (see total_pages)."},"per_page":{"type":"integer","minimum":1,"maximum":100,"default":25,"description":"Events per page, 1 to 100 (default 25). Each event carries the full before/after envelope snapshots, so a large page is heavy."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_check_health","description":"Call this before you send a payment, or right after a call unexpectedly failed: is this service up right now. With no slug, the directory snapshot: five status counts across 500+ services (include_services=true attaches every row). With a slug: that service's status, its 24h/7d/30d/90d uptime windows, response time, consecutive failures, daily snapshots. No money fields.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":200,"description":"Service slug for a single-service health report. Omit for the whole directory."},"uptime_period":{"type":"string","enum":["24h","7d","30d","90d"],"default":"30d","description":"Daily uptime snapshot window for single-service mode."},"include_services":{"type":"boolean","default":false,"description":"Directory mode only (no slug): if true, also attach the full per-service status array. Off by default so a directory health check returns just the five status counts, not every service."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_facilitator_volumes","description":"Call this when the question is about the rail rather than the service: which x402 facilitator actually settles money, and how much. Returns on-chain-verified settlement volume and transaction counts per facilitator for today (UTC), 7d, 30d and all-time, plus a verification flag ('on-chain' once volume has been observed on-chain, else 'listed'), across more than 30 facilitators. Optional daily timeseries (up to 90 days) and per-chain breakdown. Volume is decimal USD. Caveats: PER-FACILITATOR, never per-service; the *_24h fields cover today (UTC) so far, not a trailing 24 hours, and reset at 00:00 UTC, so prefer 7d.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"timeframe":{"type":"string","enum":["24h","7d","30d","all"],"default":"7d","description":"Drives the sort order of the returned facilitators. '24h' sorts by today (UTC) so far, not by a trailing 24-hour window."},"include_timeseries":{"type":"boolean","default":false,"description":"Include a daily volume_usd / tx_count series per facilitator."},"include_chains":{"type":"boolean","default":false,"description":"Include a per-chain (network/asset) volume breakdown per facilitator."},"days":{"type":"integer","minimum":1,"maximum":90,"default":30,"description":"Length of the timeseries in days (only used when include_timeseries is true)."},"page":{"type":"integer","minimum":1,"default":1},"per_page":{"type":"integer","minimum":1,"maximum":100,"default":25}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_find_best_service","description":"Call this when you have a need in words and want one service to call rather than a list to read: it is the free ranking step between searching and paying. Pass the need as q, plus any category, network, price cap or verification requirement, and get up to 20 ranked recommendations with the basis each one placed on. Ranking is mostly per-service reliability (live status, verification, uptime, response time), x402 compliance, and price in USD, with a small (about 10%) weight on measured on-chain settlement traction that can never dominate those three. The response carries ranking_version (currently 3), need_blind_ranking (true when no q was given, so the order is global quality rather than your need), and a units map holding every scoring caveat in full: the compliance cap, the pro-quota rule for shared payout addresses, renormalization, the $10 volume floor, and the single-buyer discount. Read units before comparing scores across generations.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"category":{"type":"string","minLength":1,"maxLength":100,"description":"Desired service category."},"network":{"type":"string","minLength":1,"maxLength":50,"description":"Required network name or abbreviation, e.g. 'Base' or 'BSE'; any network code returned by /api/v1/networks is accepted."},"q":{"type":"string","minLength":1,"maxLength":200,"description":"Free-text need description to match against name/description."},"max_price_usd":{"type":"number","minimum":0,"description":"Cap on min_price_usd in US dollars; cheaper or equal passes."},"require_verified":{"type":"boolean","default":false,"description":"If true, only verified services are eligible."},"prefer":{"type":"string","enum":["balanced","cheapest","fastest","most_reliable"],"default":"balanced","description":"Tie-breaking emphasis for the ranking weights."},"limit":{"type":"integer","minimum":1,"maximum":20,"default":5,"description":"How many ranked recommendations to return."},"include_facilitator_context":{"type":"boolean","default":false,"description":"If true, also return top facilitators by 7d settlement volume as separate ecosystem context (NOT per-service)."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_get_service","description":"Call this once you hold a slug and are deciding whether to commit to that service: the full record behind a directory row. Live status, uptime over 24h/7d/30d/90d, average response time, networks and settlement asset, every priced endpoint, and the assessment block. include_series=true adds 90 daily points of on-chain volume and distinct buyers. Read the units map in the response: the per-endpoint price field is atomic token units, not dollars.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":200,"description":"Service slug, e.g. 'my-api'."},"include_series":{"type":"boolean","default":false,"description":"If true, also attach this service's daily on-chain series under `series` (settlement volume and distinct buyers, one point per UTC day over the most recent 90 days, oldest first). Off by default to keep the response small."}},"required":["slug"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"x402_search_services","description":"Your first call when you do not know which x402 service exists for a job: it narrows a directory of 500+ listed services to candidates. Filter by free-text query, category, network, live status, and whether the last observed 402 envelope is signable by a standard x402 client; sort by newest, uptime, cheapest, or endpoints. Returns up to 100 compact summaries a page: price in decimal USD, uptime, status, verification. Then x402_get_service for the full record.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"q":{"type":"string","minLength":1,"maxLength":200,"description":"Free-text search across name, description, category, base_url."},"category":{"type":"string","minLength":1,"maxLength":100,"description":"Exact category name (see categories context). Omit for all."},"network":{"type":"string","minLength":1,"maxLength":50,"description":"Network name or abbreviation, e.g. 'Base' or 'BSE'; any network code returned by /api/v1/networks is accepted. Omit for all."},"status":{"type":"string","enum":["online","degraded","offline","unknown","all"],"default":"all","description":"Filter by live monitoring status."},"verified_only":{"type":"boolean","default":false,"description":"If true, return only verified services. Filtered server-side, so the result total covers the whole verified set, not just this page."},"signable":{"type":"boolean","description":"Filter on the signability of the last observed 402 envelope: true = no EVM route of the service was observed missing the EIP-712 domain parameters (extra.name and extra.version) that a standard x402 client requires in order to sign a payment, false = at least one such route was observed. It describes the payment envelope on the wire, not the merit of the service. A service whose latest assessment has not measured that check yet matches NEITHER value, so omit this parameter to include it. Filtered server-side, so the result total covers the whole filtered set."},"sort":{"type":"string","enum":["newest","uptime","cheapest","endpoints"],"default":"newest","description":"Server-side sort order."},"fields":{"type":"string","enum":["compact","full"],"default":"compact","description":"Response detail: 'compact' (default) = lean summaries (identity, price, status, uptime, verification, networks, compliance grade), 'full' = every field including the per-service assessment block. Compact keeps a directory sweep small enough to not truncate."},"page":{"type":"integer","minimum":1,"default":1,"description":"1-based page index into the filtered result set (see meta.total_pages)."},"per_page":{"type":"integer","minimum":1,"maximum":100,"default":25,"description":"Services per page, 1 to 100 (default 25). Higher values return larger results; with fields='full' a large page can be very heavy, so prefer compact when raising it."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-20T20:10:42.650Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T20:10:42.585Z","components":{"code":{"score":25,"max":25,"notes":["15 source files scanned"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1641ms"]},"poisoning":{"score":15,"max":15,"notes":["7 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":15,"max":15,"notes":["last push 19 days ago"]},"identity":{"score":7,"max":10,"notes":["namespace and repository owner differ","GitHub account older than a year","website matches verified namespace"]}},"findings":[],"inputs":{"probes":[{"url":"https://mcp.x402-list.com/mcp","reachable":true,"authRequired":false,"latencyMs":1641,"serverInfo":{"name":"x402-list-mcp","version":"0.5.1"}}],"packages":[{"registryType":"npm","identifier":"x402-list-mcp","version":"0.5.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-09-01T19:25:43.525Z","repositoryUrl":"git+https://github.com/mcccsm/x402-list-mcp.git","weeklyDownloads":75}],"repo":{"found":true,"owner":"mcccsm","repo":"x402-list-mcp","archived":false,"pushedAt":"2026-09-01T19:30:24Z","stars":27,"forks":0,"openIssues":5,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/96252028?v=4","ownerCreatedAt":"2021-12-16T15:43:11Z","license":"MIT"},"icon":{"url":"https://x402-list.com/favicon.svg","source":"site"},"presence":{"stars":27,"forks":0,"downloadsWeek":75,"license":"MIT","lastPushAt":"2026-09-01T19:30:24.000Z","score":46}}}},"grade_history":[],"reviews":[]}