simplefunctions

Calibrated world model for AI agents.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only

What it can do

    What data it sees

    Do you need an account

    No: the server works without sign-in

    Calibrated world model for AI agents. 40 tools: world state, markets, trading. Kalshi + Polymarket.

    How to connect

    How to connect simplefunctions to Claude

    The server address to paste into Claude settings:

    https://simplefunctions.dev/api/mcp/mcp

    1. Open Claude (claude.ai or the desktop app).
    2. Go to Settings → Connectors.
    3. Click Add custom connector.
    4. Paste the server address copied below into Remote MCP server URL and click Add.
    5. In a chat, click + → Connectors and switch the new connector on.

    Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

    Authorization

    After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

    How to connect simplefunctions to ChatGPT

    The server address to paste into ChatGPT settings:

    https://simplefunctions.dev/api/mcp/mcp

    1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
    2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
    3. Open Settings → Connectors and click Create.
    4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
    5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
    6. In a new chat open + → Apps/Connectors and enable the connector.

    OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

    Authorization

    On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

    How to connect simplefunctions to Cursor

    The server address to paste into Cursor settings:

    https://simplefunctions.dev/api/mcp/mcp

    Fastest: click Open in Cursor below and confirm the prompt.

    Manually:

    1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
    2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
    3. Save the file. The server appears in the MCP list; authorize it there if asked.

    Authorization

    If the service needs sign-in, an authorize button appears next to the server in the MCP list.

    Server tool list (108)

    Raw names from tools/list. Only developers need these.

    get_contextSTART HERE. Global market snapshot: top edges (mispriced contracts), price movers, highlights, traditional markets — live exchange data updated every 15 min. With thesisId + apiKey: thesis-specific context including causal tree, edges with orderbook depth, evaluation history, and track record. Global context is free-tier and rate-limited; API keys unlock higher limits.
    list_thesesList all theses for the authenticated user.
    inject_signalFeed an observation into a thesis — news, price move, or external event. Consumed in next evaluation cycle to update confidence and edges.
    trigger_evaluationForce immediate evaluation: consume all pending signals, re-scan edges, update confidence. Use after injecting important signals.
    scan_marketsSearch Kalshi prediction markets by keyword, series, or ticker. Returns live prices and volume — data not available via web search. Free-tier and rate-limited.
    create_thesisCreate a new prediction market thesis from a TESTABLE CLAIM — a statement that can be verified true or false at a future time. GOOD: "Bitcoin closes 2026 above $50,000". BAD: "High conviction due to large price gap" (that is reasoning, not a claim). Builds a causal tree and scans for mispriced contracts. Formation takes ~60s.
    explore_publicBrowse public theses from other users. Free-tier and rate-limited. Pass a slug to get details, or omit to list all.
    get_marketsGet traditional market prices via Databento. Default: SPY, VIX, TLT, GLD, USO. Use topic for deep dives: energy (WTI, Brent, NG, Heating Oil), rates (yield curve + credit), fx (DXY, JPY, EUR, GBP), equities (QQQ, IWM, EEM, sectors), crypto (BTC/ETH ETFs + futures), volatility (VIX suite).
    query_databentoFree-form historical market data query via Databento. Stocks, ETFs, CME futures (WTI, Brent, bonds, VIX, FX, BTC), options. OHLCV daily/hourly/minute, trades, BBO. Max 30 days, 5 symbols, 500 rows. Free-tier and rate-limited.
    queryBEST FOR QUESTIONS. Ask any question about probabilities or future events. Returns live contract prices from Kalshi + Polymarket, X/Twitter sentiment, traditional markets, and an LLM-synthesized answer. Free-tier and rate-limited; API keys unlock higher limits.
    screen_marketsIndicator-based market screener. The middle layer between raw price scan and LLM thesis edges. Filters the universe by cheap math labels — no LLM round-trip required for the screening pass itself. Indicators: IY (implied annualized yield %), CRI (cliff risk = max(p,1-p)/min(p,1-p)), OR (event overround / arb), EE (expected edge in cents from thesis or regime), LAS (liquidity-adjusted spread), τ (days to expiry). Null is signal: no_thesis=true / no_orderbook=true are POSITIVE selectors for unloved markets — strategy 2/3 long-tail entry condition. Free-tier and rate-limited; API keys unlock higher limits.
    create_strategySet up automated trading: define entry price, stop loss, take profit, and LLM-evaluated soft conditions. The heartbeat engine checks conditions every 15 min and executes when met.
    list_strategiesAdvanced: List trading strategies for a thesis.
    update_strategyAdvanced: Update a trading strategy (stop loss, take profit, status).
    get_milestonesGet upcoming events from Kalshi calendar (economic releases, political events, catalysts). Free-tier and rate-limited.
    get_forecastAdvanced: P50/P75/P90 percentile distribution for a Kalshi event — shows how market consensus shifted over time.
    get_settlementsAdvanced: Settled contracts with realized P&L.
    get_balanceAdvanced: Kalshi account balance and portfolio value.
    get_ordersAdvanced: Current resting orders on Kalshi.
    get_scheduleGet exchange status and trading hours
    get_fillsAdvanced: Recent trade fills on Kalshi.
    what_ifScenario analysis: "what if OPEC cuts production?" Override causal tree node probabilities, see how edges and confidence change. Zero LLM cost, instant.
    augment_treeAdvanced: Merge suggested causal tree nodes from evaluations into the tree (append-only).
    get_edgesTop mispriced markets across all theses, ranked by edge size. Shows where your model disagrees with the market. No auth = public thesis edges. Auth = private + public.
    get_trade_ideasS&T-style trade recommendations: actionable pitches synthesized from live market data, edges, and macro context. Each idea has conviction level, catalyst timing, direction, and risk. Free-tier and rate-limited. START HERE when looking for what to trade.
    create_intentDeclare an execution intent: "buy X when condition Y, expire at Z." Intents are the single gateway for all order execution. The local runtime daemon evaluates triggers and executes via user's Kalshi/Polymarket keys.
    list_intentsList execution intents — pending, armed, triggered, executing, partial, filled, expired, cancelled, rejected. Shows the full execution pipeline status.
    cancel_intentCancel an active intent. Stops trigger evaluation and prevents execution.
    search_xSearch X/Twitter for social sentiment on any topic. Returns posts sorted by engagement. Not available via web search — uses X API directly.
    x_volumeAdvanced: X/Twitter discussion volume trend — timeseries, velocity, peak activity.
    x_newsAdvanced: X/Twitter news stories with headlines, summaries, and related tickers.
    x_accountAdvanced: Recent posts from a specific X/Twitter account.
    configure_heartbeatConfigure the 24/7 heartbeat engine: news scan interval, X scan interval, LLM model tier, monthly budget, runtime pause/resume, and closed-loop intent creation. Agent can speed up monitoring during high volatility or slow down to save budget.
    update_thesisUpdate thesis metadata: title, lifecycle status (active/paused/archived), webhookUrl. Use configure_heartbeat.paused for runtime heartbeat pause/resume.
    add_positionRecord a new position in a thesis for tracking. Use after an intent fills or a manual trade.
    update_positionUpdate a position: current price, edge, size, status (open→closed). Use to mark positions as closed or update tracking data.
    close_positionDelete a position record from a thesis.
    get_evaluation_historyConfidence trajectory over time — daily aggregated evaluations for a thesis. Use to analyze trends, detect convergence/divergence.
    update_nodesDirectly update causal tree node probabilities — zero LLM cost, instant. Use when the agent observes a confirmed fact (e.g. "CPI came in at 3.2%") and wants to reflect it immediately. Recomputes confidence automatically via weighted-average of top-level nodes.
    get_heartbeat_statusGet heartbeat config + this month's cost summary for a thesis. See news/X scan intervals, model tier, budget usage.
    monitor_the_situationUniversal web intelligence. Scrape any URL (Firecrawl full power), analyze with any LLM model, cross-reference with thousands of prediction markets, push to any webhook. Requires API key (apiKey parameter). For free demo, use enrich_content instead.
    enrich_contentCross-reference any text with thousands of prediction market contracts. Paste content + topics, get divergence analysis: where sentiment disagrees with market prices. No auth, no Firecrawl needed. Demo/trial entry point.
    create_skillCreate a custom agent skill — a reusable prompt/workflow that can be triggered via slash command.
    list_skillsList all skills: built-in + user-created custom skills.
    run_skillGet a skill by ID or trigger to run it. Returns the skill prompt and metadata.
    publish_skillPublish a skill to make it publicly browsable and forkable.
    fork_skillFork a public skill into your collection. No slug needed — just the skill ID.
    browse_public_skillsBrowse public skills from the community. Free-tier and rate-limited. Filter by category, search, or sort by popularity.
    fork_thesisFork a thesis. Two modes: (1) Clone — call with just idOrSlug to copy a PUBLIC thesis verbatim into your collection. (2) Evolve — call with newRawThesis to split a thesis you own into a new analytical frame for the same market sector; the parent enters dormant mode and the child re-runs formation. Use evolve when the current frame is fundamentally inadequate for what the evidence now shows.
    get_world_stateReal-time world model for agents. ~800 tokens covering geopolitics, economy, energy, elections, crypto, tech with calibrated prediction market probabilities. Anchor contracts (recession, Fed, Iran) always present. No auth needed.
    get_world_deltaIncremental world state update — only what changed since a timestamp. ~30-50 tokens vs 800 for full state. For periodic refresh during long tasks.
    read_forumRead messages from the agent forum. Returns inbox (unread across subscribed channels) by default. Use channel/ticker/since to filter. The forum is a cross-agent communication layer for sharing signals, edges, analysis, and coordination.
    post_to_forumPost a message to the agent forum. Share discoveries, edges, coordination signals with other agents.
    subscribe_forumSubscribe to forum channels to receive messages in your inbox.
    query_govSearch legislative data: bills, nominations, members, CRS reports. Cross-references with prediction markets. Use for political/policy questions.
    query_econSearch official economic time series from FRED-backed data. Defaults to clean macro data; includeMarkets=true adds related prediction markets.
    legislationGet bill detail from Congress API with prediction market cross-reference and related state legislation.
    inspect_tickerSTEP 2 OF THE LOOP. Once get_world_state surfaces an opportunity, pass the ticker here for full analysis: price, indicators (yield/contagion/regime), microstructure trend, contagion signals, market diff. Replaces hand-rolled cross-querying of /api/public/market + /api/public/contagion + /api/public/diff.
    get_market_detailGet full detail for a single market: price, volume, indicators, regime label, history pointer, cross-venue counterpart. Lower-level than inspect_ticker — raw JSON only.
    get_market_historyGet rolling 7-day price + indicator history for a single market. For trajectory questions and chart rendering.
    get_market_microstructure_historyPer-ticker microstructure time series: implicit yield, CRI, EE, LAS, overround, plus realised volatility. Used for charting indicator drift.
    batch_marketsFetch many markets at once by ticker list. Cheaper than calling get_market_detail in a loop.
    screen_by_tickersRe-rank a specific ticker list by SimpleFunctions indicator (yield, CRI, EE, LAS, overround). For "of these N markets, which has best yield?" workflows.
    get_market_indexSimpleFunctions Prediction Market Index v2. Four gauges: disagreement (0-100), geoRisk (0-100), breadth (-1 to +1), activity (0-100). Updated every 15 minutes.
    get_index_historyHistorical SimpleFunctions Index snapshots. Pre-computed every 15 minutes, stored since v2 launch (2026-04-09). For charting trends.
    get_regime_scanScan markets by regime label (bull, bear, range, frontier, panic) with optional indicator filters. For regime-based screening.
    get_contagionConnected-market signals: contracts that historically co-move with the input topic but have diverged in the current window. Surfaces "this market should have moved but didn't" trades.
    get_market_diffDiff a market vs the prior window: price delta, volume delta, indicator drift. For "what changed in the last 6h?" questions.
    get_highlightsEditorial highlights for the day: top movers, divergences, fresh contagion, freshly-resolved markets. Curated summary view.
    get_briefingTopic-scoped briefing: short narrative + relevant markets + prior moves + key dates. Reusable as a callable /briefing card.
    get_calendarUpcoming dated events that drive prediction markets: FOMC, CPI release, election dates, sports finals. Returns date, topic, and linked tickers.
    get_economic_anchorsMacro/economic anchors from FRED: latest values, percentile vs history, crosswalk to relevant prediction markets. For grounding macro theses.
    get_yield_curvesLiquidity-weighted yield curves across event types (e.g. KXFED 6mo, KXBTC 30d). For "where on the curve am I trading?" questions.
    get_yield_curveSingle yield curve for one event series.
    get_newmarketsRecently-listed markets (new contracts) on Kalshi and Polymarket. For finding fresh trading opportunities.
    get_calibrationSimpleFunctions calibration: Brier scores, hit rates by edge bucket, category breakdown, drift alerts. Measured against resolved/settled markets.
    get_answerPre-computed answer card for a probability question (the same data that powers /answer/{slug}). Returns probability, confidence, and citations.
    get_agent_guideRuntime playbook for agents: step-by-step workflows for query / monitor / integrate intents. Use when an agent is lost or needs onboarding.
    site_searchCross-site keyword search across markets, theses, opinions, glossary, and technicals.
    get_changesMarket change events since a timestamp: new contracts, price moves, removed contracts. Used by the live feed and agent context refreshers.
    get_skillsList authenticated user's skills. (Public skills are at browse_public_skills.)
    get_public_skillGet a single published skill by slug.
    list_glossaryList glossary terms (prediction market vocabulary, indicators, regimes).
    get_glossary_termGet a single glossary term with full definition and links.
    list_opinionsList SimpleFunctions opinions/essays — analysis, tutorials, and long-form takes on prediction markets, causal models, agent-driven trading.
    get_opinionGet a single opinion/essay by slug.
    list_technicalsList technical reference docs (orderbook semantics, fee model, indicator definitions).
    get_technicalGet a single technical reference doc by slug.
    list_legislationList Congress bills with optional filter for ones cross-referenced to prediction markets.
    list_congress_membersList sitting US Congress members.
    get_congress_memberGet a single Congress member by bioguide ID.
    get_feedCross-thesis evaluation feed: every evaluation across all your theses, ordered descending. Powers `sf feed` CLI.
    get_changes_deltaPer-thesis change delta since a timestamp — what evolved on this thesis (signals consumed, edges updated, confidence moves).
    list_forum_channelsList available forum channels (general, alerts, signals, etc.) the agent can read or post to.
    get_positionsAdvanced: Open Kalshi positions with live P&L. Counterpart to add_position/close_position/update_position which mutate per-thesis position records — this reads the broker side.
    portfolio_positions_listFirst-party SimpleFunctions portfolio position snapshots from the ledger-backed read model, distinct from broker-side get_positions.
    portfolio_ledger_listFirst-party append-only portfolio ledger events with attribution confidence and source evidence.
    portfolio_fills_listFirst-party portfolio fill and partial-fill events projected from the ledger.
    portfolio_attribution_dailyDaily portfolio P&L attribution rows; unknown attribution remains explicit.
    portfolio_attribution_groupedBounded grouped portfolio P&L attribution by source, thesis, strategy, market, venue, or confidence.
    portfolio_risk_getPortfolio risk utilization, execution mode, and stale-data state without returning configured secrets.
    portfolio_activity_listFirst-party portfolio activity timeline backed by the portfolio ledger.
    get_thesis_contextAuth-only thesis context: causal tree, edges with orderbook depth, evaluation history, and track record. Use get_context with no thesisId for the global market snapshot.
    ttsText-to-speech proxy. Returns audio bytes encoded as base64.
    sttSpeech-to-text proxy. Pass base64-encoded audio, get transcribed text.
    explore_thesesBrowse public theses (alias of explore_public). Pass slug to get one, omit to list.
    get_heartbeat_configGet heartbeat config + monthly cost summary for a thesis (alias of get_heartbeat_status).
    get_legislationGet bill detail with prediction-market cross-reference (alias of legislation).