Lumière PayCheck
REMOTE · LUMIEREPAYCHECK.ORG · SCANNED OCT 7
Check any x402 endpoint before your AI agent pays it: trust grade, verdict, and hijack checks.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability78
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1741 tokens (~217/item across 8 items; 6 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management10
- Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage98
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 95% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 6 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Lumière PayCheck MCP server?
Lumière PayCheck is a hosted endpoint at https://lumierepaycheck.org/mcp?plans=1, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · lumierepaycheck.org
claude mcp add --transport http book0feli-paycheck 'https://lumierepaycheck.org/mcp?plans=1'
{
"mcpServers": {
"book0feli-paycheck": {
"url": "https://lumierepaycheck.org/mcp?plans=1"
}
}
} {
"servers": {
"book0feli-paycheck": {
"type": "http",
"url": "https://lumierepaycheck.org/mcp?plans=1"
}
}
} [mcp_servers.book0feli-paycheck] url = "https://lumierepaycheck.org/mcp?plans=1"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"book0feli-paycheck": {
"type": "remote",
"url": "https://lumierepaycheck.org/mcp?plans=1",
"enabled": true
}
}
} openclaw mcp add book0feli-paycheck --url 'https://lumierepaycheck.org/mcp?plans=1' --transport streamable-http
mcp_servers:
book0feli-paycheck:
url: "https://lumierepaycheck.org/mcp?plans=1" {
"McpServers": {
"book0feli-paycheck": {
"Transport": "http",
"Url": "https://lumierepaycheck.org/mcp?plans=1"
}
}
} assistant mcp add book0feli-paycheck -t streamable-http -u 'https://lumierepaycheck.org/mcp?plans=1'
{
"mcpServers": {
"book0feli-paycheck": {
"type": "http",
"url": "https://lumierepaycheck.org/mcp?plans=1"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 7 Oct 26 0
- Tool coverage: 100% → 95% ▼ functional
- Schema quality: 190 → 217 ▼ functional
- Stability: unverified → 0.10 ▲ functional
- 4 Oct 26 76
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 7 Oct 2026 · Probed https://lumierepaycheck.org/mcp?plans=1
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=lumierepaycheck.org | CN=WE1,O=Google Trust Services,C=US | 26 Sept 2026 | 25 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | 624251678c343c1b13af7f493bcf6a5b |
| SANs: lumierepaycheck.org | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of lumierepaycheck.org. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| org. | present | 26974 | 8 | Verified |
| lumierepaycheck.org. | present | 2371 | 13 | Verified |
| lumierepaycheck.org. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| content-security-policy | default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; font-src 'self' data:; img-src 'self' data: https:; connect-src 'self'; frame-ancestors 'none'; base-uri 'none'; form-action 'self' https://checkout.stripe.com; object-src 'none'; upgrade-insecure-requests |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(), payment=(), usb=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://lumierepaycheck.org/mcp?plans=1 | Verified | 200 | |
| http (plaintext) | http://lumierepaycheck.org/mcp?plans=1 | HTTPS enforced | 301 | https://lumierepaycheck.org/mcp?plans=1 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
catalog_stats x402 catalog statistics ~111
Get an overview of the whole monitored x402 catalog: how many endpoints are monitored, how many fall into each verdict (proceed, caution, avoid, free, insufficient_data), and when scores were last computed. Use it for context or reporting, for example to tell a user how much of the x402 ecosystem passes checks. It says nothing about any single endpoint: use check_endpoint for one endpoint, top_endpoints for a ranked list, or check_payment before paying. Read-only, free, no parameters.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| byVerdict | object | yes | Endpoint count per verdict |
| endpoints | number | yes | Endpoints monitored |
| forTeams | object | – | Short note about team plans (per-agent keys, spend limits, audit trail) |
| scoredAt | string|null | yes | When scores were last computed |
No examples provided.
check_endpoint Check an x402 endpoint ~248
Get the trust verdict for one x402 endpoint: score (0-100), grade (A-F), and verdict (proceed, caution, avoid, free, or insufficient_data), plus uptime, delivery-test status, payout-wallet incidents, and how many independent buyers stand behind the seller's buyer wallets (we count customers, not wallets). Use it when you're deciding whether an endpoint is trustworthy at all, before you have a price quote. When you already have the 402 quote (amount and payTo) and are about to pay, use check_payment instead: it runs this same check and also verifies the price and wallet. To discover good endpoints rather than check a known one, use top_endpoints. Read-only and free; reflects monitoring every 30 minutes and real test payments, so a brand-new endpoint may return insufficient_data. Endpoints not in the catalog return monitored: false. API docs: https://github.com/Book0fEli/lumiere-paycheck/blob/main/docs/api.md
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | Full URL of the x402 endpoint including path, exactly as the agent will call it, e.g. https://api.example.com/v1/price. |
| Name | Type | Req | Description |
|---|---|---|---|
| advice | string | – | What the verdict means for paying it |
| auth | object | – | Present when our paid test was refused for want of the seller's own sign-in (no money was taken). Have access? Send hasAccess: true to check_payment. |
| buyerReports | object | – | What real buyers reported after paying. Never changes the grade; confirmations move the endpoint up our paid-test queue. |
| buyers | object | – | Who is really behind the seller's buyers. Never changes the grade. |
| delivery | string | – | verified = a real test payment was delivered; failing (see advice: an error after payment that didn't collect the money is D/caution; taking the money and failing is F/avoid); or unverified |
| exampleInput | object | – | Present when the listing's own example input got 'not found' when we paid (no money taken): use real input. |
| forTeams | object | – | Short note about team plans (per-agent keys, spend limits, audit trail) |
| grade | string | – | A delivered cleanly; B delivered with a caveat; C unconfirmed; D doesn't work as listed, no money lost; F costs money or unsafe; ? with too little data |
| listing | object | – | Present only when the latest paid response differs from the listing's example or schema. The data is delivered. |
| monitored | boolean | yes | false if the endpoint isn't in the monitored catalog |
| page | string | – | Public page with the full history |
| payToMode | string | – | fixed, or per_request when the seller issues a new payout address per request |
| probes | number | – | Checks counted in the last 7 days |
| requiredInput | object | – | Present when our paid test was refused for want of a header or input the listing doesn't document (no money taken). |
| score | number|null | – | 0-100; null for free resources |
| testedWith | object | – | Present when the latest passing paid test needed a sign-in or extra input: a seller-provided test account, a wallet sign-in, or the seller's declared test request. |
| uptimePct | number | – | Share of checks in the last 7 days that returned a valid payment quote |
| url | string | yes | The endpoint checked |
| values | object | – | Automatic value checks on the latest paid response. A warning caps the grade at B, never avoid. |
| valuesChecked | boolean | – | Latest paid check also passed known-answer value tests |
| verdict | string | yes | proceed | caution | avoid | free | insufficient_data |
| walletIncidents | number | – | Unexplained payout-wallet changes |
| walletUnconfirmed | number | – | Recent wallet changes nobody could confirm yet |
| withdrawn | object | – | Present when the endpoint was withdrawn by its seller or is gone from the Bazaar: no longer for sale, don't pay it. |
No examples provided.
check_payment Check an x402 payment before paying ~474
Decide whether a specific x402 payment should go through: returns allow true/false with reasons. Checks the endpoint's trust verdict, that the amount is within your cap and not above the monitored price, and that the payTo wallet matches the one we've observed (catches swapped or hijacked wallets). Optionally (minOrganicShare) it also requires that enough of the seller's volume comes from independent buyers. Intended for right before a payment, with the amount, payTo, and network from the endpoint's 402 quote; allow is true only when every rule passes. Use check_endpoint instead if you only want an endpoint's grade without a quote in hand. Read-only and free; it doesn't make or block the payment itself. When allow is false, the reasons list explains why. API docs: https://github.com/Book0fEli/lumiere-paycheck/blob/main/docs/api.md
| Name | Type | Req | Description |
|---|---|---|---|
| allowCaution | boolean | – | false = deny endpoints with a caution verdict too, not just avoid (default true) |
| amount | string | – | Amount about to be paid, atomic units (USDC has 6 decimals: 10000 = $0.01) |
| hasAccess | boolean | – | true if you have your own account, API key or sign-in with this seller. For endpoints that need the seller's sign-in on top of x402, allowCaution/requireVerified then don't block (we couldn't confirm… |
| maxAmount | string | – | Your hard cap for this payment in atomic units (USDC: 1000000 = $1). Payments above it are denied. |
| minOrganicShare | number | – | Optional, 0-1: deny sellers where less than this share of 30-day volume comes from independent buyers (e.g. 0.5). Not applied to sellers whose buyers haven't been reviewed yet. |
| network | string | – | Network from the quote, e.g. eip155:8453 |
| payTo | string | – | Wallet address from the endpoint's 402 quote |
| requireVerified | boolean | – | true = only allow endpoints that delivered on a real test payment (default false) |
| url | string | yes | Full URL of the x402 endpoint you are about to pay, including path |
| Name | Type | Req | Description |
|---|---|---|---|
| afterPaying | string | – | How to report the outcome after paying (free, verified on-chain) |
| allow | boolean | yes | Pay only when true |
| authRequired | boolean | – | true: the seller needs its own sign-in on top of x402; send hasAccess: true if you have it |
| buyerReports | object | – | What real buyers reported after paying. Never changes the grade; confirmations move the endpoint up our paid-test queue. |
| buyers | object | – | Who is really behind the seller's buyers. Never changes the grade. |
| declaredPayTo | array | – | Payout wallets the seller declared itself |
| delivery | string | – | – |
| forTeams | object | – | Short note about team plans (per-agent keys, spend limits, audit trail) |
| grade | string | – | – |
| listing | object | – | Present only when the latest paid response differs from the listing's example or schema. The data is delivered. |
| monitored | boolean | yes | Whether the endpoint is in the monitored catalog |
| notes | array | – | – |
| observed | – | – | The latest payment quote our monitor saw |
| payToMode | string | – | – |
| reasons | array | yes | Why it was allowed or denied |
| reviewable | boolean | – | Denied only for reasons a person may approve |
| score | number|null | – | – |
| url | string | – | – |
| values | object | – | Automatic value checks on the latest paid response |
| verdict | string|null | – | proceed | caution | avoid | free | insufficient_data |
| walletUnconfirmed | number | – | – |
No examples provided.
get_full_report How to get a full trust report ~181
Get instructions for buying the detailed paid report on one x402 endpoint (score breakdown, current price quote, wallet and price history, test-payment results). Returns the report URL, price, and network; it doesn't buy the report itself. The report is an x402 endpoint that your agent pays with any x402 client. Use it only when the free check_endpoint result isn't enough and the user wants the full history. The response also lists the other paid x402 checks (wallet risk, batch grades, watch alerts), paid the same way. Endpoints we don't monitor return 404 on the report URL and are never charged. API docs: https://github.com/Book0fEli/lumiere-paycheck/blob/main/docs/api.md
| Name | Type | Req | Description |
|---|---|---|---|
| url | string | yes | Full URL of the x402 endpoint you want the paid report for, including path |
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | – | false when paid reports aren't enabled |
| forTeams | object | – | Short note about team plans (per-agent keys, spend limits, audit trail) |
| network | string | – | – |
| note | string | – | – |
| otherPaidChecks | array | – | Other pay-per-call x402 checks, paid the same way |
| payment | string | – | – |
| price | string | – | – |
| reportUrl | string | – | Request this URL with an x402 client to buy the report |
No examples provided.
report_outcome Report how a paid x402 call went ~339
After paying an x402 endpoint, report whether you got what you paid for. Free, optional, and open to every agent: send the receipt from a Lumière PayCheck allow decision (paid plans), or the endpoint url plus the payment's transaction hash (anyone; we verify the payment on-chain, Base or Solana, within 24 hours). Answer the short questions in answers: gotResponse, matchedListing (yes/partly/no), charged (as_quoted/more/twice), dataUsable (yes/unsure/no), wouldPayAgain. Reports never change a grade by themselves: confirmations from independent buyers move the endpoint up our paid-test queue, and serious problems (nothing came back, charged more or twice) trigger a re-test; only our own paid test changes the grade. One report per payment; the seller's own wallet can't report on itself.
| Name | Type | Req | Description |
|---|---|---|---|
| answers | object | – | – |
| httpStatus | integer | – | HTTP status the endpoint returned after payment, e.g. 200 or 500 |
| outcome | string | – | Optional shortcut instead of answers: delivered = usable; problem = error, empty, wrong or overcharged |
| problems | array | – | Short descriptions, e.g. 'missing field price', 'HTTP 500' |
| receipt | string | – | The receipt from a Lumière PayCheck 'allow' decision (paid plans). Or send url + tx instead. |
| tx | string | – | The payment's transaction hash (Base 0x...) or Solana signature |
| url | string | – | The endpoint you paid (with tx, when you have no receipt) |
| Name | Type | Req | Description |
|---|---|---|---|
| accepted | boolean | yes | Whether the report was recorded |
| flagged | string | – | no_response, overcharged or double_charged: sent privately to the operator for an immediate re-test |
| forTeams | object | – | Short note about team plans (per-agent keys, spend limits, audit trail) |
| network | string | – | – |
| ourTestQueued | boolean | – | Our own paid test of this endpoint is queued (buyer confirmations or problem reports moved it up) |
| outcome | string | – | – |
| overcharge | string | – | Present when the on-chain payment was higher than any quote we saw |
| paid | string | – | Amount paid on-chain, atomic units |
| reason | string | – | Why it wasn't accepted |
| retestQueued | boolean | – | A paid re-test was queued because of reports |
| thanks | string | – | – |
| url | string | – | – |
| verifiedOnChain | boolean | – | The payment was found on-chain (reports sent with tx instead of a receipt) |
No examples provided.
top_endpoints Most trustworthy x402 endpoints ~116
List the x402 endpoints that are currently safest to pay (verdict proceed or caution, no payout-wallet incidents), best first, with score, grade, verdict, and whether a real test payment was delivered. Use it to discover reliable endpoints or pick between providers. To evaluate one specific endpoint use check_endpoint; to approve a payment use check_payment. Read-only and free; rankings update as monitoring runs (every 30 minutes).
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | How many endpoints to return, 1-50 (default 10) |
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | yes | – |
| endpoints | array | yes | Best first |
| forTeams | object | – | Short note about team plans (per-agent keys, spend limits, audit trail) |
No examples provided.
What is the Lumière PayCheck MCP server?
Lumière PayCheck is an MCP server listed in the public MCP registry as io.github.Book0fEli/paycheck. Check any x402 endpoint before your AI agent pays it: trust grade, verdict, and hijack checks. This page covers its hosted endpoint (https://lumierepaycheck.org/mcp?plans=1).
Is the Lumière PayCheck MCP server safe to use?
Lumière PayCheck scores 76 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Lumière PayCheck MCP server expose?
Lumière PayCheck exposes 6 tools: check_endpoint, check_payment, report_outcome, top_endpoints, catalog_stats, get_full_report. Their descriptions and schemas cost roughly 1,469 tokens of context every time the server is loaded.
Does the Lumière PayCheck MCP server require authentication?
No. We connected to Lumière PayCheck without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the Lumière PayCheck MCP server still maintained?
Lumière PayCheck is still listed as active in the MCP registry. We last reached this channel on 4 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.