# x402 Pay — USDC API Payment Helper

> Pay for APIs with USDC. Read-only x402 payment discovery, verification, evidence, and status.

- name: com.scriptmasterlabs/x402-pay
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 89/100 flags: duplicate-repo
- quality: 80/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.scriptmasterlabs%2Fx402-pay
- tools: https://api.protogrid.dev/v1/servers/com.scriptmasterlabs%2Fx402-pay/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "x402-pay": {
      "type": "http",
      "url": "https://squeezeos-api.onrender.com/mcp/x402-pay"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 85
- provenance: 85
- drivers: +repository +dns-namespace +website +reachable +uptime-99% ~updated-44d-ago -duplicate-repo(4 names)
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 80/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 5 of 5 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 770 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 50 (weight 15)

- pass `stability.changes`: 5 tool changes in 30 days
- fail `stability.rug_pull`: 4 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 5, about 770 tokens to load them all
- tool set hash: eebfa8db94bdf0518da3e161fed8dc9c
- tools last changed: 2026-10-13T21:14:27.115Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.scriptmasterlabs/x402-pay.svg)](https://protogrid.dev/servers/com.scriptmasterlabs/x402-pay)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-13 `check_status` changed (description, outputSchema) **meaning changed**
  - before: Check the live always-on SqueezeOS payment authority.
  - after: Read the current SqueezeOS backend status and payment-readiness evidence. Returns both upstream envelopes and autonomous_spend=false. Use to diagnose readiness before purchase; HTTP availability or readiness flags alone do not establish settled or accepted delivery.
- 2026-10-13 `x402_inspect_challenge` added
  - Inspect a fresh x402 v2 challenge without sending payment. Compatible alias of check_payment with the same schema, 10-second unsigned probe and result. Use before a paid resource call; do not use as a signer, receipt verifier or settlement proof. Non-402 and incomplete challenges remain null rather than receiving invented defaults.
- 2026-10-13 `check_payment` changed (description, inputSchema, outputSchema) **meaning changed**
  - before: Inspect an HTTPS URL for a live x402 402 challenge without sending payment.
  - after: Inspect a public HTTPS URL for a fresh x402 v2 HTTP 402 challenge using an unsigned GET with a 10-second network timeout and no redirect following. Returns validated payTo, asset, network, atomic amount, resource and maxTimeoutSeconds; incomplete or non-x402 responses return challenge=null and a reason. Does not sign, settle or verify receipts. Fresh requirements override documented receiver hints; inspect canonical_receiver_match before choosing to pay.
- 2026-10-13 `list_paid_apis` changed (description, inputSchema, outputSchema) **meaning changed**
  - before: List live SML x402 paid API operations from the canonical SqueezeOS OpenAPI document.
  - after: List paid API operations declared by the live SqueezeOS OpenAPI document, bounded by limit. Returns method, path, job and advertised price. Use for route selection, then inspect that resource's fresh 402 challenge; listed prices do not authorize payment.
- 2026-10-13 `payment_info` changed (description, outputSchema) **meaning changed**
  - before: Return the canonical ScriptMasterLabs x402 payment network and receiver. Never spends.
  - after: Read the documented SML x402 v2 Base/USDC configuration and receiver before selecting a paid route. Returns configuration and a read-only policy. Fresh resource requirements override these hints; this tool does not sign, spend or prove settlement.

Full history: https://api.protogrid.dev/v1/servers/com.scriptmasterlabs%2Fx402-pay/changes

## Remotes

- https://squeezeos-api.onrender.com/mcp/x402-pay (streamable-http, auth none, reachable true, uptime30d 0.9915254)

## Packages

_none_

## Tools (5)

- `check_payment`: Inspect a public HTTPS URL for a fresh x402 v2 HTTP 402 challenge using an unsigned GET with a 10-second network timeout and no redirect following. Returns validated payTo, asset, network, atomic amount, resource and maxTimeoutSeconds; incomplete or non-x402 responses return challenge=null and a reason. Does not sign, settle or verify receipts. Fresh requirements override documented receiver hints; inspect canonical_receiver_match before choosing to pay.
- `check_status`: Read the current SqueezeOS backend status and payment-readiness evidence. Returns both upstream envelopes and autonomous_spend=false. Use to diagnose readiness before purchase; HTTP availability or readiness flags alone do not establish settled or accepted delivery.
- `list_paid_apis`: List paid API operations declared by the live SqueezeOS OpenAPI document, bounded by limit. Returns method, path, job and advertised price. Use for route selection, then inspect that resource's fresh 402 challenge; listed prices do not authorize payment.
- `payment_info`: Read the documented SML x402 v2 Base/USDC configuration and receiver before selecting a paid route. Returns configuration and a read-only policy. Fresh resource requirements override these hints; this tool does not sign, spend or prove settlement.
- `x402_inspect_challenge`: Inspect a fresh x402 v2 challenge without sending payment. Compatible alias of check_payment with the same schema, 10-second unsigned probe and result. Use before a paid resource call; do not use as a signer, receipt verifier or settlement proof. Non-402 and incomplete challenges remain null rather than receiving invented defaults.
