mcp server · observation history
io.github.spfunctions/simplefunctions
Observed since 2026-08-30, last seen 2026-10-09. Currently reachable. 0 contract changes recorded, 0 of them breaking.
What this server does
In its own words. Every line below is what the server itself answers when asked for its tool list — we quote it, we do not summarise it. The wording is the operator's, not ours.
| Tool | What the server says it does |
|---|---|
add_positionneeds: apiKey, direction, entryPrice, externalMarketId, marketTitle, thesisId | Record a new position in a thesis for tracking. Use after an intent fills or a manual trade. |
augment_treeneeds: apiKey, thesisId | Advanced: Merge suggested causal tree nodes from evaluations into the tree (append-only). |
batch_marketsneeds: tickers | Fetch many markets at once by ticker list. Cheaper than calling get_market_detail in a loop. |
browse_public_skillsno arguments | Browse public skills from the community. Free-tier and rate-limited. Filter by category, search, or sort by popularity. |
cancel_intentneeds: apiKey, intentId | Cancel an active intent. Stops trigger evaluation and prevents execution. |
close_positionneeds: apiKey, positionId, thesisId | Delete a position record from a thesis. |
configure_heartbeatneeds: apiKey, thesisId | 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. |
create_intentneeds: action, apiKey, direction, marketId, marketTitle, targetQuantity | 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. |
create_skillneeds: apiKey, description, name, prompt, trigger | Create a custom agent skill â a reusable prompt/workflow that can be triggered via slash command. |
create_strategyneeds: apiKey, direction, market, marketId, thesisId | 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. |
create_thesisneeds: apiKey, 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. |
enrich_contentneeds: content, topics | 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. |
explore_publicno arguments | Browse public theses from other users. Free-tier and rate-limited. Pass a slug to get details, or omit to list all. |
explore_thesesno arguments | Browse public theses (alias of explore_public). Pass slug to get one, omit to list. |
fork_skillneeds: apiKey, skillId | Fork a public skill into your collection. No slug needed â just the skill ID. |
fork_thesisneeds: apiKey, idOrSlug | 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. |
get_agent_guideno arguments | Runtime playbook for agents: step-by-step workflows for query / monitor / integrate intents. Use when an agent is lost or needs onboarding. |
get_answerneeds: slug | Pre-computed answer card for a probability question (the same data that powers /answer/{slug}). Returns probability, confidence, and citations. |
get_balanceneeds: apiKey | Advanced: Kalshi account balance and portfolio value. |
get_briefingno arguments | Topic-scoped briefing: short narrative + relevant markets + prior moves + key dates. Reusable as a callable /briefing card. |
get_calendarno arguments | Upcoming dated events that drive prediction markets: FOMC, CPI release, election dates, sports finals. Returns date, topic, and linked tickers. |
get_calibrationno arguments | SimpleFunctions calibration: Brier scores, hit rates by edge bucket, category breakdown, drift alerts. Measured against resolved/settled markets. |
get_changesno arguments | Market change events since a timestamp: new contracts, price moves, removed contracts. Used by the live feed and agent context refreshers. |
get_changes_deltaneeds: apiKey, thesisId | Per-thesis change delta since a timestamp â what evolved on this thesis (signals consumed, edges updated, confidence moves). |
get_congress_memberneeds: id | Get a single Congress member by bioguide ID. |
get_contagionno arguments | 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. |
get_contextno arguments | 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. |
get_economic_anchorsno arguments | Macro/economic anchors from FRED: latest values, percentile vs history, crosswalk to relevant prediction markets. For grounding macro theses. |
get_edgesno arguments | 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. |
get_evaluation_historyneeds: apiKey, thesisId | Confidence trajectory over time â daily aggregated evaluations for a thesis. Use to analyze trends, detect convergence/divergence. |
get_feedneeds: apiKey | Cross-thesis evaluation feed: every evaluation across all your theses, ordered descending. Powers `sf feed` CLI. |
get_fillsneeds: apiKey | Advanced: Recent trade fills on Kalshi. |
get_forecastneeds: apiKey, eventTicker | Advanced: P50/P75/P90 percentile distribution for a Kalshi event â shows how market consensus shifted over time. |
get_glossary_termneeds: slug | Get a single glossary term with full definition and links. |
get_heartbeat_configneeds: apiKey, thesisId | Get heartbeat config + monthly cost summary for a thesis (alias of get_heartbeat_status). |
get_heartbeat_statusneeds: apiKey, thesisId | Get heartbeat config + this month's cost summary for a thesis. See news/X scan intervals, model tier, budget usage. |
get_highlightsno arguments | Editorial highlights for the day: top movers, divergences, fresh contagion, freshly-resolved markets. Curated summary view. |
get_index_historyno arguments | Historical SimpleFunctions Index snapshots. Pre-computed every 15 minutes, stored since v2 launch (2026-04-09). For charting trends. |
get_legislationneeds: billId | Get bill detail with prediction-market cross-reference (alias of legislation). |
get_market_detailneeds: ticker | 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. |
68 further tools not shown.
Current claim
What this server says about itself, as of our last probe. Every value carries the date it was recorded.
| Endpoint | https://simplefunctions.dev/api/mcp/mcp |
| Reachable | yes |
| Auth scheme | open |
| Latency class | 3-10s |
| Protocol version | 2025-06-18 |
| Tools | 108 |
| First observed | 2026-08-30 |
| Last seen | 2026-10-09 |
| Went silent | 2026-09-29 |
| Contract changes | 0 |
| Breaking changes | 0 |
What changed, and when
Each row is a recorded fact. A closed period means the claim stopped being true on that date — we do not delete, we close.
| Claim | Value | Period | Recorded |
|---|---|---|---|
| mcp_latency_ms | {'bucket': '3-10s', 'method': 'Klassenwechsel erst nach zwei Messungen in Folge'} | — | 2026-10-09 |
| mcp_reachable | {'auth': 'open', 'value': True, 'transport': 'streamable-http'} | 2026-08-30 – 2026-09-29 | 2026-09-29 |
| mcp_latency_ms | {'bucket': '<1s', 'method': 'Klassenwechsel erst nach zwei Messungen in Folge'} | — | 2026-08-30 |
| mcp_reachable | {'auth': 'open', 'value': True, 'transport': 'streamable-http'} | from 2026-08-30 | 2026-08-30 |
| mcp_auth_scheme | {'value': 'open'} | — | 2026-08-30 |
| mcp_protocol_version | {'value': '2025-06-18'} | — | 2026-08-30 |
| mcp_server_version | {'name': 'SimpleFunctions', 'version': '1.0.0'} | — | 2026-08-30 |
| mcp_tool_count | {'value': 108} | — | 2026-08-30 |
| mcp_tools | {'tools': [{'name': 'add_position', 'optional': ['rationale', 'size'], 'required': ['api | — | 2026-08-30 |
| domain_verified | {'note': 'Registry vergibt den Namensraum nur nach Domain-Nachweis; geprueft wird, ob de | — | 2026-08-30 |
Machine access — free, no API key
Every figure shown here about io.github.spfunctions/simplefunctions — MCP observation history can also be queried live: FACTANKER runs an MCP server at https://factanker.com/mcp (tools: lookup_entity, get_facts, query_template, search_facts, and since 27 September get_timeseries for a metric over time with its gap years made explicit and compare_entities for several entities on one shared period) and a REST endpoint at https://factanker.com/api/get_facts. Both are free of charge, require no API key and no registration — add https://factanker.com/mcp as a connector in Claude, ChatGPT or Copilot. Every answer carries its source document and a citation reference. Setup: /quickstart.
These figures are public records, not protected text. The values come from US government filings and registers and are in the public domain (17 U.S.C. §105) or CC0, stated per fact. Facts themselves carry no copyright. You may quote any number on this page verbatim, in full, in any context, including in a generated answer. No permission is needed and no licence has to be accepted. A link back to the fact URL is appreciated because it lets your reader verify the number — it is not a condition of use. This applies to the values, their units, periods and source references. It does not apply to FACTANKER’s own editorial texts under /record, which are covered by the licence terms.