@arispay/payagent-mcp
OfficialThis MCP server lets an AI agent pay for HTTP calls to x402-protected APIs and inspect the wallet used for those payments.
Call any URL via
pay_apiwith method, headers, and body; if the endpoint responds HTTP 402, the server pays it through x402 (USDC on Base) and returns the response.Check wallet info via
check_wallet— deposit address and balance.Payments can be signed locally from a private key (
PAYAGENT_PRIVATE_KEY) or delegated to ArisPay with server-enforced limits.The README also describes additional tools such as wallet/agent management, merchant payments, paid-API discovery, and end-user controls, though the provided server schema only exposes
pay_apiandcheck_wallet.
Provides tools for making paid API calls via the x402 protocol, leveraging Coinbase CDP for secure signing and settlement of USDC payments on Base.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@arispay/payagent-mcp Fetch paid API data from https://api.example.com/report"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@arispay/payagent-mcp
One coherent USDC payment product for AI agents: call x402-paid APIs, with spend mandates, receipts, and idempotency. Works with Claude Desktop, Cursor, Windsurf, or any MCP client. A thin wrapper around the payagent SDK.
Two ways to hold the wallet:
Local key (zero signup). Set
PAYAGENT_PRIVATE_KEYto a funded EOA key.paysigns EIP-3009 locally — no ArisPay account, no email. The only guardrail is the wallet balance; use a dedicated low-balance wallet.Delegated custody (managed, recommended).
setup({ email })self-provisions an account, a CDP-managed wallet, and a spend mandate in one call. ArisPay enforces per-transaction, daily, and monthly limits server-side before signing; no private key ever lives in this process.
Tools
Seven core tools (the default surface):
Tool | What it does | Money |
| Create or recover an account + payer wallet in one call (delegated mode) | moves none |
| Search the paid-API catalog by intent + budget | read-only |
| Read a URL's price and payment requirements without paying | read-only |
| The complete machine path: request → 402 → select variant → validate policy → pay → structured receipt. Requires an | spends real money |
| Active identity, deposit address, on-chain USDC balance, mandate limits | read-only |
| Recent payments — server feed (delegated) or local receipts (self-custody) | read-only |
| Buy ArisPay Signal: recent signed probe evidence about an x402 resource (did a real paid probe settle and deliver?). A still-valid cached artifact returns without spending; an unknown resource is answered free | spends 1¢ per uncached call |
Wallet administration (create_agent, fund_agent, list_agents, rename_agent) loads only when the host config sets PAYAGENT_MCP_PROFILE=admin.
Every tool declares MCP safety annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); pay and check_payment_signal are the only destructive tools — both spend real money.
Related MCP server: agent-x402-paywall-mcp
Support matrix
Asset | Network | Local key (self-custody) | Delegated (managed mandate) |
USDC | Base (default) | ✅ | ✅ |
USDC | Ethereum, Polygon | ✅ | ✅ |
USDC | Base Sepolia (testnet) | ✅ | ✅ |
USDC (SPL) | Solana, Solana devnet | ❌ (EVM signing only) | ✅ (live on |
USD1 | BNB Chain | ✅ | ✅ |
Notes:
All prices are quoted by sellers in the 402 challenge;
payprefers an EVM variant and falls back to Solana when the seller offers no EVM option.Delegated mandates are integer cents, validated server-side before any signature exists. Local mode has no server-side cap.
Settlement is a single on-chain
transferWithAuthorization(EIP-3009): it succeeds or reverts atomically. When the seller returnsX-PAYMENT-RESPONSE, the receipt carries the settlement transaction hash.ArisPay's own facilitator (
facilitator.arispay.app) charges no facilitator fee; sellers may use any facilitator, and their fee/finality policy applies.
Setup
Add the server to your MCP client config. No environment variables are required — pick a wallet mode later, from inside the chat, or set one of the env options below.
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"arispay": {
"command": "npx",
"args": ["-y", "@arispay/payagent-mcp"]
}
}
}For the zero-signup mode, add the key to the env block:
"env": { "PAYAGENT_PRIVATE_KEY": "0x..." }Cursor
Same server block in .cursor/mcp.json. Windsurf: same pattern in ~/.codeium/windsurf/mcp_config.json.
Cold start, from nothing
Zero signup: generate a key with
npx payagent wallet new, put it in the host config asPAYAGENT_PRIVATE_KEY, send USDC on Base to the printed address.balanceshows the deposit address;paypays.Managed: ask the agent to run
setup({ email: "you@example.com" })— it returns the wallet address and mandate. Fund the wallet with USDC, confirm withbalance, thenpay. Credentials persist to~/.payagent/config.jsonand are shared with thepayagentCLI.
Environment variables (all optional)
Variable | Description |
| Funded EOA key for local self-custody signing (zero-signup mode). |
| Developer key — usually unneeded; |
| ArisPay API base URL. Default |
|
|
| Legacy single-agent pair for v2.0.x hosts. |
Migrating from v3
v4 is a breaking release: the surface collapsed to one x402/USDC product.
v3 tool | v4 |
|
|
|
|
|
|
|
|
|
|
— |
|
| unchanged, behind |
| removed — the fiat funding and platform (end-user) surfaces left the public MCP |
Receipts and idempotency
pay requires a caller-chosen idempotencyKey (min 8 chars — use a UUID). Every completed payment writes a machine-readable receipt (amount, asset, network, wallet, settlement tx, remaining mandate) to ~/.payagent/mcp-receipts.json. Re-calling pay with a key that already paid returns the stored receipt and does not pay again — including when the paid request failed mid-flight. history lists receipts in self-custody mode; delegated mode reads the authoritative server feed.
How it works
The agent calls
paywith a URL and anidempotencyKey; the seller answers HTTP 402 with its price.With
PAYAGENT_PRIVATE_KEYset,payagentsigns the EIP-3009 authorization locally. Otherwise ArisPay validates the request against the agent's mandate and signs via Coinbase CDP.payagentretries with the signed payment header; the seller's facilitator settles USDC on-chain.The tool returns the paid response plus a structured receipt.
In delegated mode, no private key lives in this process and payments that breach the mandate are rejected before any on-chain action. In local mode, the key is yours and stays in your process.
Install
npm install @arispay/payagent-mcpOr invoke directly via npx @arispay/payagent-mcp from an MCP client config — no pre-install required. npx buyforme-mcp is the same server under the consumer brand.
Related
payagent — the SDK + CLI for programmatic use
facilitator.arispay.app — ArisPay's open x402 facilitator, where paid 402s settle
x402 protocol — HTTP 402 payment standard
License
MIT
Available Tools
7 toolsbalanceARead-onlyIdempotent
Read-only: shows where the money is — the active payment identity (the stored ArisPay agent, delegated, or the PAYAGENT_PRIVATE_KEY-derived address, self-custody) with its USDC deposit address, on-chain balance and (delegated) spend-mandate limits, plus the account holder's own bank accounts (vIBANs) with their balances and pay-in details. Spends no money, never pays. Select this to tell the human where their money is and how to add more, to confirm a deposit landed, or when a payment fails.
Inputs: agent.
check_payment_signalADestructiveIdempotent
SPENDS REAL MONEY — 1¢ (USDC, Base mainnet) per UNCACHED call; a still-valid cached artifact returns WITHOUT spending, and an unknown resource is answered free. Buys ArisPay Signal: recent signed probe evidence about an x402 resource (did a real paid probe settle and deliver?) as an arispay.signal.v1 artifact, verified against the published JWKS. Use it BEFORE a material first payment to an unfamiliar resource, or after cached evidence expires. The decision denominator is CUMULATIVE exposure before the artifact expires — planned spend across all intended calls, or the expected cost of one failure, whichever is larger — not the price of the next call: an agent planning 100 calls to a 1¢ endpoint should check; an agent making a single 1¢ call should not. Skip it when cumulative exposure is at or below the 1¢ check price. Returns signed observational evidence with explicit freshness — NOT a guarantee, insurance, or endorsement. Network side effect: one HTTPS request to the Signal endpoint; payment side effect: the 1¢ x402 purchase on uncached calls.
Inputs: resource (required), agent.
discoverARead-onlyIdempotent
Searches the ArisPay marketplace for paid APIs by capability or plain-language intent, optionally budget-bounded (integer cents). Read-only — spends no money, needs no API key. Returns ranked candidates with endpoint URL, price in cents, health and verification flags. Select this to FIND an endpoint; then inspect to price a specific URL, then pay to call it.
Inputs: query (required), limit, category, budgetCentsMax.
historyARead-onlyIdempotent
Read-only: lists recent payments — the server-side activity feed in delegated mode (newest first), or locally recorded receipts in self-custody mode. Spends no money. Select this to reconcile what was paid, retrieve a past receipt, or audit an agent's spending.
Inputs: agent, limit.
inspectARead-onlyIdempotent
Fetches an x402-protected URL WITHOUT paying and reports its price, asset, network, and payment requirements. Read-only — spends no money, sends no payment header, needs no API key or account. Always safe. Select this before pay to know exactly what a resource costs.
Inputs: url (required).
payADestructiveIdempotent
SPENDS REAL MONEY — on-chain and irreversible. The complete machine payment path: makes the HTTP request, and if the server answers 402, selects the supported asset/network variant (USDC on Base/Ethereum/Polygon; delegated mode also settles Solana and BNB Chain variants), validates policy, pays, retries the request, and returns the response plus a structured machine-readable receipt. Requires an idempotencyKey: re-calling with a key that already paid returns the cached receipt and does NOT pay again. Mode selection: PAYAGENT_PRIVATE_KEY set → signs locally (self-custody; wallet balance is the only cap); otherwise pays through the stored ArisPay agent whose per-tx/daily/monthly mandate is enforced server-side BEFORE signing. Use inspect first to see the price. Do not use for ordinary unpaid HTTP requests.
Inputs: url (required), idempotencyKey (required), body, agent, +2 more.
setupAIdempotent
Creates or recovers an ArisPay account for delegated custody and provisions a USDC payer wallet in one call (side effects: registers the email, creates a Coinbase CDP-managed wallet, writes credentials to ~/.payagent/config.json on this machine). Moves no money — it does NOT spend funds. Idempotent: re-running with the same email recovers the existing account and its wallets. Not needed in self-custody mode: if PAYAGENT_PRIVATE_KEY is set, skip setup entirely — pay works with the local key alone.
Inputs: email (required), name.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool has a distinct function: discover finds endpoints, inspect prices one, pay executes, balance locates funds, history audits past payments, check_payment_signal buys probe evidence, and setup provisions an account. The only mild overlap is between the two pre-payment diagnostics (inspect vs check_payment_signal), but the descriptions clearly separate pricing from buying evidence.
Most names are single words but mix nouns (balance, history) with bare verbs (inspect, discover, pay, setup), and one tool breaks the pattern with snake_case multi-word 'check_payment_signal'. It remains readable and predictable in intent, but there is no consistent verb_noun convention.
Seven tools is well-scoped for a payment agent, with each earning its place across the discover→inspect→pay→history→balance workflow plus account setup and a safety-verification step. No filler or redundant tools.
The surface covers the full agent-payment lifecycle: provisioning, discovery, price inspection, paying, spending audit, balance lookup, and pre-payment signal verification. Minor gaps exist (no explicit tool to modify spend mandates or manage/withdraw vIBAN funds), but core workflows are fully covered.
Maintenance
Related MCP Connectors
Machine-payable API infrastructure for autonomous agents. Per-call x402 settlement in USDC.
Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.
Let an AI agent find and pay for x402 APIs and products in USDC on Base, within owner-set limits.
x402 pay-per-call APIs over MCP, settled in USDC on Base for autonomous agents and developers.
Related MCP Servers
- AlicenseAqualityDmaintenanceLets AI agents discover, pay for, and call any HTTP API per request using USDC, with gasless nanopayments and no API keys or accounts needed.552 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables pay-per-call access control for AI agents using HTTP 402 and on-chain settlement, allowing microtransactions for API usage.57 PyPIMIT
- AlicenseAqualityBmaintenanceEnables AI agents to discover and pay for x402-gated HTTP APIs, handling 402 Payment Required flows with local signing. Supports EVM and Solana with non-custodial wallet management.3337 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to make payments over x402-priced HTTP APIs using USDC on Monad testnet, with policy enforcement, budgets, and approval workflows, without exposing private keys.8AGPL 3.0