Losbeto — LLM gateway + market data for AI agents (x402)
Losbeto on x402-list — monitored uptime
One USDC micropayment per call. No signup, no API keys to manage — the payment is the auth. USDC on Base, Solana or Algorand.
Flagship: an OpenAI-compatible LLM gateway for agents. POST /v1/chat/completions and GET /llm at $0.005/call on live backends, with a free tier at /llm/free and model list at /v1/models. Behind it, 95+ market-data endpoints ($0.003–0.05): FX, equities, commodities, macro calendar, crypto — plus Brazil's official statistics in depth, which nobody else on x402 covers.
Quick start
curl "https://api.losbeto.xyz/llm/free?q=hello"
curl "https://api.losbeto.xyz/forex-rate?pair=EURUSD&preview=1"
curl "https://api.losbeto.xyz/plans"
curl "https://api.losbeto.xyz/br-asof?series=ipca_12m_pct&date=2026-08-05"
With an x402 client:
import { wrapFetchWithPayment } from "x402-fetch";
const fetchWithPay = wrapFetchWithPayment(fetch, wallet);
const r = await fetchWithPay("https://api.losbeto.xyz/llm?q=market%20outlook");
console.log(await r.json());
From npm:
npm i -g losbeto-llm
npm i losbeto-mcp
As an MCP server (Claude Desktop, Cursor, Claude Code):
{
"mcpServers": {
"losbeto": {
"url": "https://api.losbeto.xyz/mcp",
"headers": { "Authorization": "Bearer <credit-key>" }
}
}
}
Get a credit key with one on-chain payment: POST https://api.losbeto.xyz/buy-credits.
Plans — one payment, N calls (no settlement latency)
| Plan | Pay | You get |
|---|
/buy-credits | $0.99 | $1.25 balance (+25%), 30 days |
/buy-credits-5 | $4.99 | $6.00 balance (+20%), 60 days |
/buy-credits-25 | $24.99 | $33.00 balance (+32%), 90 days |
/day-pass | $2.99 | unlimited, 24h |
/week-pass | $9.99 | unlimited, 7 days |
/subscribe-pro | $9.99/mo | $15 balance monthly (+50%) |
/subscribe-whale | $19.99/mo | unlimited, 30 days |
/founding-agent | $49.99 | $75 balance (+50%), 180 days, founding badge |
/enterprise | $99.99/yr | unlimited, 12 months |
Machine-readable at /plans, human-readable at /pricing. First purchase earns a bonus call, credited to your session token (7 days). The node never discounts list price — it adds value after payment instead.
The Brazil moat: point-in-time official statistics
The problem: the IPCA number you fetch from the Banco Central API today is not the number that was published back then. Official Brazilian series are revised. Any backtest built on the current series silently contains look-ahead bias.
The US has ALFRED for this. Brazil has nothing public.
This node has been recording Brazilian official statistics as they were published, timestamping every reading and signing each day with Ed25519 — continuously, since deploy. That archive cannot be scraped retroactively by anyone, including us.
| Endpoint | Price | What you get |
|---|
/br-pit-proof | free | Merkle roots, signer key, coverage window, verification recipe |
/br-asof?series=&date= | $0.09 | The value as known on that date — vintage, not revised |
/br-revisions?series= | $0.19 | First print → every correction, with size and observation timestamp |
/br-archive?day= | $0.05 | Signed daily snapshot: BCB macro + Ibovespa close |
/br-brief | $0.50 | Daily Brazil macro + equity brief, in English |
Series tracked: selic_meta_pct, cdi_daily_pct, ipca_12m_pct, igpm_month_pct, usd_brl_ptax, eur_brl.
The Brazilian primitives (zero upstream, sub-millisecond)
Pure computation over Brazilian specifications — no external API in the request path, no rate limit, no provider outage, priced for loops:
| Endpoint | Price | What you get |
|---|
/br-pix-parse?code= | $0.004 | Decode and CRC16-verify a PIX BR Code (EMV-MPM) |
/br-pix-code?key=&name=&city= | $0.004 | Generate a valid static PIX BR Code, self-checked by re-parsing |
/br-bizdays?from=&to= | $0.004 | Bank business days on the ANBIMA 252 convention |
/br-doc?doc= | $0.004 | CNPJ/CPF modulo-11 check-digit validation |
Verifiable from outside: GET /zero-upstream.json declares which routes never touch the network.
Transparency — receipts are public
GET /receipts — every settlement, public
GET /.well-known/honest-revenue.json — signed; separates organic (wallets the operator doesn't control) from operator-test and self-sweep
GET /scorecard.json — 24h availability, p50/p95 latency, traffic mix, signed
GET /.well-known/erc8004.json — ERC-8004 registration file (trustless agent identity)
Verify anything, offline
Every observation is a Merkle leaf:
leaf = sha256("<series>|<ref_date>|<value>|<seq>|<observed_ts>")
Ed25519( "losbeto-pit|<day>|<root>" ) # pubkey at /br-pit-proof
Daily roots are optionally anchored on Algorand as zero-value note transactions, so the timestamp does not depend on trusting us.
For agents and indexers
Start at GET /agents.json — outcome-based flows with exact parameters, payment networks, free tier, and pointers to the OpenAPI contract, the x402 manifest, the scorecard and the fidelity recipes. CORS open, cached 1h. ScoutScore, x402scan, x402-list and other rankers: /agents.json, /scorecard.json, /.well-known/fidelity.json, /zero-upstream.json, /bazaar-status. Free probes never charge; a paid route that hits an internal error degrades to a 402 rather than a 500.
Run it yourself
pip install -r requirements.txt
export SOLANA_WALLET_ADDRESS=...
export BASE_PAYTO_EVM=0x...
export ALGORAND_WALLET_ADDRESS=...
export BUYER_WALLETS=...
gunicorn --workers 2 --threads 8 --preload --bind 0.0.0.0:$PORT nexus_omega:app
Useful env vars: AI_WARMER=1, LLM_DAILY_GLOBAL_CAP, LLM_DAILY_KEY_CAP, PIT_INTERVAL_S, ALGO_ANCHOR_MNEMONIC, X402LIST_TOKEN.
Roberto Martins — roberto.martins622@gmail.com
Missing a series or a market you need? Open an issue. New endpoints get built on request.
MIT licensed.