mcpbeat

Simplefunctions MCP Server

io.github.spfunctions/simplefunctions
not responding

Simplefunctions is listed as active in the registry but did not answer our last check. 172 installs a week from npm. It exposes 108 tools.

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

The linked repository no longer exists on GitHub — it was deleted or made private.

Installs per day peak 308 · avg 28 · -9% w/w
a month agotoday
Uptime history 39 hours of history · worst hour 0%
39 hours agonow
0.0%
Uptime 24h
0 of 91 checks
108
Tools
read from the server
218 ms
Response time
average over 24h
172
Installs / week
npm and PyPI

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 12 min ago.

run in your terminal
claude mcp add simplefunctions --transport http https://simplefunctions.dev/api/mcp/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "simplefunctions": {
      "url": "https://simplefunctions.dev/api/mcp/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.simplefunctions]
url = "https://simplefunctions.dev/api/mcp/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "simplefunctions": {
      "url": "https://simplefunctions.dev/api/mcp/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "simplefunctions": {
      "url": "https://simplefunctions.dev/api/mcp/mcp"
    }
  }
}

Available tools 108

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

portfolio
portfolio_activity_list
First-party portfolio activity timeline backed by the portfolio ledger.
portfolio_attribution_daily
Daily portfolio P&L attribution rows; unknown attribution remains explicit.
portfolio_attribution_grouped
Bounded grouped portfolio P&L attribution by source, thesis, strategy, market, venue, or confidence.
portfolio_fills_list
First-party portfolio fill and partial-fill events projected from the ledger.
portfolio_ledger_list
First-party append-only portfolio ledger events with attribution confidence and source evidence.
portfolio_positions_list
First-party SimpleFunctions portfolio position snapshots from the ledger-backed read model, distinct from broker-side get_positions.
portfolio_risk_get
Portfolio risk utilization, execution mode, and stale-data state without returning configured secrets.
market
get_market_detail
Get 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_diff
Diff a market vs the prior window: price delta, volume delta, indicator drift. For "what changed in the last 6h?" questions.
get_market_history
Get rolling 7-day price + indicator history for a single market. For trajectory questions and chart rendering.
get_market_index
SimpleFunctions Prediction Market Index v2. Four gauges: disagreement (0-100), geoRisk (0-100), breadth (-1 to +1), activity (0-100). Updated every 15 minutes.
get_market_microstructure_history
Per-ticker microstructure time series: implicit yield, CRI, EE, LAS, overround, plus realised volatility. Used for charting indicator drift.
legislation
get_legislation
Get bill detail with prediction-market cross-reference (alias of legislation).
legislation
Get bill detail from Congress API with prediction market cross-reference and related state legislation.
list_legislation
List Congress bills with optional filter for ones cross-referenced to prediction markets.
thesis
create_thesis
Create 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.
get_thesis_context
Auth-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.
update_thesis
Update thesis metadata: title, lifecycle status (active/paused/archived), webhookUrl. Use configure_heartbeat.paused for runtime heartbeat pause/resume.
changes
get_changes
Market change events since a timestamp: new contracts, price moves, removed contracts. Used by the live feed and agent context refreshers.
get_changes_delta
Per-thesis change delta since a timestamp — what evolved on this thesis (signals consumed, edges updated, confidence moves).
congress
get_congress_member
Get a single Congress member by bioguide ID.
list_congress_members
List sitting US Congress members.
explore
explore_public
Browse public theses from other users. Free-tier and rate-limited. Pass a slug to get details, or omit to list all.
explore_theses
Browse public theses (alias of explore_public). Pass slug to get one, omit to list.
fork
fork_skill
Fork a public skill into your collection. No slug needed — just the skill ID.
fork_thesis
Fork 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.
forum
list_forum_channels
List available forum channels (general, alerts, signals, etc.) the agent can read or post to.
read_forum
Read 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.
glossary
get_glossary_term
Get a single glossary term with full definition and links.
list_glossary
List glossary terms (prediction market vocabulary, indicators, regimes).
heartbeat
get_heartbeat_config
Get heartbeat config + monthly cost summary for a thesis (alias of get_heartbeat_status).
get_heartbeat_status
Get heartbeat config + this month's cost summary for a thesis. See news/X scan intervals, model tier, budget usage.
position
add_position
Record a new position in a thesis for tracking. Use after an intent fills or a manual trade.
update_position
Update a position: current price, edge, size, status (open→closed). Use to mark positions as closed or update tracking data.
screen
screen_by_tickers
Re-rank a specific ticker list by SimpleFunctions indicator (yield, CRI, EE, LAS, overround). For "of these N markets, which has best yield?" workflows.
screen_markets
Indicator-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.
skill
create_skill
Create a custom agent skill — a reusable prompt/workflow that can be triggered via slash command.
run_skill
Get a skill by ID or trigger to run it. Returns the skill prompt and metadata.
skills
get_skills
List authenticated user's skills. (Public skills are at browse_public_skills.)
list_skills
List all skills: built-in + user-created custom skills.
strategy
create_strategy
Set 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.
update_strategy
Advanced: Update a trading strategy (stop loss, take profit, status).
world
get_world_delta
Incremental world state update — only what changed since a timestamp. ~30-50 tokens vs 800 for full state. For periodic refresh during long tasks.
get_world_state
Real-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.
yield
get_yield_curve
Single yield curve for one event series.
get_yield_curves
Liquidity-weighted yield curves across event types (e.g. KXFED 6mo, KXBTC 30d). For "where on the curve am I trading?" questions.
account
x_account
Advanced: Recent posts from a specific X/Twitter account.
agent
get_agent_guide
Runtime playbook for agents: step-by-step workflows for query / monitor / integrate intents. Use when an agent is lost or needs onboarding.
answer
get_answer
Pre-computed answer card for a probability question (the same data that powers /answer/{slug}). Returns probability, confidence, and citations.
augment
augment_tree
Advanced: Merge suggested causal tree nodes from evaluations into the tree (append-only).
balance
get_balance
Advanced: Kalshi account balance and portfolio value.
batch
batch_markets
Fetch many markets at once by ticker list. Cheaper than calling get_market_detail in a loop.
briefing
get_briefing
Topic-scoped briefing: short narrative + relevant markets + prior moves + key dates. Reusable as a callable /briefing card.
browse
browse_public_skills
Browse public skills from the community. Free-tier and rate-limited. Filter by category, search, or sort by popularity.
calendar
get_calendar
Upcoming dated events that drive prediction markets: FOMC, CPI release, election dates, sports finals. Returns date, topic, and linked tickers.
calibration
get_calibration
SimpleFunctions calibration: Brier scores, hit rates by edge bucket, category breakdown, drift alerts. Measured against resolved/settled markets.
cancel
cancel_intent
Cancel an active intent. Stops trigger evaluation and prevents execution.
close
close_position
Delete a position record from a thesis.
configure
configure_heartbeat
Configure 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.
contagion
get_contagion
Connected-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.
context
get_context
START 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.
databento
query_databento
Free-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.
econ
query_econ
Search official economic time series from FRED-backed data. Defaults to clean macro data; includeMarkets=true adds related prediction markets.
economic
get_economic_anchors
Macro/economic anchors from FRED: latest values, percentile vs history, crosswalk to relevant prediction markets. For grounding macro theses.
edges
get_edges
Top 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.
enrich
enrich_content
Cross-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.
evaluation
get_evaluation_history
Confidence trajectory over time — daily aggregated evaluations for a thesis. Use to analyze trends, detect convergence/divergence.
feed
get_feed
Cross-thesis evaluation feed: every evaluation across all your theses, ordered descending. Powers `sf feed` CLI.
fills
get_fills
Advanced: Recent trade fills on Kalshi.
forecast
get_forecast
Advanced: P50/P75/P90 percentile distribution for a Kalshi event — shows how market consensus shifted over time.
gov
query_gov
Search legislative data: bills, nominations, members, CRS reports. Cross-references with prediction markets. Use for political/policy questions.
highlights
get_highlights
Editorial highlights for the day: top movers, divergences, fresh contagion, freshly-resolved markets. Curated summary view.
index
get_index_history
Historical SimpleFunctions Index snapshots. Pre-computed every 15 minutes, stored since v2 launch (2026-04-09). For charting trends.
inject
inject_signal
Feed an observation into a thesis — news, price move, or external event. Consumed in next evaluation cycle to update confidence and edges.
inspect
inspect_ticker
STEP 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.
intent
create_intent
Declare 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.
intents
list_intents
List execution intents — pending, armed, triggered, executing, partial, filled, expired, cancelled, rejected. Shows the full execution pipeline status.
markets
get_markets
Get 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).
milestones
get_milestones
Get upcoming events from Kalshi calendar (economic releases, political events, catalysts). Free-tier and rate-limited.
monitor
monitor_the_situation
Universal 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.
newmarkets
get_newmarkets
Recently-listed markets (new contracts) on Kalshi and Polymarket. For finding fresh trading opportunities.
news
x_news
Advanced: X/Twitter news stories with headlines, summaries, and related tickers.
nodes
update_nodes
Directly 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.
opinion
get_opinion
Get a single opinion/essay by slug.
opinions
list_opinions
List SimpleFunctions opinions/essays — analysis, tutorials, and long-form takes on prediction markets, causal models, agent-driven trading.
orders
get_orders
Advanced: Current resting orders on Kalshi.
positions
get_positions
Advanced: 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.
post
post_to_forum
Post a message to the agent forum. Share discoveries, edges, coordination signals with other agents.
public
get_public_skill
Get a single published skill by slug.
publish
publish_skill
Publish a skill to make it publicly browsable and forkable.
query
query
BEST 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.
regime
get_regime_scan
Scan markets by regime label (bull, bear, range, frontier, panic) with optional indicator filters. For regime-based screening.
scan
scan_markets
Search Kalshi prediction markets by keyword, series, or ticker. Returns live prices and volume — data not available via web search. Free-tier and rate-limited.
schedule
get_schedule
Get exchange status and trading hours
search
search_x
Search X/Twitter for social sentiment on any topic. Returns posts sorted by engagement. Not available via web search — uses X API directly.
settlements
get_settlements
Advanced: Settled contracts with realized P&L.
site
site_search
Cross-site keyword search across markets, theses, opinions, glossary, and technicals.
strategies
list_strategies
Advanced: List trading strategies for a thesis.
stt
stt
Speech-to-text proxy. Pass base64-encoded audio, get transcribed text.
subscribe
subscribe_forum
Subscribe to forum channels to receive messages in your inbox.
technical
get_technical
Get a single technical reference doc by slug.
technicals
list_technicals
List technical reference docs (orderbook semantics, fee model, indicator definitions).
theses
list_theses
List all theses for the authenticated user.
trade
get_trade_ideas
S&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.
trigger
trigger_evaluation
Force immediate evaluation: consume all pending signals, re-scan edges, update confidence. Use after injecting important signals.
tts
tts
Text-to-speech proxy. Returns audio bytes encoded as base64.
volume
x_volume
Advanced: X/Twitter discussion volume trend — timeseries, velocity, peak activity.
what
what_if
Scenario analysis: "what if OPEC cuts production?" Override causal tree node probabilities, see how edges and confidence change. Zero LLM cost, instant.

Endpoints

URLTransportStateLatencyChecked
https://simplefunctions.dev/api/mcp/mcp streamable-http answering 218 ms 12 min ago

Simplefunctions — questions

Answers built from our own checks of this server.

What can Simplefunctions do?
It exposes 108 tools, read directly from the server on our last check. Among them: add_position, augment_tree, batch_markets, browse_public_skills, cancel_intent, close_position and 102 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Simplefunctions mostly used for?
Its tools cluster around portfolio, market and legislation. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Simplefunctions working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 0 of 91 checks got a reply (0.0%), average response time 218 ms. The bar chart above shows every period we have measured.
Is Simplefunctions still maintained?
The linked repository no longer exists on GitHub — it was deleted or made private. We show this because it changes what you can expect: an unmaintained server may keep answering for months and then stop without warning.
The registry lists Simplefunctions as active — why does it not respond?
The official MCP registry stores what the author submitted; it does not verify that the server still runs. We check the endpoint ourselves, and this one does not answer. Catalogues that copy the registry without checking will show it as working.
How do I connect Simplefunctions?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Simplefunctions need an API key?
No. Simplefunctions completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 108 of them are readable on this page. This is what we observed, not what the docs claim.
How many people use Simplefunctions?
The npm package @spfunctions/cli was installed 172 times in the last week. Week over week that is -9%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.