MCP setup

Let Claude pay through GenesisPay

@genesis-tech/peerpay-mcp is a stdio MCP server that exposes GenesisPay discovery and payment tools to any MCP client. Your assistant pays within the limits you set in the dashboard — over-limit payments come back as an approval link for you, never as silent spending.

Prerequisites

Follow the agent quickstart first: log in, create an agent account, fund it, set limits, and export a pp_ag_ API key. Both env vars below are required — PEERPAY_BASE_URL is the GenesisPay deployment your account lives on.

Claude Code

Terminal
claude mcp add peerpay \
  --env PEERPAY_AGENT_KEY=pp_ag_your_agent_key \
  --env PEERPAY_BASE_URL=https://your-peerpay-host \
  -- npx -y @genesis-tech/peerpay-mcp

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "peerpay": {
      "command": "npx",
      "args": ["-y", "@genesis-tech/peerpay-mcp"],
      "env": {
        "PEERPAY_AGENT_KEY": "pp_ag_your_agent_key",
        "PEERPAY_BASE_URL": "https://your-peerpay-host"
      }
    }
  }
}

Restart Claude Desktop after editing the config.

Tools

  • peerpay_discover(query, category?, limit?)

    Search the public discovery directory for x402-payable services — then pay the best match's resourceUrl with peerpay_pay.

  • peerpay_pay(url, maxAmountUsdc?)

    Pay an x402 URL from the agent account. Returns the paid resource, or an approval URL when the payment needs human sign-off.

  • peerpay_payment_status(paymentId)

    Poll a payment — used to follow up on pending approvals until they settle, get denied, or expire.

  • peerpay_account()

    Read the account: wallet address, USDC balance, spending policy, and spend totals for today and this month.

When a payment needs approval, the tool result instructs the model to report the approval URL to you and poll with peerpay_payment_status — money only moves after you approve it in the dashboard.