x402 payment wrapper for AI Agents and MCP Servers. USDC settlements on Base L2.
Runs on your machine from its package; the steps are below.
At most: moves money, runs code or commands, deletes data, or sends messages for you.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted โ your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y m2mcent-sdk
MCP client config
{
"mcpServers": {
"m2mcent": {
"command": "npx",
"args": [
"-y",
"m2mcent-sdk"
]
}
}
}Ultra-lightweight x402 payment interceptor for AI Agents and MCP Servers. Monetize any API in 3 lines of code.
npm install m2mcent-sdk
import { X402Handler } from 'm2mcent-sdk';
const x402 = new X402Handler({
rpcUrl: 'https://mainnet.base.org',
privateKey: process.env.RELAYER_PRIVATE_KEY!,
recipient: process.env.TREASURY_ADDRESS!
});
// Protect any Express endpoint with a USDC paywall
app.post('/api/analyze', x402.requirePayment("100000"), (req, res) => {
res.json({ result: "Premium analysis complete", receipt: req.paymentTx });
});
M2MCent implements the x402 Payment Protocol โ a machine-native payment standard inspired by HTTP 402:
402 Payment Required + payment metadata (Base64 encoded)Agent โโโบ API Server โโโบ 402 + metadata
Agent โโโ signs EIP-712 authorization
Agent โโโบ API Server + Payment-Signature header
โโโโบ Escrow.settle() on Base L2
Agent โโโ Premium Response + tx hash
| Parameter | Description | Required |
|---|---|---|
rpcUrl | Base Mainnet RPC endpoint | โ |
privateKey | Relayer wallet private key (for settlement) | โ |
recipient | Treasury address to receive payments | โ |
transferWithAuthorization (USDC native)| Parameter | Value |
|---|---|
| Network | Base Mainnet (Chain ID: 8453) |
| USDC Contract | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| Escrow Contract | 0xf3c3416A843d13C944554A54Ac274BB7fF264BcC |
| Settlement | Atomic, sub-second finality |
Perfect for Model Context Protocol servers:
import express from 'express';
import { X402Handler } from 'm2mcent-sdk';
const app = express();
const x402 = new X402Handler({
rpcUrl: process.env.BASE_RPC_URL!,
privateKey: process.env.RELAYER_PRIVATE_KEY!,
recipient: process.env.TREASURY_ADDRESS!
});
// Any MCP tool endpoint becomes monetizable
app.post('/api/tools/analyze', x402.requirePayment("50000"), async (req, res) => {
const result = await runMCPTool(req.body);
res.json({ ...result, paymentTx: req.paymentTx });
});
M2MCent powers 100+ production MCP servers on Base Mainnet, processing real USDC micro-payments for AI-to-AI commerce.
MIT ยฉ M2MCent