SimpleFunctions

World State API.

Event probability state, not headlines.

A live event-probability feed built from prediction markets, government data, economic indicators, and traditional market anchors. Roughly 800 tokens, refreshed every 15 minutes — the agent-native consumption surface for cross-venue probability state, also consumed by institutional research desks.

Cyberpunk oil painting — humanoid robot turning to gaze at the viewer over its shoulder, neon Tokyo street at night

The world watching you back — what an agent reads, in one snapshot.

Numbers an agent can act on.

Web search returns narratives. News APIs return fragments. World state returns calibrated odds.

Prediction markets force participants to settle on real outcomes with real money, so probabilities ship as numbers instead of paragraphs an agent has to interpret.

SourceReturnsWeakness

Web search

documents, narratives, recency-mixed

no calibration, no probability

News API

titles, sources, dates

no probability, no liquidity context

Market data API

prices, volume, orderbook

no compressed agent context

SimpleFunctions world state

probability state + regime + gov/econ + next actions

should be interpreted, not blindly trusted

Live output — exactly what your agent gets

~1,784 tokens · refresh every 15 min · cached at edge
GET /api/agent/worldtext/markdown
# World (2026-07-03 18:46 UTC)
Regime: Broad up-skew — markets resolving toward higher probability
SimpleFunctions Index: Disagree 54 | GeoRisk 0 | Breadth +0.45 | Activity 33
Baseline: last 12h

## [residual] 13.4σ volume @ 86¢ — above 40000 jobs be added in July?
- ticker: KXPAYROLLS-26JUL-T40000
- venue: kalshi
- title: Will above 40000 jobs be added in July 2026?: Above 40,000
- price: 86
- residualVr: 13.404
- vr: 14.404
- volume24h: 1245.98
  → why moving? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-1tthlp`
  → volume path · `GET /api/public/market/KXPAYROLLS-26JUL-T40000`
  → related · `GET https://simplefunctions.dev/api/agent/world?op=trail&from=KXPAYROLLS-26JUL-T40000`

## [divergence] rate of core CPI inflation be above 2… lagging Federal Reserve Cut rates by >25bps a… — 46¢ gap [Fed / monetary policy]
- lhs: {"name":"Will the Federal Reserve Cut rates by >25bps at their September 2027 meeting?: C","Δ":"67c"}
- rhs: {"name":"Will the rate of core CPI inflation be above 2.7% for the year ending in July 20","Δ":"22c"}
- gap: 46
- theme: Fed / monetary policy
- triggerTicker: KXFEDDECISION-27SEP-C26
- laggingTicker: KXCPICOREYOY-26JUL-T2.7
  → why? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-2sxfhz`
  → Will the Federal Reserve Cut rates by >25bps at their September 2027 meeting?: C spread · `GET https://simplefunctions.dev/api/agent/world?op=dispersion`
  → 6h path · `GET https://simplefunctions.dev/api/agent/world?op=history&dt=6h`

## [divergence] monthly average compute price of NVID… overshooting monthly average compute price of NVID… — 43¢ gap [Tech / IPO]
- lhs: {"name":"Will the monthly average compute price of NVIDIA's H200 be above $2.00 in Januar","Δ":"47c"}
- rhs: {"name":"Will the monthly average compute price of NVIDIA's B200 be above $3.50 in Octobe","Δ":"70c"}
- gap: -43
- theme: Tech / IPO
- triggerTicker: KXH200MS-27JAN-2.000
- laggingTicker: KXB200MS-26OCT-3.50
  → why? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-nnu8d4`
  → Will the monthly average compute price of NVIDIA's H200 be above $2.00 in Januar spread · `GET https://simplefunctions.dev/api/agent/world?op=dispersion`
  → 6h path · `GET https://simplefunctions.dev/api/agent/world?op=history&dt=6h`

## [residual] 6.3σ volume @ 79¢ — above 50000 jobs be added in July?
- ticker: KXPAYROLLS-26JUL-T50000
- venue: kalshi
- title: Will above 50000 jobs be added in July 2026?: Above 50,000
- price: 79
- residualVr: 6.254
- vr: 7.254
- volume24h: 536.93
  → why moving? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-1uda72`
  → volume path · `GET /api/public/market/KXPAYROLLS-26JUL-T50000`
  → related · `GET https://simplefunctions.dev/api/agent/world?op=trail&from=KXPAYROLLS-26JUL-T50000`

## [divergence] XRP trimmed mean be below:59 PM ET? lagging How many Senate members will vote Yea… — 27¢ gap [Crypto]
- lhs: {"name":"How many Senate members will vote Yea on a crypto market structure bill (as defi","Δ":"71c"}
- rhs: {"name":"Will XRP trimmed mean be below $0.90 by 11:59 PM ET on Jul 31, 2026?: Below $0.9","Δ":"14c"}
- gap: 27
- theme: Crypto
- triggerTicker: KXVOTECLARITY-26MAY16-T50
- laggingTicker: KXXRPMINMON-XRP-26JUL31-090
  → why? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-d2rsq`
  → How many Senate members will vote Yea on a crypto market structure bill (as defi spread · `GET https://simplefunctions.dev/api/agent/world?op=dispersion`
  → 6h path · `GET https://simplefunctions.dev/api/agent/world?op=history&dt=6h`

## [regime_shift] market gone quiet: Activity 83→33 (-50)
- baselineAt: 2026-07-03T07:00:00.351Z
- driver: 
- primaryMover: Activity
- moves: [{"k":"Activity","from":83,"to":33,"Δ":-50,"unit":""}]
- atBaseline: {"disagreement":51,"geoRisk":0,"breadth":0.4,"activity":83}
- now: {"disagreement":54,"geoRisk":0,"breadth":0.45,"activity":33}
  → 24h path · `GET https://simplefunctions.dev/api/agent/world?op=history&dt=24h`

## [consensus_break] Los Angeles C / Los Angeles R Pro Football t…: 11 markets deeply split (σ=45¢, range 92¢)
- seriesKey: KXSBHOST
- markets: [{"ticker":"KXSBHOST-2031-BAL","title":"Will the Baltimore Pro Football team be announced as the host for the 2031 Pro Football Championship?: Baltimore","price":95},{"ticker":"...
- dispersion: 45
- range: 92
- implication: markets disagree on resolution level
  → full spread · `GET https://simplefunctions.dev/api/agent/world?op=dispersion`
  → why disagree? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-fm79i3`

## [consensus_break] Democratics win the Senate race in Arkansas?: 4 markets deeply split (σ=44¢, range 92¢)
- seriesKey: SENATEAR
- markets: [{"ticker":"SENATEAR-26-D","title":"Will Democratics win the Senate race in Arkansas?: Hallie Shoffner","price":3},{"ticker":"SENATEAR-26-R","title":"Will Republicans win the Se...
- dispersion: 44
- range: 92
- implication: markets disagree on resolution level
  → full spread · `GET https://simplefunctions.dev/api/agent/world?op=dispersion`
  → why disagree? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-gn866`

## [consensus_break] Who will hold the WBC Heavyweight Title?: 4 markets deeply split (σ=44¢, range 94¢)
- seriesKey: KXWBCHEAVYWEIGHTTITLE
- markets: [{"ticker":"KXWBCHEAVYWEIGHTTITLE-27-CHISOR","title":"Who will hold the WBC Heavyweight Title on January 1, 2027?: Derek Chisora","price":88},{"ticker":"KXWBCHEAVYWEIGHTTITLE-27...
- dispersion: 44
- range: 94
- implication: markets disagree on resolution level
  → full spread · `GET https://simplefunctions.dev/api/agent/world?op=dispersion`
  → why disagree? · `GET https://simplefunctions.dev/api/agent/world?op=explain&item=s-ly67xp`

## [resolving_soon] 95% no in 1d — it rain in Austin?
- ticker: KXRAINHOLIDAY-260704-AUS
- venue: kalshi
- title: Will it rain in Austin on Jul 4, 2026?: Austin
- price: 5
- settlesInHours: 33
- impliedProbability: 0.05
- ifYes: resolves TRUE, pays 100¢
- ifNo: resolves FALSE, pays 0¢
  → price path · `GET /api/public/market/KXRAINHOLIDAY-260704-AUS`
  → nearby resolutions · `GET https://simplefunctions.dev/api/agent/world?op=catalyst`
  → siblings · `GET https://simplefunctions.dev/api/agent/world?op=trail&from=KXRAINHOLIDAY-260704-AUS`

## Zoom
- **Iran** — 71 markets → `GET https://simplefunctions.dev/api/agent/world/iran`
- **Oil & Energy** — 385 markets → `GET https://simplefunctions.dev/api/agent/world/oil`
- **Fed & Rates** — 884 markets → `GET https://simplefunctions.dev/api/agent/world/fed-rate`
- **Recession** — 587 markets → `GET https://simplefunctions.dev/api/agent/world/recession`
- **2026 Elections** — 1917 markets → `GET https://simplefunctions.dev/api/agent/world/election-2026`
- **Crypto** — 314 markets → `GET https://simplefunctions.dev/api/agent/world/bitcoin`
- **Ukraine/Russia** — 75 markets → `GET https://simplefunctions.dev/api/agent/world/ukraine`
- **China/Taiwan** — 101 markets → `GET https://simplefunctions.dev/api/agent/world/china`

---
Path: https://simplefunctions.dev/api/agent/world
Op: snapshot · Generated in 3375ms

Four endpoints. Same world, different resolutions.

Full snapshot, incremental delta, focused topics, or cross-market anomaly. All on the public tier.

API reference
/api/agent/world

Full panoramic snapshot. Six topics, anchor contracts, prediction index, traditional markets.

~800 tokens
/api/agent/world/delta?since=1h

Only what changed since timestamp. For agents in long-running sessions that need periodic refresh.

~30–50 tokens
/api/agent/world?focus=energy,geo

Same token budget, concentrated on fewer topics. More contracts, more depth per topic.

~800 tokens, focused
/.well-known/ai-world-state

Discovery document advertising endpoints, formats, refresh cadence, and licensing.

JSON manifest

How agents should consume world state

Snapshot at session start, reason against the numbers, monitor for change, drill into the next-action endpoints. Treat the state as context, not as a guarantee.

Snapshot

Call /api/agent/world at session start to seed the agent with the current event probability state.

Reason

Use salient markets, regime signals, and traditional anchors as context, not as a guarantee.

Monitor

During long sessions, call /api/agent/world/delta?since=1h to wake only on change.

Drill

Follow nextActions into market inspect, gov/econ query, screen, or index history.

31× improvement in world awareness.

The World Awareness Benchmark (WAB) is a 44-question battery covering recession odds, oil prices, geopolitical risk, and election probabilities. Same model, with and without world state context.

Read the paper

Baseline (no world state)

2.3%

+ 800 tokens of world state

70.5%

Geo

+50pp

Econ

+80pp

Energy

+71pp

Elections

+60pp

Markets

+75pp

Calibrated by real money.

Prediction market participants vote with real money on real outcomes. Wrong forecasts lose money. The settlement mechanism produces probability numbers more reliable than analyst reports or news summaries on the same questions.

SimpleFunctions distills 30,209 indicator-scored markets into a single world state. Anchor contracts always appear. Sports, weather, and daily closes are filtered out.

30,209

markets distilled

~800

tokens / snapshot

15 min

refresh cadence

6

rotating topics

Sources: Kalshi (CFTC-regulated), Polymarket, Databento, public econ/gov data.

World awareness in three lines.

Drop the world state into a system prompt, an MCP tool, or a periodic context refresh. Public tier, no setup.

# pip install simplefunctions-ai
from simplefunctions import world

state = world()  # ~800 tokens, calibrated by real money
messages = [
    {"role": "system", "content": f"You are a helpful assistant.\n\n{state}"},
    {"role": "user", "content": "Should I be worried about oil prices?"}
]

Ecosystem

FAQ

What is a world state API?

A world state API returns a compact, calibrated description of the live state of the world that an AI agent can read in one call. SimpleFunctions returns event probabilities, regime signals, geopolitical risk, market movers, and gov/econ anchors as a single ~800-token markdown or JSON object.

Why not use web search for world awareness?

Web search returns narratives, dates, and headlines. It does not return calibrated numbers. Prediction-market-implied probabilities are forced to settle on real outcomes, so the world state ships numbers an agent can act on, not paragraphs it has to interpret.

Why prediction markets as the source?

Participants vote with real money on real outcomes. The settlement mechanism punishes wrong forecasts and rewards calibration. That produces probability numbers that, in aggregate, are usually more reliable than analyst reports or news summaries on the same questions.

What topics are included in the world state?

Six rotating topics: geopolitics, macro/economy, energy, elections, crypto/systemic risk, and tech. Anchor contracts (recession probability, Fed actions, geopolitical risk) always appear. Sports, weather, and daily closes are filtered out.

How often is the world state refreshed?

Every 15 minutes. Calls to /api/agent/world return cached output within the window so identical requests stay free and fast.

Can I get only what changed since my last call?

Yes. /api/agent/world/delta?since=1h returns a compact diff so long-running agents can wake on change without re-ingesting the full snapshot.

Can I focus the world state on one or two topics?

Yes. /api/agent/world?focus=energy,geo concentrates the same token budget on fewer topics, returning more contracts and more depth per topic.

Is there a standard discovery URL for AI tools?

Yes. /.well-known/ai-world-state advertises the world state endpoints, formats, refresh cadence, and licensing so MCP clients, Claude Code, Codex, and other agents can auto-configure.

Can this be used inside MCP, Claude Code, or Codex agents?

Yes. The endpoint is plain HTTP markdown/JSON and works as an MCP tool, a system prompt block, or a periodic context refresh inside any agent loop.

Is the world state API free?

Yes. /api/agent/world, /api/agent/world/delta, /api/agent/world?focus=, and /.well-known/ai-world-state are public, no-auth endpoints with generous rate limits.

Related surfaces