HPP x402 MCP Bridge

MCP bridge for autonomous x402 payments in HPP USDC.e — discover and pay for services per call.

OtherTypeScriptv0.1.21

@hpp-io/x402-mcp-bridge

npm MCP Registry License Node

The agent payment rail for HPP. A stdio MCP bridge + the hpp-x402 CLI that let Claude Desktop / Claude Code / Cursor / Windsurf / OpenClaw make autonomous HPP USDC.e payments over x402 — discover paid services, pay per call, within a spend cap. No API keys, no manual signing.

📖 Full documentation

hpp-io/x402-tools — the complete manual: how it works, every command, buyer and seller flows, payment schemes (exact / upto), wallet modes, and troubleshooting. This README is a quick reference.

Install

# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/hpp-io/x402-tools/main/install/install.sh | bash
# Windows (PowerShell)
irm https://raw.githubusercontent.com/hpp-io/x402-tools/main/install/install.ps1 | iex
# …or npm
npm install -g @hpp-io/x402-mcp-bridge

Needs Node 20+. On a headless box (no OS keychain) use setup --print-key — see the manual.

Quick start

hpp-x402 setup --install claude-code   # create a wallet + register into your host
hpp-x402 fund                          # where to send USDC.e (gasless, no native gas)
hpp-x402 status                        # confirm it's wired

Restart your host and your agent can discover and pay for services. Browse and pay from the terminal too:

hpp-x402 discover "price prediction"               # semantic search; your network only
hpp-x402 describe <id>                             # input args (schema + example) — no payment
hpp-x402 call <url-or-id> --body '{"hi":"there"}'  # pay + call — a URL, or an id from discover

Full command reference, selling (serve), schemes, and Safe mode → the manual.

Use it from an MCP host

The host spawns the bridge over stdio. A bare entry boots zero-config on HPP Sepolia with an auto-created keychain wallet:

{ "mcpServers": { "hpp-x402": {
  "command": "npx", "args": ["-y", "@hpp-io/x402-mcp-bridge"]
} } }

hpp-x402 install <host> writes this for you. Note: a bare npx @hpp-io/x402-mcp-bridge runs the MCP server (what the host wants) — for the CLI use npx -y -p @hpp-io/x402-mcp-bridge hpp-x402 <command>.

Host-facing tools

ToolWhat it does
wallet_addressreport your wallet address (to fund it)
hpp_discoverlist/search the curated HPP directory (read-only)
hpp_describeone service's input args — schema + example (read-only)
hpp_callcall a discovered service (HTTP/MCP/A2A); pays via your wallet
x402_http_callpay + call any x402 HTTP endpoint
pay_a2a_agentpay + message another A2A agent

Every paid call stays within your spend cap; discovery never holds funds or sees your keys.

Key env (all optional)

VarNotes
DELEGATE_PRIVATE_KEYauto-created in the OS keychain if unset
HPP_NETWORKeip155:181228 Sepolia (default) / eip155:190415 Mainnet
RESOURCE_SERVER_URLproxy one upstream MCP server (omit = local tools only)
SAFE_ADDRESS + ALLOWANCE_MODULE_ADDRESSset both = Safe (governance) mode
HPP_PAYMENT_DELEGATIONERC-7710 payment delegation a wallet granted to this key: pays erc7710 accepts from the user's smart account under on-chain caps — this key needs no USDC.e. Validated at boot; without it such accepts are skipped

Full environment reference + Safe/governance setup are in the manual.

Related

Building an agent / SDK integration (LangChain, OpenAI function-calling, AgentKit, A2A)? See the runnable gallery → hpp-io/hpp-x402-agent-sample

License

Apache-2.0

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y @hpp-io/x402-mcp-bridge

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-hpp-io-x402-mcp-bridge": {
      "command": "npx",
      "args": [
        "-y",
        "@hpp-io/x402-mcp-bridge"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

@hpp-io/x402-mcp-bridgenpm

Compatible MCP Clients

HPP x402 MCP Bridge works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More