PayRouter
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., "@PayRouterpay 5 USDC to example.com"
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.
PayRouter
Universal agentic payment router. One MCP server, every payment rail.
PayRouter gives any AI agent — Claude, ChatGPT, Cursor, or custom — the ability to pay across multiple payment rails through a single interface, with cross-rail budget enforcement and a unified audit trail.
What it does
┌─────────────────────────────────────────────┐
│ PayRouter Server │
│ │
│ MCP Endpoint REST API Dashboard │
│ /mcp /api/v1/* :3000 │
│ │
│ ┌─────────────────────────────────────┐ │
│ │ Core Engine │ │
│ │ Mandate Engine → Router → Adapter │ │
│ └─────────────────────────────────────┘ │
│ │ │ │ │ │
│ x402 Lightning Stripe UPI │
│ (USDC) (BTC/LN) (Card) (INR) │
└─────────────────────────────────────────────┘MCP server (Streamable HTTP) — any MCP client connects and gets payment tools
Mandate engine — cross-rail budget limits, category/merchant restrictions, deny-by-default
Smart routing — picks the best rail, falls back on failure
Dashboard — live transactions, budget bars, rail config, setup wizard
Docs site — Fumadocs + Next 16, Stripe-like documentation
Related MCP server: thebuyside-x402-agent
Supported rails
Rail | Protocol | Currency | Status |
x402 | HTTP 402 + stablecoins | USDC on Base | Working |
Lightning | L402 + NWC | BTC (sats) | Working (see |
Stripe | Shared Payment Tokens | USD/EUR/GBP | Planned |
UPI | Reserve Pay (Razorpay) | INR | Planned |
Quick start
git clone https://github.com/ram0verflow/payrouter.git
cd payrouter
nvm use # Node 22
pnpm install
pnpm -r build
pnpm --filter @payrouter/server startIf no rails are configured, the setup wizard opens at http://localhost:3000/setup.
Connect an agent
Add to your Claude Desktop config:
{
"mcpServers": {
"payrouter": {
"url": "http://localhost:3001/mcp"
}
}
}The agent gets 5 tools: request_payment, check_budget, list_transactions, discover_merchant_rails, revoke_all.
MCP tools
request_payment
merchant: "https://api.example.com"
amount: 0.01
currency: "USD"
preferred_rail: "auto"Checks mandate → routes to best rail → executes payment → returns normalized receipt.
check_budget
Returns remaining budget across all rails for the current agent.
list_transactions
Recent transaction history with rail/category/date filters.
discover_merchant_rails
Probes a URL to detect which payment rails the merchant accepts (HTTP 402 headers, etc).
revoke_all
Emergency kill switch — revokes all payment capabilities immediately.
Project structure
payrouter/
├── packages/
│ ├── core/ # Mandate engine, router, receipt schema, types
│ ├── adapters/
│ │ └── x402/ # x402 stablecoin adapter
│ └── server/ # MCP + REST API + SQLite
├── apps/
│ ├── dashboard/ # React + Vite + Tailwind
│ └── docs/ # Fumadocs + Next 16
├── examples/
│ └── l402/ # L402 Lightning payment example (testnet)Configuration
Create payrouter.config.json or use the dashboard setup wizard:
{
"server": {
"port": 3001,
"dashboard_port": 3000,
"db_path": "./payrouter.db"
},
"rails": {
"x402": {
"enabled": true,
"wallet_private_key": "0x...",
"network": "base-sepolia"
}
},
"mandates": {
"default": {
"daily_limit": 100,
"per_transaction_limit": 50,
"allowed_categories": ["*"],
"allowed_merchants": ["*"]
}
}
}Environment variables also work — see .env.example.
Development
pnpm --filter @payrouter/server start # API server on :3001
pnpm --filter dashboard dev # Dashboard on :3000
pnpm --filter docs dev # Docs on :3002Tech stack
TypeScript, pnpm workspaces
MCP:
@modelcontextprotocol/sdk(Streamable HTTP)Database: better-sqlite3
x402:
@x402/fetch+@x402/evm+ viemLightning:
@getalby/sdk(NWC)Dashboard: React 19 + Vite + Tailwind CSS
Docs: Fumadocs + Next.js 16 + Turbopack
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Payment infrastructure for AI agents: spending rules, approval flows, single-use virtual cards.
Non-custodial stablecoin bill-pay rails on Celo & Base for AI agents, settled on-chain via MCP.
Agentic rails for complex workflows with receipts, fees, and MCP tool access.
Zero-secret MCP gateway for AI agents: risk-scored, audited calls with human-in-the-loop approval.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server for AgentPay — the payment gateway for autonomous AI agents. Fund a wallet once, give your agent the key, and it discovers, provisions, and pays for tool APIs on its own. One key, every tool.112 npm1MIT
- AlicenseAqualityFmaintenanceThe MCP gateway that lets any AI agent discover and pay metered APIs on Base or Solana — without the user wiring payments themselves.36 npm1Apache 2.0

Loop MCP DualRailofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to pay for MCP tool calls using either Bitcoin/Lightning (L402) or USDC (x402) rails, with unified settlement and a 21% discount for Bitcoin payments.32 npmMIT- FlicenseNot gradedqualityBmaintenanceAn MCP server that enables AI agents to safely interact with a double-entry payments ledger, enforcing idempotency, policy-based access control, and human-in-the-loop approval for high-value actions.-