provenpaid-mcp
Give your agent a pre-payment check for paid x402 endpoints. Evidence before you pay.
ProvenPaid checks an x402 endpoint before your agent relies on it: is its payment challenge valid, and do real wallets actually pay it on-chain, come back, and how concentrated are payments? This MCP server exposes that check as a tool and pays for it automatically, about $0.01 in USDC on Base per check, from a wallet you control.
Use it once before relying on an unfamiliar endpoint, not before every call.
Tools
| Tool | Cost | What it does |
|---|---|---|
check_x402_endpoint(url) |
about $0.01 | Validates the endpoint's x402 challenge and reports public on-chain evidence for its receiving address: distinct payers, repeat-payer share, payer concentration, coverage. |
provenpaid_methodology() |
free | How each signal is computed, what is not verified, and when a check is charged. |
provenpaid_status() |
free | Paying wallet address, network, price cap and paid checks left today. |
You are not charged when the URL is invalid or unsafe, is not an x402 endpoint, or offers no payment option in USDC on Base. Results are evidence, not a verdict: ProvenPaid does not verify service quality or that an endpoint controls its receiving address.
Install
Requires Python 3.11+. With uv:
uvx provenpaid-mcp
or pip install provenpaid-mcp.
Claude Desktop / Claude Code / Cursor
{
"mcpServers": {
"provenpaid": {
"command": "uvx",
"args": ["provenpaid-mcp"],
"env": {
"PROVENPAID_WALLET_PRIVATE_KEY": "0x...",
"PROVENPAID_DAILY_LIMIT": "20"
}
}
}
}
Wallet safety
- Use a dedicated wallet holding only a few dollars of USDC on Base. Never use a wallet with meaningful funds.
- The key stays on your machine, in memory only. It is never logged, returned by a tool, or sent anywhere; only signed payment authorizations leave the process.
- No ETH is needed: the payment facilitator pays network fees.
Guardrails enforced before anything is signed:
| Setting | Default | Meaning |
|---|---|---|
PROVENPAID_MAX_PRICE_USD |
0.01 |
Refuse any check priced above this (hard ceiling 0.10). |
PROVENPAID_DAILY_LIMIT |
20 |
Maximum paid checks per UTC day, persisted across restarts. |
PROVENPAID_NETWORK |
eip155:8453 |
Pay only on this network, only in its USDC. eip155:84532 for Base Sepolia testing. |
PROVENPAID_API_URL |
https://api.provenpaid.com |
Must be https. |
PROVENPAID_STATE_DIR |
~/.provenpaid-mcp |
Where the daily counter is kept. |
How it works
The server calls GET https://api.provenpaid.com/v1/check?url=.... The API answers HTTP 402 with x402 payment requirements; the official x402 SDK signs a single-use USDC authorization within the guardrails above and retries. Settlement happens only when the check delivers evidence. Methodology: https://api.provenpaid.com/methodology
License
MIT
Metadata
Release files for provenpaid-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| provenpaid_mcp-0.1.0.tar.gz | 11.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| provenpaid_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.9 kB
Release files / provenpaid_mcp-0.1.0.tar.gz
| Download URL | provenpaid_mcp-0.1.0.tar.gz |
|---|---|
| Size | 11.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7af3fadd74e83da28cbddfe32bdc81c5a8310bdf063c0b43b40063f0f3a31177
|
|
BLAKE2b-256 checksum How to use checksums |
d8640822842fceb60a9377cc66ef75939191da55cb10a226a24ecd3d6f88399a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / provenpaid_mcp-0.1.0-py3-none-any.whl
| Download URL | provenpaid_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0f63ccfc09f1ba7d1abb111f365fd36362da650f77883af6c788af8564cacb01
|
|
BLAKE2b-256 checksum How to use checksums |
c073cefd589b28432467aa192e0fad63776ad3a8e2786ccb9f498f1e5d4a4f4e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency log