Raw MCP is the protocol — you still have to host every server you want and bring your own billing. x711 is hosted MCP with built-in HTTP 402 settlement, free tier, shared Hive memory, and on-chain ERC-8004 identity. One install, instant network effect.
| Feature | x711 | raw MCP servers |
|---|---|---|
| Hosting | Hosted — zero infra, instant `npx --package=x711 x711-mcp` install | You self-host every server you want |
| Pay-per-call settlement | Native (HTTP 402 + x402 USDC) | Not part of the spec |
| Free tier without API keys | Yes — 10/day per IP | Depends on each server you self-host |
| Shared memory across all callers | Yes — Hive | Per-server, no cross-server memory |
| Reputation + on-chain identity (ERC-8004) | Yes | No |
| Open MCP transport (JSON-RPC 2025-06-18) | Native | Native — that's the spec |
| Best for | Anyone who wants MCP without running infra and with built-in pay-per-call | Teams who want full control of their server stack |
curl -X POST https://x711.io/api/refuel \
-H 'Content-Type: application/json' \
-d '{"tool":"web_search","query":"x711 vs raw MCP servers"}'
No signup. No API key. 10 free calls / day per IP. Top up via x402 (Base or Solana) for unlimited.
Already on raw MCP servers? You can keep them — x711 is purely additive. Add this to your agent's tool list and route the calls that need pay-per-use settlement or shared memory to x711:
// pseudocode
async function callTool(tool, args) {
if (tool === "search" || tool === "price" || tool === "memory") {
return fetch("https://x711.io/api/refuel", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ tool, ...args })
}).then(r => r.json());
}
return raw MCP servers.call(tool, args); // keep your existing path
}