What is the x402 Universal Payer MCP server?
Pay any x402 endpoint on the open web: auto-paying bridge with Bazaar discovery and spend caps.
How to install x402 Universal Payer
Copy-paste configuration for popular MCP clients.
MCP_BRIDGE_EVM_PRIVATE_KEYsecret0x-prefixed 32-byte hex private key that funds USDC payments on EVM chains (Base, Arbitrum, …). At least one of the EVM/SVM keys is required. Treat like cash — use a dedicated low-balance wallet.
MCP_BRIDGE_SVM_PRIVATE_KEYsecretSolana secret key that funds USDC payments: base58 64-byte secret key (Phantom / solana-keygen format) or a JSON array of 64 integers. At least one of the EVM/SVM keys is required. Treat like cash.
MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMICPer-call spending cap in atomic units (USDC has 6 decimals). Payments above this abort with a clear reason.
MCP_BRIDGE_MAX_TOTAL_ATOMICCumulative session spending ceiling in atomic units. Once total spend would exceed it, further payments abort until restart.
MCP_BRIDGE_ALLOWED_PAYTOComma-separated payee allowlist. When set, any payment whose payTo address is not listed is refused.
MCP_BRIDGE_ALLOWED_HOSTSComma-separated hostname allowlist for outbound paid requests. When set, any other host is refused before a request is signed.
MCP_BRIDGE_ALLOW_HTTPSet to 1 to allow http:// targets (local development only). https is enforced otherwise.
MCP_BRIDGE_DISCOVER_LIMITMax number of x402 Bazaar resources to register as dynamic tools at startup. Set 0 to disable discovery.
MCP_BRIDGE_BAZAAR_URLx402 Bazaar discovery endpoint. Override to point at a self-hosted or alternative bazaar.
MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIERHow many request-amounts to deposit at once when opening an EVM batch-settlement channel.
MCP_BRIDGE_MAX_DEPOSIT_ATOMICHard cap in atomic units on a single batch-settlement channel deposit or top-up.
X402_MCP_BRIDGE_CHANNELS_DIRDirectory for persisted batch-settlement channel state (survives client restarts).
RPC_URL_8453Per-chain RPC override, one variable per chain id (RPC_URL_<chainId>, e.g. RPC_URL_8453 for Base). Defaults to viem's public RPC for that chain.
{
"mcpServers": {
"x402-bridge": {
"command": "npx",
"args": [
"-y",
"@three-ws/mcp-bridge"
],
"env": {
"MCP_BRIDGE_EVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_EVM_PRIVATE_KEY>",
"MCP_BRIDGE_SVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_SVM_PRIVATE_KEY>",
"MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC>",
"MCP_BRIDGE_MAX_TOTAL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_TOTAL_ATOMIC>",
"MCP_BRIDGE_ALLOWED_PAYTO": "<YOUR_MCP_BRIDGE_ALLOWED_PAYTO>",
"MCP_BRIDGE_ALLOWED_HOSTS": "<YOUR_MCP_BRIDGE_ALLOWED_HOSTS>",
"MCP_BRIDGE_ALLOW_HTTP": "<YOUR_MCP_BRIDGE_ALLOW_HTTP>",
"MCP_BRIDGE_DISCOVER_LIMIT": "<YOUR_MCP_BRIDGE_DISCOVER_LIMIT>",
"MCP_BRIDGE_BAZAAR_URL": "<YOUR_MCP_BRIDGE_BAZAAR_URL>",
"MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER": "<YOUR_MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER>",
"MCP_BRIDGE_MAX_DEPOSIT_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_DEPOSIT_ATOMIC>",
"X402_MCP_BRIDGE_CHANNELS_DIR": "<YOUR_X402_MCP_BRIDGE_CHANNELS_DIR>",
"RPC_URL_8453": "<YOUR_RPC_URL_8453>"
}
}
}
}{
"mcpServers": {
"x402-bridge": {
"command": "npx",
"args": [
"-y",
"@three-ws/mcp-bridge"
],
"env": {
"MCP_BRIDGE_EVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_EVM_PRIVATE_KEY>",
"MCP_BRIDGE_SVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_SVM_PRIVATE_KEY>",
"MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC>",
"MCP_BRIDGE_MAX_TOTAL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_TOTAL_ATOMIC>",
"MCP_BRIDGE_ALLOWED_PAYTO": "<YOUR_MCP_BRIDGE_ALLOWED_PAYTO>",
"MCP_BRIDGE_ALLOWED_HOSTS": "<YOUR_MCP_BRIDGE_ALLOWED_HOSTS>",
"MCP_BRIDGE_ALLOW_HTTP": "<YOUR_MCP_BRIDGE_ALLOW_HTTP>",
"MCP_BRIDGE_DISCOVER_LIMIT": "<YOUR_MCP_BRIDGE_DISCOVER_LIMIT>",
"MCP_BRIDGE_BAZAAR_URL": "<YOUR_MCP_BRIDGE_BAZAAR_URL>",
"MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER": "<YOUR_MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER>",
"MCP_BRIDGE_MAX_DEPOSIT_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_DEPOSIT_ATOMIC>",
"X402_MCP_BRIDGE_CHANNELS_DIR": "<YOUR_X402_MCP_BRIDGE_CHANNELS_DIR>",
"RPC_URL_8453": "<YOUR_RPC_URL_8453>"
}
}
}
}{
"mcpServers": {
"x402-bridge": {
"command": "npx",
"args": [
"-y",
"@three-ws/mcp-bridge"
],
"env": {
"MCP_BRIDGE_EVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_EVM_PRIVATE_KEY>",
"MCP_BRIDGE_SVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_SVM_PRIVATE_KEY>",
"MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC>",
"MCP_BRIDGE_MAX_TOTAL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_TOTAL_ATOMIC>",
"MCP_BRIDGE_ALLOWED_PAYTO": "<YOUR_MCP_BRIDGE_ALLOWED_PAYTO>",
"MCP_BRIDGE_ALLOWED_HOSTS": "<YOUR_MCP_BRIDGE_ALLOWED_HOSTS>",
"MCP_BRIDGE_ALLOW_HTTP": "<YOUR_MCP_BRIDGE_ALLOW_HTTP>",
"MCP_BRIDGE_DISCOVER_LIMIT": "<YOUR_MCP_BRIDGE_DISCOVER_LIMIT>",
"MCP_BRIDGE_BAZAAR_URL": "<YOUR_MCP_BRIDGE_BAZAAR_URL>",
"MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER": "<YOUR_MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER>",
"MCP_BRIDGE_MAX_DEPOSIT_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_DEPOSIT_ATOMIC>",
"X402_MCP_BRIDGE_CHANNELS_DIR": "<YOUR_X402_MCP_BRIDGE_CHANNELS_DIR>",
"RPC_URL_8453": "<YOUR_RPC_URL_8453>"
}
}
}
}{
"servers": {
"x402-bridge": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@three-ws/mcp-bridge"
],
"env": {
"MCP_BRIDGE_EVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_EVM_PRIVATE_KEY>",
"MCP_BRIDGE_SVM_PRIVATE_KEY": "<YOUR_MCP_BRIDGE_SVM_PRIVATE_KEY>",
"MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC>",
"MCP_BRIDGE_MAX_TOTAL_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_TOTAL_ATOMIC>",
"MCP_BRIDGE_ALLOWED_PAYTO": "<YOUR_MCP_BRIDGE_ALLOWED_PAYTO>",
"MCP_BRIDGE_ALLOWED_HOSTS": "<YOUR_MCP_BRIDGE_ALLOWED_HOSTS>",
"MCP_BRIDGE_ALLOW_HTTP": "<YOUR_MCP_BRIDGE_ALLOW_HTTP>",
"MCP_BRIDGE_DISCOVER_LIMIT": "<YOUR_MCP_BRIDGE_DISCOVER_LIMIT>",
"MCP_BRIDGE_BAZAAR_URL": "<YOUR_MCP_BRIDGE_BAZAAR_URL>",
"MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER": "<YOUR_MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER>",
"MCP_BRIDGE_MAX_DEPOSIT_ATOMIC": "<YOUR_MCP_BRIDGE_MAX_DEPOSIT_ATOMIC>",
"X402_MCP_BRIDGE_CHANNELS_DIR": "<YOUR_X402_MCP_BRIDGE_CHANNELS_DIR>",
"RPC_URL_8453": "<YOUR_RPC_URL_8453>"
}
}
}
}claude mcp add x402-bridge --env MCP_BRIDGE_EVM_PRIVATE_KEY=<YOUR_MCP_BRIDGE_EVM_PRIVATE_KEY> --env MCP_BRIDGE_SVM_PRIVATE_KEY=<YOUR_MCP_BRIDGE_SVM_PRIVATE_KEY> --env MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC=<YOUR_MCP_BRIDGE_MAX_PRICE_PER_CALL_ATOMIC> --env MCP_BRIDGE_MAX_TOTAL_ATOMIC=<YOUR_MCP_BRIDGE_MAX_TOTAL_ATOMIC> --env MCP_BRIDGE_ALLOWED_PAYTO=<YOUR_MCP_BRIDGE_ALLOWED_PAYTO> --env MCP_BRIDGE_ALLOWED_HOSTS=<YOUR_MCP_BRIDGE_ALLOWED_HOSTS> --env MCP_BRIDGE_ALLOW_HTTP=<YOUR_MCP_BRIDGE_ALLOW_HTTP> --env MCP_BRIDGE_DISCOVER_LIMIT=<YOUR_MCP_BRIDGE_DISCOVER_LIMIT> --env MCP_BRIDGE_BAZAAR_URL=<YOUR_MCP_BRIDGE_BAZAAR_URL> --env MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER=<YOUR_MCP_BRIDGE_BATCH_DEPOSIT_MULTIPLIER> --env MCP_BRIDGE_MAX_DEPOSIT_ATOMIC=<YOUR_MCP_BRIDGE_MAX_DEPOSIT_ATOMIC> --env X402_MCP_BRIDGE_CHANNELS_DIR=<YOUR_X402_MCP_BRIDGE_CHANNELS_DIR> --env RPC_URL_8453=<YOUR_RPC_URL_8453> -- npx -y @three-ws/mcp-bridgeRelated MCP servers
3D AI Agent Avatar — render any GLB, give it a Solana wallet, a voice, and pump.fun powers.
View repository →MCP tools from three.ws: free + paid text-to-3D, rigging, agent reputation, market intel.
View repository →UCAI — The ABI-to-MCP Server Generator. Convert any smart contract ABI into an AI-ready MCP server.
View repository →Trending agents and coins, the $THREE holder leaderboard, and the site-wide activity ticker.
View repository →Browse the AgenC on-chain task marketplace, query the agent registry, and link identities.
View repository →Self-custodial pump.fun sniper: arm strategies, snipe, manage positions. Simulate by default.
View repository →