io.github.Evozim/m2mcent
x402 payment wrapper for AI Agents and MCP Servers. USDC settlements on Base L2.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
m2mcent-sdkclaude mcp add m2mcent -e 'BASE_RPC_URL=<BASE_RPC_URL>' -e 'RELAYER_PRIVATE_KEY=<your relayer_private_key>' -e 'TREASURY_ADDRESS=<TREASURY_ADDRESS>' -- npx -y m2mcent-sdk@1.0.5
{
"mcpServers": {
"m2mcent": {
"command": "npx",
"args": [
"-y",
"m2mcent-sdk@1.0.5"
],
"env": {
"BASE_RPC_URL": "<BASE_RPC_URL>",
"RELAYER_PRIVATE_KEY": "<your relayer_private_key>",
"TREASURY_ADDRESS": "<TREASURY_ADDRESS>"
}
}
}
}
Variables d'environnement
BASE_RPC_URLobligatoire Base Mainnet RPC endpoint URLRELAYER_PRIVATE_KEYobligatoire secret Relayer wallet private key for on-chain settlementTREASURY_ADDRESSobligatoire Treasury wallet address to receive payments
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
🛰️ M2MCent SDK — x402 Payment Wrapper for AI Agents
Ultra-lightweight x402 payment interceptor for AI Agents and MCP Servers. Monetize any API in 3 lines of code.
🚀 Quick Start
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 });
});
📐 How It Works
M2MCent implements the x402 Payment Protocol — a machine-native payment standard inspired by HTTP 402:
- Agent requests a protected endpoint
- Server responds with
402 Payment Required+ payment metadata (Base64 encoded) - Agent signs an EIP-712 typed data authorization (gasless for the payer)
- Server settles atomically on-chain via the M2MCent Escrow contract
- Agent receives the premium response + transaction receipt
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
⚙️ Configuration
| Parameter | Description | Required |
|---|---|---|
rpcUrl | Base Mainnet RPC endpoint | ✅ |
privateKey | Relayer wallet private key (for settlement) | ✅ |
recipient | Treasury address to receive payments | ✅ |
🔒 Security
- Non-custodial: Funds flow directly from payer → treasury via on-chain escrow
- Gasless for payers: Uses EIP-3009
transferWithAuthorization(USDC native) - Zero-Leak: No agent data is retained after settlement
- Atomic: Payment and service delivery happen in a single request cycle
🌐 Network Details
| Parameter | Value |
|---|---|
| Network | Base Mainnet (Chain ID: 8453) |
| USDC Contract | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| Escrow Contract | 0xf3c3416A843d13C944554A54Ac274BB7fF264BcC |
| Settlement | Atomic, sub-second finality |
🧩 MCP Server Integration
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 });
});
📊 Ecosystem
M2MCent powers 100+ production MCP servers on Base Mainnet, processing real USDC micro-payments for AI-to-AI commerce.
📄 License
MIT © M2MCent
Questions fréquentes
Qu'est-ce que io.github.Evozim/m2mcent ?
x402 payment wrapper for AI Agents and MCP Servers. USDC settlements on Base L2.
Comment installer io.github.Evozim/m2mcent ?
Il s'exécute sur votre machine. Dans Claude Code : claude mcp add m2mcent -e 'BASE_RPC_URL=<BASE_RPC_URL>' -e 'RELAYER_PRIVATE_KEY=<your relayer_private_key>' -e 'TREASURY_ADDRESS=<TREASURY_ADDRESS>' -- npx -y m2mcent-sdk@1.0.5. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour io.github.Evozim/m2mcent ?
Oui. Il attend BASE_RPC_URL, RELAYER_PRIVATE_KEY, TREASURY_ADDRESS, à renseigner dans sa configuration.
io.github.Evozim/m2mcent est-il open source ?
Oui. Son code est sur GitHub sous licence MIT.
Qui maintient io.github.Evozim/m2mcent ?
Il est publié par Evozim. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.