World Cup 2026 Intelligence (Premium)
A hosted, read-only intelligence layer for the FIFA World Cup 2026. It joins three things that are normally separate — official match truth, live prediction-market state, and AI-grounded context — under one canonical id space, so an agent can go from a market to the fixture to the teams in a single hop and reason about why a price is moving.
This skill itself runs no code. Like the machina
gateway it builds on, it shells out to machina-cli, selects the hosted World
Cup Intelligence project, and the agent harness talks to that project's MCP
server. Tenant routing, provider keys, rate limits, and caching all live
server-side. You never call a raw HTTP API or hold a provider key.
Read-only intelligence — not advice. Every output is informational sports market intelligence. Not betting, trading, financial, or investment advice. This layer has no order-placement, trading, or portfolio endpoints. If the user wants to act on a signal, that execution happens in their own agent, on their own account and keys — never here.
Premium / billing
This is a paid, metered layer (Machina Credits — see your project's credit-cost
classes). Free public data does not flow through here. Where your agent
harness supports agent-native pay-per-call (x402), the MCP server advertises price
per tool; otherwise calls draw from the project's credit balance. If a call
returns a 402 / "payment required" / "insufficient credits" error, surface it to
the user and stop — do not retry-loop.
Quick Start
Inspect-before-run fallback
If a shell installer is required by the user's environment, download and inspect it before execution instead of piping remote content directly into a shell:
CRITICAL: Before Any Premium Call
Verify, in order — fix the specific failing step, never loop on the same call:
machina-cliis installed —which machina/machina version.- Authenticated —
machina auth whoamireturns a user. - The World Cup Intelligence project is selected —
machina project use <id>. - The harness is connected to that project's MCP server (tools are visible).
What you get
All tools are read-only. Group by job:
Identity & fixtures (official match truth)
Market intelligence (Kalshi + Polymarket, URN-linked)
Conversational
world-cup-intelligence-agent— full read + market context.world-cup-market-analyst-agent— market-focused analyst.
The intelligence loop
A typical agent flow — research only, no execution:
- Find the market —
worldcup-search-markets {"query":"Brazil","status":"open"}. - Anchor it to truth — each market carries
event_urn+related_team_urns;worldcup-resolve(orworldcup-get-event-context) expands the fixture, squads, standings, injuries. - Read live state —
worldcup-get-market-statefor price, order-book depth, history, trades;worldcup-market-movers/worldcup-compare-market-sourcesfor movement and cross-venue gaps. - Explain & brief —
worldcup-explain-market-move,worldcup-find-market-edges(informational only),worldcup-generate-market-brief,worldcup-fan-sentiment-context. - Hand off — return the signal + sources + freshness/liquidity/resolution caveats to the user. Stop there. Any trade is the user's own action elsewhere.
Identifiers
Every entity has a canonical machina URN, stable across providers:
- event —
urn:machina:sport:soccer:event:{home}-vs-{away}:{YYYYMMDD}:wor - team —
urn:machina:sport:soccer:team:{slug}:{iso3} - player —
urn:machina:sport:soccer:player:{slug}:{YYYYMMDD-dob}:{iso3} - competition —
urn:machina:sport:soccer:competition:fifa-world-cup-2026:wor
iso3 is the lowercased ISO-3166 alpha-3 (UK home nations use FIFA codes eng/sco/wal).
Every doc also carries a uniform provider_ids map (one id per provider).
Alternate key: reads accept the canonical event_urn or provider_event_id
(the api-football fixture id, e.g. 1489417) — the latter is the simplest client
handle. Markets are keyed {source}:{source_market_id} (e.g. kalshi:KXWCGAME-…,
polymarket:2415458).
Freshness
- Identity / fixtures — synced; teams/events stable, players refresh daily.
worldcup-search-markets— cached, refreshed every ~30 min; responses warn past 15 min.worldcup-get-market-state— live from the source.worldcup-market-movers— hourly snapshot series; needs ≥2 buckets to show movement.
Common Errors & Recovery
Commands that DO NOT exist — never call these
any— this layer is read-only; no such tool exists. Execution is the user's own, elsewhere.place,order,trade,buy,sell,bettoolraw— go through the MCP server; keys and the correctrequests/ direct provider HTTPsearchLimit/nestedfilterslive server-side.— the MCP server runs on Machina infra; the harness connects via its own MCP config.machina mcp start/machina mcp connect
Guardrails
- Never present an output as betting/trading/financial advice.
- Never use "guaranteed edge", "guaranteed profit", or "bet this" language — edges/movers are informational candidates, not recommendations.
- Always return source, freshness, and resolution/liquidity caveats with any market output.
