Losbeto — Market Data for AI Agents

io.github.rmartins1451Published by GitHub account rmartins1451v48.58.0Updated Nov 8, 2026

Cross-asset market data, LLM gateway and ML forecasts for AI agents. USDC via x402 + MPP.

VerifiedStreamable HTTPWeb executableFinanceData & AnalyticsAI & ML

Overview

AI-generated overview

Remote MCP server that lets an assistant search and fetch cross-asset market data — Brazil, US equities, forex, commodities, macro and crypto — with free…

What you can do
  • Search a catalog of market-data endpoints in plain language, with prices and parameters
  • Fetch data from a chosen endpoint, or pull a whole area at once with a snapshot (brazil, global, crypto)
  • List catalog categories with endpoint counts and cheapest prices
  • Check subscription status, remaining credit and expiry for the connection
  • Free calls return real but delayed samples; live data is billed per call or covered by a subscription
When to use it
Useful when an assistant needs market or macro figures — especially Brazilian central-bank and B3 series, point-in-time statistics, or quick cross-asset snapshots — and you want to judge the data through free delayed samples before paying.
Requirements
A remote streamable HTTP endpoint; no local package or runtime needed. No authentication is declared for the free tier. Live data needs either a subscription credit key sent as an Authorization Bearer header or a per-call x402 payment in USDC on Base, Solana, Algorand or Polygon.
Before you install
Live data costs money: per-call x402 payments in USDC from a wallet, or prepaid plans from about $0.10 up to $99.99/year. Paying requires signing on-chain transactions with your own wallet, and the README notes a client-side environment variable for an EVM key. Free calls return delayed samples, not live data. Treat the README's uptime, volume and compliance claims as the operator's own marketing.

Installation

In SourceWeft

  1. Open Losbeto — Market Data for AI Agents in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.rmartins1451%2Flosbeto/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "losbeto-market-data-for-ai-agents": {
      "type": "http",
      "url": "https://api.losbeto.xyz/mcp"
    }
  }
}

README

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, Algorand or Polygon.

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, 120 endpoints ($0.001–99.99): Base chain reads, FX, equities, commodities, macro calendar, crypto — plus Brazil's official statistics in depth, which nobody else on x402 covers.

Identity: registered ERC-8004 agent — agentId 87048 on Base, registration file at /.well-known/erc8004.json, domain-verified via /.well-known/agent-registration.json.

Compliance: Grade A 98/100 on x402lint (PASS 23 · FAIL 0) — and listed on x402scan, x402-list, the official MCP Registry (io.github.rmartins1451/losbeto), PyPI and npm.

Trusted in production: 92/100 with $278.98 settled volume (30d) on x402-list · $349+ verified on-chain volume indexed by Roundhouse · 100% uptime and 1,405 transactions (7d) on APIHub · 99.0% uptime (59d) on glama.ai.

Quick start

bash
# free — LLM taste, 5 calls/daycurl "https://api.losbeto.xyz/llm/free?q=hello"
# free — delayed preview of any paid endpointcurl "https://api.losbeto.xyz/forex-rate?pair=EURUSD&preview=1"
# free — machine-readable plans catalogcurl "https://api.losbeto.xyz/plans"
# paid — IPCA as it was known on 5 Aug 2026 (not as revised since)curl "https://api.losbeto.xyz/br-asof?series=ipca_12m_pct&date=2026-08-05"# -> HTTP 402 with the payment challenge; pay and repeat

With an x402 client (EVM):

js
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());

Pay from Solana, Algorand or Polygon

The 402 challenge lists every network we accept — read it once, then pay on the chain you prefer:

bash
curl -i "https://api.losbeto.xyz/pyth-price?symbol=SOL"# HTTP 402 — the v2 PAYMENT-REQUIRED header carries the full network list (CAIP-2):#   eip155:8453 (Base) · solana · algorand · eip155:137 (Polygon)# the v1 JSON body shows the two legacy short names:#   { "network": "base",   "scheme": "exact", "amount": ..., "payTo": "0xd5Ba9711..." }#   { "network": "solana", "scheme": "exact", "amount": ..., "payTo": "GEhr9HCFTR..." }
  1. Pick the accepts[] entry matching your chain — same price on all of them.
  2. Build the payment exactly as the exact scheme requires. Any x402 client with SVM support handles this for you; on Solana the payload is your partially-signed USDC transfer transaction, which the facilitator broadcasts and settles (it also pays the network fee — you only sign).
  3. Re-send the same request with the signed payload in the X-PAYMENT header. The response arrives on that same request — no polling, no webhook.

Algorand and Polygon follow the identical pattern (USDC, scheme exact) — Algorand is the rail our own indexers use for full-catalog round-trips. Settlements from every chain appear publicly in GET /receipts, and GET /agents.json lists the live payment networks machine-readably.

From npm:

bash
npm i -g losbeto-llm   # CLI + client for the LLM gateway (EVM: set LOSBETO_EVM_KEY — Solana/Algorand/Polygon above)npm i losbeto-mcp      # MCP server package

As an MCP server (Claude Desktop, Cursor, Claude Code):

json
{  "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.

Base chain reads — priced for loops ($0.001–0.002)

Raw chain data with an intelligence layer on top. Zero upstream cost (public RPC with short-cache and failover), so these are built to be hammered by agent loops:

EndpointPriceWhat you get
/chain-block$0.001Latest Base block: number, age, gas-used %, base fee
/gas-price$0.001Gas now + ML forecast ~10 min ahead (self-fed Holt double exponential smoothing — every paid call trains the model). Answers send_now or wait_~10min_cheaper with confidence
/chain-balance?address=$0.002ETH + ERC-20 balances (USDC/WETH/cbBTC default, up to 20 via tokens=), nonce, and a wallet-class heuristic (whale / degen / diversified / retail / newcomer)
/chain-ens?name= or ?address=$0.002ENS forward and reverse resolution (Ethereum mainnet) — embedded keccak/namehash, zero dependencies
/chain-tx?hash=$0.002Status, confirmations, value, fee, logs, explorer link. Add &explain=1 for an LLM plain-English explanation of the transaction

Agent-native: ERC-8004 reputation and wallet verdicts

EndpointPriceWhat you get
/agent-reputation?agentId=&clients=$0.010On-chain ERC-8004 identity (owner, tokenURI) plus aggregated feedback from the Reputation Registry (getSummary), for any registered agent. First x402 endpoint serving the ERC-8004 standard
/wallet-verdict?address=$0.020A graded verdict on any Base wallet (WHALE / STEADY / DEGEN / NEWCOMER / GHOST) with an LLM-written roast, idempotent via requestKey, plus a free shareable SVG card at /wallet-verdict/card.svg?address= — built to be posted

Plans — one payment, N calls (no settlement latency)

PlanPayYou 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.99unlimited, 24h
/week-pass$9.99unlimited, 7 days
/subscribe-pro$9.99/mo$15 balance monthly (+50%)
/subscribe-whale$19.99/mounlimited, 30 days
/founding-agent$49.99$75 balance (+50%), 180 days, founding badge
/enterprise$99.99/yrunlimited, 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.

EndpointPriceWhat you get
/br-pit-prooffreeMerkle roots, signer key, coverage window, verification recipe
/br-asof?series=&date=$0.09The value as known on that date — vintage, not revised
/br-revisions?series=$0.19First print → every correction, with size and observation timestamp
/br-archive?day=$0.09Signed daily snapshot: BCB macro + Ibovespa close
/br-brief$0.50Daily 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:

EndpointPriceWhat you get
/br-pix-parse?code=$0.010Decode and CRC16-verify a PIX BR Code (EMV-MPM)
/br-pix-code?key=&name=&city=$0.010Generate a valid static PIX BR Code, self-checked by re-parsing
/br-bizdays?from=&to=$0.010Bank business days on the ANBIMA 252 convention
/br-doc?doc=$0.010CNPJ/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; live on-chain as agentId 87048

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

bash
pip install -r requirements.txtexport SOLANA_WALLET_ADDRESS=...      # where payments landexport BASE_PAYTO_EVM=0x...           # optionalexport ALGORAND_WALLET_ADDRESS=...    # optionalexport BUYER_WALLETS=...              # your own test-buyer wallets, comma separatedgunicorn --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, EVM_RPC_URLS, ETH_RPC_URLS, PRICE_CHAIN_BLOCK … PRICE_WALLET_VERDICT (per-endpoint price overrides).

Contact

Roberto Martins — [email protected]

Missing a series or a market you need? Open an issue. New endpoints get built on request.

MIT licensed.

Source: README.md at commit 6b97702

Tools

5

search_market_data

FREE. FIRST STEP for any market-data question. Describe what you need in plain language and get back the endpoints that cover it, with their price and parameters. Covers Brazil (central bank, B3), US equities, forex, commodities, macro, crypto and AI research. Examples: 'Brazilian interest rate and inflation', 'gold price', 'is this Solana token a rug pull', 'correlation between bitcoin and the S&P', 'what is the Ibovespa doing'.

Parameterslimitqueryrequired

get_market_data

FREE for the delayed sample; the endpoint's x402 price applies for live data (from $0.001/call). Fetch data from an endpoint returned by search_market_data. Without a subscription this returns a REAL but delayed sample at no cost — enough to see the exact response shape and judge the data. With an active subscription key it returns live data. Live data is also purchasable per call in USDC over x402 at https://api.losbeto.xyz.

Parametersparamsendpointrequired

market_snapshot

FREE for delayed samples; live components billed at each endpoint's x402 price. One call for a whole area instead of several. 'brazil' returns central-bank macro, the real interest rate, Ibovespa and B3 blue chips together; 'global' returns forex, commodities, equities and macro regime; 'crypto' returns oracle consensus, sentiment and market regime. Use this when the question is broad rather than about one number.

Parametersscoperequired

list_categories

FREE. The catalog at a glance: every category, how many endpoints it holds and the cheapest price in it. Use when you want to know what this service covers before searching.

Takes no parameters.

account_status

FREE. Check whether this connection has an active subscription, how much credit is left and when it expires. Also returns how to subscribe (plans from $0.10). Call this if a request returned delayed data and you need live.

Takes no parameters.

Version history

81
  1. v48.58.0LatestNov 8, 2026
  2. v48.56.0Nov 7, 2026
  3. v48.53.0Nov 5, 2026
  4. v48.52.0Nov 4, 2026
  5. v48.51.0Nov 3, 2026
  6. v48.50.0Nov 3, 2026
  7. v48.46.0Nov 1, 2026
  8. v48.44.0Nov 1, 2026
  9. v48.43.0Nov 1, 2026
  10. v48.42.0Oct 31, 2026
  11. v48.41.0Oct 31, 2026
  12. v48.40.0Oct 30, 2026
  13. v48.39.0Oct 30, 2026
  14. v48.38.0Oct 29, 2026
  15. v48.34.1Oct 26, 2026
  16. v48.33.5Oct 25, 2026
  17. v48.33.4Oct 23, 2026
  18. v48.33.2Oct 23, 2026
  19. v48.33.1Oct 22, 2026
  20. v48.33.0Oct 21, 2026
  21. v48.32.1Oct 19, 2026
  22. v48.32.0Oct 19, 2026
  23. v48.31.8Oct 16, 2026
  24. v48.31.6Oct 16, 2026
  25. v48.31.5Oct 16, 2026
  26. v48.31.4Oct 16, 2026
  27. v48.31.2Oct 15, 2026
  28. v48.31.0Oct 14, 2026
  29. v48.30.1Oct 13, 2026
  30. v48.30.0Oct 13, 2026
  31. v48.29.0Oct 13, 2026
  32. v48.27.1Oct 12, 2026
  33. v48.26.5Oct 11, 2026
  34. v48.26.3Oct 11, 2026
  35. v48.26.2Oct 11, 2026
  36. v48.25.3Oct 10, 2026
  37. v48.25.1Oct 10, 2026
  38. v48.24.0Oct 10, 2026
  39. v48.23.0Oct 9, 2026
  40. v48.22.0Oct 9, 2026
  41. v48.21.0Oct 8, 2026
  42. v48.18.6Oct 8, 2026
  43. v48.18.4Oct 7, 2026
  44. v48.18.2Oct 7, 2026
  45. v48.18.1Oct 6, 2026
  46. v48.17.15Oct 6, 2026
  47. v48.17.11Oct 6, 2026
  48. v48.17.7Oct 3, 2026
  49. v48.17.5Oct 3, 2026
  50. v48.17.1Oct 2, 2026
  51. v48.16.5Oct 2, 2026
  52. v48.16.4Oct 2, 2026
  53. v48.16.1Oct 1, 2026
  54. v48.14.3Oct 1, 2026
  55. v48.14.1Oct 1, 2026
  56. v48.14.0Oct 1, 2026
  57. v48.13.0Sep 30, 2026
  58. v48.12.0Sep 30, 2026
  59. v48.10.3Sep 29, 2026
  60. v48.10.2Sep 29, 2026
  61. v48.9.28Sep 28, 2026
  62. v48.9.27Sep 28, 2026
  63. v48.9.26Sep 28, 2026
  64. v48.9.25Sep 27, 2026
  65. v48.9.20Sep 26, 2026
  66. v48.9.19Sep 25, 2026
  67. v48.9.17Sep 25, 2026
  68. v48.9.16Sep 25, 2026
  69. v48.9.14Sep 24, 2026
  70. v48.9.13Sep 23, 2026
  71. v48.9.12Sep 23, 2026
  72. v48.9.11Sep 23, 2026
  73. v48.9.9Sep 22, 2026
  74. v48.9.8Sep 22, 2026
  75. v48.9.5Sep 20, 2026
  76. v48.9.4Sep 20, 2026
  77. v48.9.1Sep 19, 2026
  78. v48.5.1Sep 19, 2026
  79. v48.5.0Sep 19, 2026
  80. v48.3.10Sep 18, 2026
  81. v48.3.9Sep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts