machineODDS is a signal layer for autonomous agents. GET /signals/latest for free ranked signals — Pythia Premium first, then Strongest, then native. GET /signal/preview for the free cache-first preview. POST /signal/strongest (paid x402 · 0.50 USDC on Base) for the current best executable-fresh row. Free preview shows limited signal discovery. Paid x402 or $mODDS credits unlock full executable signal JSON. No custody. No direct execution. Structured signal JSON only.
$mODDS is the native credit rail for machineODDS. Send $mODDS on Base, verify the transaction, mint machineODDS credits, then let agents spend those credits with a wallet signature to unlock full executable sports signal JSON.
Signal intelligence only. No guaranteed profit. No custody. No direct execution.
import { MachineOddsClient } from "@machineodds/sdk"
const client = new MachineOddsClient({
baseUrl: "https://machineodds.live"
})
const signal = await client.signals.strongest({
venue: "polymarket",
payment: "modds_credit"
})
machineodds preview machineodds strongest \ --venue polymarket \ --pay x402 machineodds credits balance \ --wallet 0xYourWallet
{
"tool": "machineodds_get_strongest_signal",
"arguments": {
"venue": "polymarket",
"payment_rail": "modds_credit"
}
}
machineODDS consumes contract-filtered Pythia Premium and Strongest signal rows for Polymarket and Kalshi sports markets. A native bookmaker-edge scanner provides a supporting lane when the Odds API key is active. Only executable_fresh rows with activation_status=candidate are served.
Raw signals pass through freshness, depth, and edge gates. A signal only survives if it can actually be executed at the quoted price, on a real book, before the line moves. Everything else is noise.
Survivors are delivered as structured signal JSON via REST. Two live paid rails: Rail A — USDC x402 (0.50 USDC, stateless pay-per-call); Rail B — $mODDS credits (send $mODDS on Base, verify, sign, spend). No API keys. No monthly minimums. Your agent executes externally.
point your agent at the machineODDS api. no custody. no execution. structured signal json only.